2017-12-20 version 3.5.1 (C++/Java/Python/PHP/Objective-C/C#/Ruby/JavaScript)
Planned Future Changes
* Make C++ implementation C++11 only: we plan to require C++11 to build
protobuf code starting from 3.6.0 release. Please join this github issue:
https://github.com/google/protobuf/issues/2780 to provide your feedback.
protoc
* Fixed a bug introduced in 3.5.0 and protoc in Windows now accepts non-ascii
characters in paths again.
C++
* Removed several usages of C++11 features in the code base.
* Fixed some compiler warnings.
PHP
* Fixed memory leak in C-extension implementation.
* Added discardUnknokwnFields API.
* Removed duplicatd typedef in C-extension headers.
* Avoided calling private php methods (timelib_update_ts).
* Fixed Any.php to use fully-qualified name for DescriptorPool.
Ruby
* Added Google_Protobuf_discard_unknown for discarding unknown fields in
messages.
C#
* Unknown fields are now preserved by default.
* Floating point values are now bitwise compared, affecting message equality
check and Contains() API in map and repeated fields.
2017-11-13 version 3.5.0 (C++/Java/Python/PHP/Objective-C/C#/Ruby/JavaScript)
Planned Future Changes
* Make C++ implementation C++11 only: we plan to require C++11 to build
protobuf code starting from 3.6.0 release. Please join this github issue:
https://github.com/google/protobuf/issues/2780 to provide your feedback.
General
* Unknown fields are now preserved in proto3 for most of the language
implementations for proto3 by default. See the per-language section for
details.
* reserve keyword are now supported in enums
C++
* Proto3 messages are now preserving unknown fields by default. If you rely on
unknowns fields being dropped. Please use DiscardUnknownFields() explicitly.
* Deprecated the unsafe_arena_release_* and unsafe_arena_add_allocated_*
methods for string fields.
* Added move constructor and move assignment to RepeatedField,
RepeatedPtrField and google::protobuf::Any.
* Added perfect forwarding in Arena::CreateMessage
* In-progress experimental support for implicit weak fields with lite protos.
This feature allows the linker to strip out more unused messages and reduce
binary size.
* Various performance optimizations.
Java
* Proto3 messages are now preserving unknown fields by default. If you’d like
to drop unknown fields, please use the DiscardUnknownFieldsParser API. For
example:
Parser<Foo> parser = DiscardUnknownFieldsParser.wrap(Foo.parser());
Foo foo = parser.parseFrom(input);
* Added a new CodedInputStream decoder for Iterable<ByteBuffer> with direct
ByteBuffers.
* TextFormat now prints unknown length-delimited fields as messages if
possible.
* FieldMaskUtil.merge() no longer creates unnecessary empty messages when a
message field is unset in both source message and destination message.
* Various performance optimizations.
Python
* Proto3 messages are now preserving unknown fields by default. Use
message.DiscardUnknownFields() to drop unknown fields.
* Add FieldDescriptor.file in generated code.
* Add descriptor pool FindOneofByName in pure python.
* Change unknown enum values into unknown field set .
* Add more Python dict/list compatibility for Struct/ListValue.
* Add utf-8 support for text_format.Merge()/Parse().
* Support numeric unknown enum values for proto3 JSON format.
* Add warning for Unexpected end-group tag in cpp extension.
PHP
* Proto3 messages are now preserving unknown fields.
* Provide well known type messages in runtime.
* Add prefix ‘PB’ to generated class of reserved names.
* Fixed all conformance tests for encode/decode json in php runtime. C
extension needs more work.
Objective-C
* Fixed some issues around copying of messages with unknown fields and then
mutating the unknown fields in the copy.
C#
* Added unknown field support in JsonParser.
* Fixed oneof message field merge.
* Simplify parsing messages from array slices.
Ruby
* Unknown fields are now preserved by default.
* Fixed several bugs for segment fault.
Javascript
* Decoder can handle both paced and unpacked data no matter how the proto is
defined.
* Decoder now accept long varint for 32 bit integers.
2017-08-14 version 3.4.0 (C++/Java/Python/PHP/Objective-C/C#/Ruby/JavaScript)
Planned Future Changes
* There are some changes that are not included in this release but are planned
for the near future
- Preserve unknown fields in proto3: We are going to bring unknown fields
back into proto3. In this release, some languages start to support
preserving unknown fields in proto3, controlled by flags/options. Some
languages also introduce explicit APIs to drop unknown fields for
migration. Please read the change log sections by languages for details.
For general timeline and plan:
https://docs.google.com/document/d/1KMRX-G91Aa-Y2FkEaHeeviLRRNblgIahbsk4wA14gRk/view
For issues and discussions:
https://github.com/google/protobuf/issues/272
- Make C++ implementation C++11 only: we plan to require C++11 to build
protobuf code starting from 3.5.0 or 3.6.0 release, after unknown fields
semantic changes are finished. Please join this
github issue:
https://github.com/google/protobuf/issues/2780
to provide your feedback.
General
* Extension ranges now accept options and are customizable.
* "reserve" keyword now supports “max” in field number ranges,
e.g. reserve 1000 to max;
C++
* Proto3 messages are now able to preserve unknown fields. The default
behavior is still to drop unknowns, which will be flipped in a future
release. If you rely on unknowns fields being dropped. Please use
Message::DiscardUnknownFields() explicitly.
* Packable proto3 fields are now packed by default in serialization.
* Following C++11 features are introduced when C++11 is available:
- move-constructor and move-assignment are introduced to messages
- Repeated fields constructor now takes std::initializer_list
- rvalue setters are introduced for string fields
* Experimental Table-Driven parsing and serialization available to test. To
enable it, pass in table_driven_parsing table_driven_serialization protoc
generator flags for C++
$ protoc --cpp_out=table_driven_parsing,table_driven_serialization:./ \
test.proto
* lite generator parameter supported by the generator. Once set, all generated
files, use lite runtime regardless of the optimizer_for setting in the
.proto file.
* Various optimizations to make C++ code more performant on PowerPC platform
* Fixed maps data corruption when the maps are modified by both reflection API
and generated API.
* Deterministic serialization on maps reflection now uses stable sort.
* file() accessors are introduced to various *Descriptor classes to make
writing template function easier.
* ByteSize() and SpaceUsed() are deprecated.Use ByteSizeLong() and
SpaceUsedLong() instead
* Consistent hash function is used for maps in DEBUG and NDEBUG build.
* "using namespace std" is removed from stubs/common.h
* Various performance optimizations and bug fixes
Java
* Introduced new parser API DiscardUnknownFieldsParser in preparation of
proto3 unknown fields preservation change. Users who want to drop unknown
fields should migrate to use this new parser API. For example:
Parser<Foo> parser = DiscardUnknownFieldsParser.wrap(Foo.parser());
Foo foo = parser.parseFrom(input);
* Introduced new TextFormat API printUnicodeFieldValue() that prints field
value without escaping unicode characters.
* Added Durations.compare(Duration, Duration) and
Timestamps.compare(Timestamp, Timestamp).
* JsonFormat now acce
没有合适的资源?快使用搜索试试~ 我知道了~
windows下可用的protocol buffer ,版本3.5.1
共2000个文件
cc:428个
h:408个
obj:257个
需积分: 50 12 下载量 146 浏览量
2018-05-29
22:33:42
上传
评论
收藏 49.33MB ZIP 举报
温馨提示
windows下可用的protocol buffer ,版本3.5.1。protoc.exe位于 protobuf-3.5.1/cmake/build。利用 .proto 文件生成 .pb.cc 和.pb.h 文件的方法: 进入有protoc.exe文件的目录下,打开cmd执行: protoc.exe -I = SRC --cpp_out = DST SRC\filename.proto
资源推荐
资源详情
资源评论
收起资源包目录
windows下可用的protocol buffer ,版本3.5.1 (2000个子文件)
1 5B
10 5B
11 5B
12 5B
13 5B
14 5B
15 5B
16 5B
17 5B
18 5B
19 5B
2 5B
20 5B
21 5B
22 5B
23 5B
24 5B
25 5B
26 5B
27 5B
28 5B
29 5B
3 5B
30 5B
31 5B
32 5B
33 5B
34 5B
35 5B
36 5B
37 5B
38 5B
39 5B
4 5B
40 5B
41 5B
42 5B
43 5B
44 5B
45 5B
46 5B
47 5B
48 5B
49 5B
5 5B
50 5B
54 5B
55 5B
56 5B
57 5B
59 5B
6 5B
60 5B
61 5B
62 5B
63 5B
64 5B
65 5B
66 5B
67 5B
68 5B
7 5B
71 5B
72 5B
73 5B
74 5B
75 5B
76 5B
77 5B
78 5B
79 5B
8 5B
80 5B
9 5B
libprotoc.a 21.48MB
libprotoc.a 21.48MB
libprotobuf.a 21.26MB
libprotobuf.a 21.26MB
objects.a 19.78MB
libprotobuf.dll.a 17.36MB
libprotoc.dll.a 8.55MB
libprotobuf-lite.a 2.15MB
libprotobuf-lite.a 2.15MB
libprotobuf-lite.dll.a 2.1MB
libgmock.a 1.82MB
objects.a 16KB
objects.a 6KB
libgmock_main.a 3KB
configure.ac 7KB
configure.ac 6KB
configure.ac 3KB
Makefile.am 80KB
Makefile.am 55KB
Makefile.am 22KB
Makefile.am 10KB
Makefile.am 7KB
Makefile.am 3KB
ar-lib 6KB
bad_utf8_string 3B
build_packages.bat 198B
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
云角阑干
- 粉丝: 0
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功