|
| 1 | +2016-09-23 version 3.1.0 (C++/Java/Python/PHP/Ruby/Objective-C/C#/JavaScript/Lite) |
| 2 | + General |
| 3 | + * Proto3 support in PHP (alpha). |
| 4 | + * Various bug fixes. |
| 5 | + |
| 6 | + C++ |
| 7 | + * Added MessageLite::ByteSizeLong() that’s equivalent to |
| 8 | + MessageLite::ByteSize() but returns the value in size_t. Useful to check |
| 9 | + whether a message is over the 2G size limit that protobuf can support. |
| 10 | + * Moved default_instances to global variables. This allows default_instance |
| 11 | + addresses to be known at compile time. |
| 12 | + * Adding missing generic gcc 64-bit atomicops. |
| 13 | + * Restore New*Callback into google::protobuf namespace since these are used |
| 14 | + by the service stubs code |
| 15 | + * JSON support. |
| 16 | + * Fixed some conformance issues. |
| 17 | + * Fixed a JSON serialization bug for bytes fields. |
| 18 | + |
| 19 | + Java |
| 20 | + * Fixed a bug in TextFormat that doesn’t accept empty repeated fields (i.e., |
| 21 | + “field: [ ]”). |
| 22 | + * JSON support |
| 23 | + * Fixed JsonFormat to do correct snake_case-to-camelCase conversion for |
| 24 | + non-style-conforming field names. |
| 25 | + * Fixed JsonFormat to parse empty Any message correctly. |
| 26 | + * Added an option to JsonFormat.Parser to ignore unknown fields. |
| 27 | + * Experimental API |
| 28 | + * Added UnsafeByteOperations.unsafeWrap(byte[]) to wrap a byte array into |
| 29 | + ByteString without copy. |
| 30 | + |
| 31 | + Python |
| 32 | + * JSON support |
| 33 | + * Fixed some conformance issues. |
| 34 | + |
| 35 | + PHP (Alpha) |
| 36 | + * We have added the proto3 support for PHP via both a pure PHP package and a |
| 37 | + native c extension. The pure PHP package is intended to provide usability |
| 38 | + to wider range of PHP platforms, while the c extension is intended to |
| 39 | + provide higher performance. Both implementations provide the same runtime |
| 40 | + APIs and share the same generated code. Users don’t need to re-generate |
| 41 | + code for the same proto definition when they want to switch the |
| 42 | + implementation later. The pure PHP package is included in the php/src |
| 43 | + directory, and the c extension is included in the php/ext directory. |
| 44 | + |
| 45 | + Both implementations provide idiomatic PHP APIs: |
| 46 | + * All messages and enums are defined as PHP classes. |
| 47 | + * All message fields can only be accessed via getter/setter. |
| 48 | + * Both repeated field elements and map elements are stored in containers |
| 49 | + that act like a normal PHP array. |
| 50 | + |
| 51 | + Unlike several existing third-party PHP implementations for protobuf, our |
| 52 | + implementations are built on a "strongly-typed" philosophy: message fields |
| 53 | + and array/map containers will throw exceptions eagerly when values of the |
| 54 | + incorrect type (not including those that can be type converted, e.g., |
| 55 | + double <-> integer <-> numeric string) are inserted. |
| 56 | + |
| 57 | + Currently, pure PHP runtime supports php5.5, 5.6 and 7 on linux. C |
| 58 | + extension runtime supports php5.5 and 5.6 on linux. |
| 59 | + |
| 60 | + See php/README.md for more details about installment. See |
| 61 | + https://developers.google.com/protocol-buffers/docs/phptutorial for more |
| 62 | + details about APIs. |
| 63 | + |
| 64 | + Objective-C |
| 65 | + * Helpers are now provided for working the the Any well known type (see |
| 66 | + GPBWellKnownTypes.h for the api additions). |
| 67 | + * Some improvements in startup code (especially when extensions aren’t used). |
| 68 | + |
| 69 | + Javascript |
| 70 | + * Fixed missing import of jspb.Map |
| 71 | + * Fixed valueWriterFn variable name |
| 72 | + |
| 73 | + Ruby |
| 74 | + * Fixed hash computation for JRuby's RubyMessage |
| 75 | + * Make sure map parsing frames are GC-rooted. |
| 76 | + * Added API support for well-known types. |
| 77 | + |
| 78 | + C# |
| 79 | + * Removed check on dependency in the C# reflection API. |
| 80 | + |
1 | 81 | 2016-09-06 version 3.0.2 (C++/Java/Python/Ruby/Objective-C/C#/JavaScript/Lite) |
2 | 82 | General |
3 | 83 | * Various bug fixes. |
|
0 commit comments