2016-09-23 version 3.1.0 (C++/Java/Python/PHP/Ruby/Objective-C/C#/JavaScript/Lite) General * Proto3 support in PHP (alpha). * Various bug fixes. C++ * Added MessageLite::ByteSizeLong() that’s equivalent to MessageLite::ByteSize() but returns the value in size_t. Useful to check whether a message is over the 2G size limit that protobuf can support. * Moved default_instances to global variables. This allows default_instance addresses to be known at compile time. * Adding missing generic gcc 64-bit atomicops. * Restore New*Callback into google::protobuf namespace since these are used by the service stubs code * JSON support. * Fixed some conformance issues. * Fixed a JSON serialization bug for bytes fields. Java * Fixed a bug in TextFormat that doesn’t accept empty repeated fields (i.e., “field: [ ]”). * JSON support * Fixed JsonFormat to do correct snake_case-to-camelCase conversion for non-style-conforming field names. * Fixed JsonFormat to parse empty Any message correctly. * Added an option to JsonFormat.Parser to ignore unknown fields. * Experimental API * Added UnsafeByteOperations.unsafeWrap(byte[]) to wrap a byte array into ByteString without copy. Python * JSON support * Fixed some conformance issues. PHP (Alpha) * We have added the proto3 support for PHP via both a pure PHP package and a native c extension. The pure PHP package is intended to provide usability to wider range of PHP platforms, while the c extension is intended to provide higher performance. Both implementations provide the same runtime APIs and share the same generated code. Users don’t need to re-generate code for the same proto definition when they want to switch the implementation later. The pure PHP package is included in the php/src directory, and the c extension is included in the php/ext directory. Both implementations provide idiomatic PHP APIs: * All messages and enums are defined as PHP classes. * All message fields can only be accessed via getter/setter. * Both repeated field elements and map elements are stored in containers that act like a normal PHP array. Unlike several existing third-party PHP implementations for protobuf, our implementations are built on a "strongly-typed" philosophy: message fields and array/map containers will throw exceptions eagerly when values of the incorrect type (not including those that can be type converted, e.g., double <-> integer <-> numeric string) are inserted. Currently, pure PHP runtime supports php5.5, 5.6 and 7 on linux. C extension runtime supports php5.5 and 5.6 on linux. See php/README.md for more details about installment. See https://developers.google.com/protocol-buffers/docs/phptutorial for more details about APIs. Objective-C * Helpers are now provided for working the the Any well known type (see GPBWellKnownTypes.h for the api additions). * Some improvements in startup code (especially when extensions aren’t used). Javascript * Fixed missing import of jspb.Map * Fixed valueWriterFn variable name Ruby * Fixed hash computation for JRuby's RubyMessage * Make sure map parsing frames are GC-rooted. * Added API support for well-known types. C# * Removed check on dependency in the C# reflection API. 2016-09-06 version 3.0.2 (C++/Java/Python/Ruby/Objective-C/C#/JavaScript/Lite) General * Various bug fixes. Objective C * Fix for oneofs in proto3 syntax files where fields were set to the zero value. * Fix for embedded null character in strings. * CocoaDocs support Ruby * Fixed memory corruption bug in parsing that could occur under GC pressure. Javascript * jspb.Map is now properly exported to CommonJS modules. C# * Removed legacy_enum_values flag. |
||
---|---|---|
.. | ||
patches | ||
buildlink3.mk | ||
DESCR | ||
distinfo | ||
Makefile | ||
Makefile.common | ||
PLIST |