|
|
|
@ -1,3 +1,83 @@ |
|
|
|
|
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. |
|
|
|
|