1. 13 Jan, 2017 1 commit
    • Thomas Van Lenten's avatar
      Timestamp helper fix, Duration helper cleanup. · d0bc096b
      Thomas Van Lenten authored
      - The Timestamp proto does not allow for negative nanos fields, so the seconds
        must be shifted and a positive nanos then applied.
      - Tweak the helpers on Duration to make it clear there is no "base" time
        involved.
      - Update the unittests for duration and timestamp to cover positive and
        negative NSTimeIntervals and what their impact is on the protos.
      d0bc096b
  2. 08 Sep, 2016 2 commits
    • Thomas Van Lenten's avatar
      161b9377
    • Thomas Van Lenten's avatar
      Add ObjC helpers for Any WKT. · 337ec306
      Thomas Van Lenten authored
      - Capture the ObjC prefix used when generating the the file.
      - Track the containing type on descriptors.
      - Mark descriptors where the message class name got a suffix added to it.
      - Expose a fullName property on Descriptors.
      - Add helpers for packing/unpacking Any messages.
      - Bump the ObjC runtime version number. Since we added methods and invoke them
        in the generated code, ensure the code is running against a matching version.
        Otherwise, someone could compile against headers, but run with a framework
        that is older and get unknown selector failures.  This should trip clearer
        messaging.
      
      Fixes https://github.com/google/protobuf/issues/1674
      337ec306
  3. 17 Aug, 2016 1 commit
  4. 08 Aug, 2016 1 commit
  5. 24 May, 2016 1 commit
    • Thomas Van Lenten's avatar
      Better support for using the proto library from a framework. · 7da023b8
      Thomas Van Lenten authored
      - Add generator constant for the default framework name.
      - Add generator api for making the CPP symbol from the name.
      - Add generator api to see if it is a bundled proto file.
      - Output a CPP conditional and two imports for the core library headers.
      - Add helper for generating the #import for file headers to deal with the
        framework imports.
      - Add a reference from the unittests to a WKT to use that to inspect how
        imports generate.
      - Update the podspec to define the CPP symbol and require pods 1.0 (or later).
      
      Fixes https://github.com/google/protobuf/issues/1457
      7da023b8
  6. 11 Aug, 2015 1 commit
  7. 21 Jul, 2015 1 commit
    • TeBoring's avatar
      Add packFrom, unpackTo and is in google.protobuf.Any. · 7366efd8
      TeBoring authored
      The previous two methods make it easy to transform between any and normal message.
      unPackeTo will throw error if the type url in any doesn't match the type of the message to be transformed to.
      is checks any's type url matches the give GPBMessage type.
      7366efd8
  8. 16 Jun, 2015 1 commit
  9. 06 May, 2015 1 commit
  10. 01 Oct, 2014 1 commit
  11. 02 Nov, 2010 1 commit
  12. 29 Jul, 2009 1 commit
  13. 25 Apr, 2009 1 commit
  14. 22 Oct, 2008 1 commit
  15. 24 Sep, 2008 1 commit
    • kenton@google.com's avatar
      Integrate changes from internal Google-internal branch. · 24bf56fb
      kenton@google.com authored
        General
        * License changed from Apache 2.0 to New BSD.
        * It is now possible to define custom "options", which are basically
          annotations which may be placed on definitions in a .proto file.
          For example, you might define a field option called "foo" like so:
            import "google/protobuf/descriptor.proto"
            extend google.protobuf.FieldOptions {
              optional string foo = 12345;
            }
          Then you annotate a field using the "foo" option:
            message MyMessage {
              optional int32 some_field = 1 [(foo) = "bar"]
            }
          The value of this option is then visible via the message's
          Descriptor:
            const FieldDescriptor* field =
              MyMessage::descriptor()->FindFieldByName("some_field");
            assert(field->options().GetExtension(foo) == "bar");
          This feature has been implemented and tested in C++ and Java.
          Other languages may or may not need to do extra work to support
          custom options, depending on how they construct descriptors.
      
        C++
        * Fixed some GCC warnings that only occur when using -pedantic.
        * Improved static initialization code, making ordering more
          predictable among other things.
        * TextFormat will no longer accept messages which contain multiple
          instances of a singular field.  Previously, the latter instance
          would overwrite the former.
        * Now works on systems that don't have hash_map.
      
        Python
        * Strings now use the "unicode" type rather than the "str" type.
          String fields may still be assigned ASCII "str" values; they will
          automatically be converted.
        * Adding a property to an object representing a repeated field now
          raises an exception.  For example:
            # No longer works (and never should have).
            message.some_repeated_field.foo = 1
      24bf56fb
  16. 14 Aug, 2008 1 commit
  17. 10 Jul, 2008 1 commit