Update change log for beta-1.
This commit is contained in:
parent
e94e062b58
commit
cc60753820
106
CHANGES.txt
106
CHANGES.txt
@ -1,3 +1,109 @@
|
||||
2015-08-26 version 3.0.0-beta-1 (C++/Java/Python/Ruby/Nano/Objective-C/C#)
|
||||
About Beta
|
||||
* This is the first beta release of protobuf v3.0.0. Not all languages
|
||||
have reached beta stage. Languages not marked as beta are still in
|
||||
alpha (i.e., be prepared for API breaking changes).
|
||||
|
||||
General
|
||||
* Proto3 JSON is supported in several languages (fully supported in C++
|
||||
and Java, partially supported in Ruby/C#). The JSON spec is defined in
|
||||
the proto3 language guide:
|
||||
|
||||
https://developers.google.com/protocol-buffers/docs/proto3#json
|
||||
|
||||
We will publish a more detailed spec to define the exact behavior of
|
||||
proto3-conformant JSON serializers and parsers. Until then, do not rely
|
||||
on specific behaviors of the implementation if it’s not documented in
|
||||
the above spec. More specifically, the behavior is not yet finalized for
|
||||
the following:
|
||||
- Parsing invalid JSON input (e.g., input with trailing commas).
|
||||
- Non-camelCase names in JSON input.
|
||||
- The same field appears multiple times in JSON input.
|
||||
- JSON arrays contain “null” values.
|
||||
- The message has unknown fields.
|
||||
|
||||
* Proto3 now enforces strict UTF-8 checking. Parsing will fail if a string
|
||||
field contains non UTF-8 data.
|
||||
|
||||
C++ (Beta)
|
||||
* Introduced new utility functions/classes in the google/protobuf/util
|
||||
directory:
|
||||
- MessageDifferencer: compare two proto messages and report their
|
||||
differences.
|
||||
- JsonUtil: support converting protobuf binary format to/from JSON.
|
||||
- TimeUtil: utility functions to work with well-known types Timestamp
|
||||
and Duration.
|
||||
- FieldMaskUtil: utility functions to work with FieldMask.
|
||||
|
||||
* Performance optimization of arena construction and destruction.
|
||||
* Bug fixes for arena and maps support.
|
||||
* Changed to use cmake for Windows Visual Studio builds.
|
||||
* Added Bazel support.
|
||||
|
||||
Java (Beta)
|
||||
* Introduced a new util package that will be distributed as a separate
|
||||
artifact in maven. It contains:
|
||||
- JsonFormat: convert proto messages to/from JSON.
|
||||
- TimeUtil: utility functions to work with Timestamp and Duration.
|
||||
- FieldMaskUtil: utility functions to work with FieldMask.
|
||||
|
||||
* The static PARSER in each generated message is deprecated, and it will
|
||||
be removed in a future release. A static parser() getter is generated
|
||||
for each message type instead.
|
||||
* Performance optimizations for String fields serialization.
|
||||
* Performance optimizations for Lite runtime on Android:
|
||||
- Reduced allocations
|
||||
- Reduced method overhead after ProGuarding
|
||||
- Reduced code size after ProGuarding
|
||||
|
||||
Python (Alpha)
|
||||
* Removed legacy Python 2.5 support.
|
||||
* Moved to a single Python 2.x/3.x-compatible codebase, instead of using 2to3.
|
||||
* Fixed build/tests on Python 2.6, 2.7, 3.3, and 3.4.
|
||||
- Pure-Python works on all four.
|
||||
- Python/C++ implementation works on all but 3.4, due to changes in the
|
||||
Python/C++ API in 3.4.
|
||||
* Some preliminary work has been done to allow for multiple DescriptorPools
|
||||
with Python/C++.
|
||||
|
||||
Ruby (Alpha)
|
||||
* Many bugfixes:
|
||||
- fixed parsing/serialization of bytes, sint, sfixed types
|
||||
- other parser bugfixes
|
||||
- fixed memory leak affecting Ruby 2.2
|
||||
|
||||
JavaNano (Alpha)
|
||||
* JavaNano generated code now will be put in a nano package by default to
|
||||
avoid conflicts with Java generated code.
|
||||
|
||||
Objective-C (Alpha)
|
||||
* Added non-null markup to ObjC library. Requires SDK 8.4+ to build.
|
||||
* Many bugfixes:
|
||||
- Removed the class/enum filter.
|
||||
- Renamed some internal types to avoid conflicts with the well-known types
|
||||
protos.
|
||||
- Added missing support for parsing repeated primitive fields in packed or
|
||||
unpacked forms.
|
||||
- Added *Count for repeated and map<> fields to avoid auto-create when
|
||||
checking for them being set.
|
||||
|
||||
C# (Alpha)
|
||||
* Namespace changed to Google.Protobuf (and NuGet package will be named
|
||||
correspondingly).
|
||||
* Target platforms now .NET 4.5 and selected portable subsets only.
|
||||
* Removed lite runtime.
|
||||
* Reimplementation to use mutable message types.
|
||||
* Null references used to represent "no value" for message type fields.
|
||||
* Proto3 semantics supported; proto2 files are prohibited for C# codegen.
|
||||
Most proto3 features supported:
|
||||
- JSON formatting (a.k.a. serialization to JSON), including well-known
|
||||
types (except for Any).
|
||||
- Wrapper types mapped to nullable value types (or string/ByteString
|
||||
allowing nullability). JSON parsing is not supported yet.
|
||||
- maps
|
||||
- oneof
|
||||
- enum unknown value preservation
|
||||
|
||||
2015-05-25 version 3.0.0-alpha-3 (Objective-C/C#):
|
||||
General
|
||||
* Introduced two new language implementations (Objective-C, C#) to proto3.
|
||||
|
Loading…
Reference in New Issue
Block a user