./devel/protobuf, Google protocol buffers

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 2.6.1, Package name: protobuf-2.6.1, Maintainer: aran

Protocol Buffers are a way of encoding structured data in an efficient yet
extensible format. Google uses Protocol Buffers for almost all of its internal
RPC protocols and file formats.

Master sites:

SHA1: 375765455ad49e45e4e10364f91aaf2831d3e905
RMD160: f6f04600cd5d9a56161b070b26cdec49c680cbb7
Filesize: 2579.518 KB

Version history: (Expand)

CVS history: (Expand)

   2015-06-10 11:02:07 by Sebastian Wiedenroth | Files touched by this commit (1) | Package updated
Log message:
Also commit the actual update.
Thanks to abs@ for noticing.
   2015-06-10 03:31:52 by Sebastian Wiedenroth | Files touched by this commit (7) | Package updated
Log message:
Update protobuf to 2.6.1


2014-10-20 version 2.6.1:

  * Added atomicops support for Solaris.
  * Released memory allocated by InitializeDefaultRepeatedFields() and
    GetEmptyString(). Some memory sanitizers reported them as memory leaks.

  * Updated DynamicMessage.setField() to handle repeated enum values
  * Fixed a bug that caused NullPointerException to be thrown when
    converting manually constructed FileDescriptorProto to

  * Fixed WhichOneof() to work with de-serialized protobuf messages.
  * Fixed a missing file problem of Python C++ implementation.

2014-08-15 version 2.6.0:

  * Added oneofs(unions) feature. Fields in the same oneof will share
    memory and at most one field can be set at the same time. Use the
    oneof keyword to define a oneof like:
      message SampleMessage {
        oneof test_oneof {
          string name = 4;
          YourMessage sub_message = 9;
  * Files, services, enums, messages, methods and enum values can be marked
    as deprecated now.
  * Added Support for list values, including lists of mesaages, when
    parsing text-formatted protos in C++ and Java.
      For example:  foo: [1, 2, 3]

  * Enhanced customization on TestFormat printing.
  * Added SwapFields() in reflection API to swap a subset of fields.
    Added SetAllocatedMessage() in reflection API.
  * Repeated primitive extensions are now packable. The
    [packed=true] option only affects serializers. Therefore, it is
    possible to switch a repeated extension field to packed format
    without breaking backwards-compatibility.
  * Various speed optimizations.

  * writeTo() method in ByteString can now write a substring to an
    output stream. Added endWith() method for ByteString.
  * ByteString and ByteBuffer are now supported in CodedInputStream
    and CodedOutputStream.
  * java_generate_equals_and_hash can now be used with the LITE_RUNTIME.

  * A new C++-backed extension module (aka "cpp api v2") that replaces the
    old ("cpp api v1") one.  Much faster than the pure Python code.  \ 
This one
    resolves many bugs and is recommended for general use over the
    pure Python when possible.
  * Descriptors now have enum_types_by_name and extension_types_by_name dict
  * Support for Python 3.
   2015-02-19 15:12:33 by Joerg Sonnenberger | Files touched by this commit (3)
Log message:
Depend on libgcc to provide working atomic instructions. Use consistent
types for the 32bit operations, intptr_t can be either int or long.
Clang at least is picky about this.
   2014-10-18 00:00:40 by Joerg Sonnenberger | Files touched by this commit (4)
Log message:
Share distinfo and patches between protobuf and py-protobuf.
   2014-01-27 09:08:50 by OBATA Akio | Files touched by this commit (1)
Log message:
SET_LIBDIR=yes instead of manual setting --libdir for configure.
   2013-03-29 10:17:26 by Aleksej Saushev | Files touched by this commit (2)
Log message:
Make it depend on zlib explicitly.
This fixes linking problems on platforms with no builtin zlib.
Found by Jason Bacon on CentOS.
   2013-03-17 15:54:36 by Thomas Klausner | Files touched by this commit (2)
Log message:
Add upstream bug report URL.
   2013-03-17 15:50:14 by Thomas Klausner | Files touched by this commit (4) | Package updated
Log message:
Update to 2.5.0:

2013-02-27 version 2.5.0:

  * New notion "import public" that allows a proto file to forward the \ 
    it imports to its importers. For example,
      // foo.proto
      import public "bar.proto";
      import "baz.proto";

      // qux.proto
      import "foo.proto";
      // Stuff defined in bar.proto may be used in this file, but stuff from
      // baz.proto may NOT be used without importing it explicitly.
    This is useful for moving proto files. To move a proto file, just leave
    a single "import public" in the old proto file.
  * New enum option "allow_alias" that specifies whether different \ 
symbols can
    be assigned the same numeric value. Default value is "true". \ 
Setting it to
    false causes the compiler to reject enum definitions where multiple symbols
    have the same numeric value.

  * New generated method set_allocated_foo(Type* foo) for message and string
    fields. This method allows you to set the field to a pre-allocated object
    and the containing message takes the ownership of that object.
  * Added SetAllocatedExtension() and ReleaseExtension() to extensions API.
  * Custom options are now formatted correctly when descriptors are printed in
    text format.
  * Various speed optimizations.

  * Comments in proto files are now collected and put into generated code as
    comments for corresponding classes and data members.
  * Added Parser to parse directly into messages without a Builder. For
      Foo foo = Foo.getParser().ParseFrom(input);
    Using Parser is ~25% faster than using Builder to parse messages.
  * Added getters/setters to access the underlying ByteString of a string field
  * ByteString now supports more operations: substring(), prepend(), and
    append(). The implementation of ByteString uses a binary tree structure
    to support these operations efficiently.
  * New method findInitializationErrors() that lists all missing required
  * Various code size and speed optimizations.

  * Added support for dynamic message creation. DescriptorDatabase,
    DescriptorPool, and MessageFactory work like their C++ couterparts to
    simplify Descriptor construction from *DescriptorProtos, and MessageFactory
    provides a message instance from a Descriptor.
  * Added pickle support for protobuf messages.
  * Unknown fields are now preserved after parsing.
  * Fixed bug where custom options were not correctly populated. Custom
    options can be accessed now.
  * Added EnumTypeWrapper that provides better accessibility to enum types.
  * Added ParseMessage(descriptor, bytes) to generate a new Message instance
    from a descriptor and a byte string.