2019-09-03 version 3.10.0 (C++/Java/Python/PHP/Objective-C/C#/Ruby/JavaScript)
C++
* Switch the proto parser to the faster MOMI parser.
* Properly escape Struct keys in the proto3 JSON serializer.
* Fix crash on uninitialized map entries.
* Informed the compiler of has-bit invariant to produce better code
* Unused imports of files defining descriptor extensions will now be reported
* Add proto2::util::RemoveSubranges to remove multiple subranges in linear time.
* Added BaseTextGenerator::GetCurrentIndentationSize()
* Made implicit weak fields compatible with the Apple linker
* Support 32 bit values for ProtoStreamObjectWriter to Struct.
* Removed the internal-only header coded_stream_inl.h and the internal-only methods defined there.
* Enforced no SWIG wrapping of descriptor_database.h (other headers already had this restriction).
* Implementation of the equivalent of the MOMI parser for serialization. This removes one of the two serialization routines, by making the fast array serialization routine completely general. SerializeToCodedStream can now be implemented in terms of the much much faster array serialization. The array serialization regresses slightly, but when array serialization is not possible this wins big.
* Do not convert unknown field name to snake case to accurately report error.
* Fix a UBSAN warnings. (#6333)
* Add podspec for C++ (#6404)
* protoc: fix source code info location for missing label (#6436)
* C++ Add move constructor for Reflection's SetString (#6477)
Java
* Call loadDescriptor outside of synchronized block to remove one possible source of deadlock.
* Have oneof enums implement a separate interface (other than EnumLite) for clarity.
* Opensource Android Memory Accessors
* Update TextFormat to make use of the new TypeRegistry.
* Support getFieldBuilder and getRepeatedFieldBuilder in ExtendableBuilder
* Update JsonFormat to make use of the new TypeRegistry.
* Add proguard config generator for GmmBenchmarkSuiteLite.
* Change ProtobufArrayList to use Object[] instead of ArrayList for 5-10% faster parsing
* Implement ProtobufArrayList.add(E) for 20% (5%-40%) faster overall protolite2 parsing
* Make a copy of JsonFormat.TypeRegistry at the protobuf top level package. This will eventually replace JsonFormat.TypeRegistry.
* Fix javadoc warnings in generated files (#6231)
* Java: Add Automatic-Module-Name entries to the Manifest (#6568)
Python
* Add descriptor methods in descriptor_pool are deprecated.
* Uses explicit imports to prevent multithread test failures in py3.
* Added __delitem__ for Python extension dict
* Update six version to 1.12.0 and fix legacy_create_init issue (#6391)
JavaScript
* Remove deprecated boolean option to getResultBase64String().
* Fix sint64 zig-zag encoding.
* Simplify hash64 string conversion to avoid DIGIT array. Should reduce overhead if these functions aren't used, and be more efficient by avoiding linear array searches.
* Change the parameter types of binaryReaderFn in ExtensionFieldBinaryInfo to (number, ?, ?).
* Create dates.ts and time_of_days.ts to mirror Java versions. This is a near-identical conversion of c.g.type.util.{Dates,TimeOfDays} respectively.
* Migrate moneys to TypeScript.
PHP
* Fix incorrect leap day for Timestamp (#6696)
* Initialize well known type values (#6713)
Ruby
* Fix scope resolution for Google namespace (#5878)
* Support hashes for struct initializers (#5716)
* Optimized away the creation of empty string objects. (#6502)
* Roll forward Ruby upb changes now that protobuf Ruby build is fixed (#5866)
* Optimized layout_mark() for Ruby (#6521)
* Optimization for layout_init() (#6547)
* Fix for GC of Ruby map frames. (#6533)
* Fixed leap year handling by reworking upb_mktime() -> upb_timegm(). (#6695)
Objective C
* Remove OSReadLittle* due to alignment requirements (#6678)
* Don't use unions and instead use memcpy for the type swaps. (#6672)
Other
* Override CocoaPods module to lowercase (#6464)
2019-06-28 version 3.9.0 (C++/Java/Python/PHP/Objective-C/C#/Ruby/JavaScript)
C++
* Optimize and simplify implementation of RepeatedPtrFieldBase
* Don't create unnecessary unknown field sets.
* Remove branch from accessors to repeated field element array.
* Added delimited parse and serialize util.
* Reduce size by not emitting constants for fieldnumbers
* Fix a bug when comparing finite and infinite field values with explicit tolerances.
* TextFormat::Parser should use a custom Finder to look up extensions by number if one is provided.
* Add MessageLite::Utf8DebugString() to make MessageLite more compatible with Message.
* Fail fast for better performance in DescriptorPool::FindExtensionByNumber() if descriptor has no defined extensions.
* Adding the file name to help debug colliding extensions
* Added FieldDescriptor::PrintableNameForExtension() and DescriptorPool::FindExtensionByPrintableName().
The latter will replace Reflection::FindKnownExtensionByName().
* Replace NULL with nullptr
* Created a new Add method in repeated field that allows adding a range of elements all at once.
* Enabled enum name-to-value mapping functions for C++ lite
* Avoid dynamic initialization in descriptor.proto generated code
* Move stream functions to MessageLite from Message.
* Move all zero_copy_stream functionality to io_lite.
* Do not create array of matched fields for simple repeated fields
* Enabling silent mode by default to reduce make compilation noise. (#6237)
Java
* Expose TextFormat.Printer and make it configurable. Deprecate the static methods.
* Library for constructing google.protobuf.Struct and google.protobuf.Value
* Make OneofDescriptor extend GenericDescriptor.
* Expose streamingness of service methods from MethodDescriptor.
* Fix a bug where TextFormat fails to parse Any filed with > 1 embedded message sub-fields.
* Establish consistent JsonFormat behavior for nulls in oneofs, regardless of order.
* Update GSON version to 3.8.5. (#6268)
* Add `protobuf_java_lite` Bazel target. (#6177)
Python
* Change implementation of Name() for enums that allow aliases in proto2 in Python
to be in line with claims in C++ implementation (to return first value).
* Explicitly say what field cannot be set when the new value fails a type check.
* Duplicate register in descriptor pool will raise errors
* Add __slots__ to all well_known_types classes, custom attributes are not allowed anymore.
* text_format only present 8 valid digits for float fields by default
JavaScript
* Add Oneof enum to the list of goog.provide
PHP
* Make php message class final to avoid mocking. (#6277)
* Rename get/setXXXValue to get/setXXXWrapper. (#6295)
Ruby
* Remove to_hash methods. (#6166)
2019-04-29 version 3.8.0 (C++/Java/Python/PHP/Objective-C/C#/Ruby/JavaScript)
C++
* Use std::atomic<int32> in case of myriad2 platform
* Always declare enums to be int-sized
* Added DebugString() and ShortDebugString() methods on MessageLite
* Specialized different parse loop control flows
* Make hasbits potentially in register. The or's start forming an obstacle because it's a read modify store on the same mem address on each iteration.
* Move to an internal MACRO for parser validity checks.
* Improve map parsing performance.
* Make MergePartialFromCodedStream non virtual. This allows direct calls, potential inlining and is also a code health improvement
* Add an overall limit to parse_context to prevent reading past it. This allows to remove a annoying level of indirection.
* Fix a mistake, we shouldn't verify map key/value strings for utf8 in opt mode for proto2.
* Further improvements to cut binary size.
* Prepare to make MergePartialFromCodedStream non-virtual.
* A report on some interesting behavior change in python (caused by b/27494216) made me realize there is a chec
没有合适的资源?快使用搜索试试~ 我知道了~
开源项目-google-protobuf.zip
共2220个文件
proto:299个
h:292个
java:281个
需积分: 5 0 下载量 69 浏览量
2019-10-15
04:52:43
上传
评论
收藏 6.84MB ZIP 举报
温馨提示
开源项目-google-protobuf.zip,Release Protocol Buffers v3.0.0 路 google/protobuf 路 GitHub
资源推荐
资源详情
资源评论
收起资源包目录
开源项目-google-protobuf.zip (2220个子文件)
configure.ac 8KB
Makefile.am 93KB
Makefile.am 53KB
Makefile.am 42KB
Makefile.am 22KB
lite.awk 342B
bad_utf8_string 3B
build_single_artifact.bat 2KB
build_artifacts.bat 2KB
appveyor.bat 1KB
build.bat 713B
build_nuget.bat 317B
build.bat 308B
buildall.bat 255B
build_packages.bat 198B
BUILD 47KB
BUILD 3KB
zlib.BUILD 2KB
BUILD 819B
six.BUILD 237B
BUILD 43B
protobuf.bzl 16KB
protobuf_deps.bzl 3KB
compiler_config_setting.bzl 871B
upb.c 391KB
upb.c 391KB
message.c 103KB
defs.c 73KB
encode_decode.c 64KB
encode_decode.c 52KB
storage.c 40KB
storage.c 39KB
def.c 35KB
message.c 28KB
map.c 26KB
type_check.c 26KB
repeated_field.c 21KB
map.c 19KB
array.c 18KB
protobuf.c 13KB
protobuf.c 6KB
utf8.c 3KB
wrap_memcpy.c 2KB
descriptor.pb.cc 462KB
descriptor_unittest.cc 292KB
descriptor.cc 276KB
cpp_message.cc 141KB
js_generator.cc 141KB
map_test.cc 124KB
parser_unittest.cc 120KB
binary_json_conformance_suite.cc 112KB
message_differencer_unittest.cc 110KB
message.cc 104KB
generated_message_reflection.cc 91KB
protostream_objectwriter_test.cc 91KB
test_util_lite.cc 90KB
command_line_interface_unittest.cc 88KB
text_format.cc 88KB
type.pb.cc 83KB
strutil.cc 83KB
parser.cc 82KB
command_line_interface.cc 81KB
extension_set.cc 80KB
wrappers.pb.cc 77KB
text_format_unittest.cc 74KB
message_differencer.cc 72KB
descriptor.cc 71KB
cpp_helpers.cc 63KB
plugin.pb.cc 59KB
repeated_field_unittest.cc 59KB
php_generator.cc 57KB
objectivec_helpers.cc 56KB
python_generator.cc 56KB
extension_set_unittest.cc 54KB
java_message.cc 54KB
descriptor_containers.cc 53KB
arena_unittest.cc 52KB
wire_format.cc 52KB
cpp_file.cc 51KB
wire_format_unittest.cc 50KB
java_message_field.cc 49KB
api.pb.cc 49KB
coded_stream_unittest.cc 46KB
cpp_string_field.cc 46KB
protostream_objectwriter.cc 45KB
java_string_field.cc 42KB
generated_message_reflection_unittest.cc 41KB
struct.pb.cc 41KB
java_enum_field.cc 41KB
protostream_objectsource.cc 41KB
lite_unittest.cc 39KB
map_container.cc 37KB
tokenizer.cc 37KB
java_primitive_field.cc 37KB
protostream_objectsource_test.cc 35KB
field_mask_util_test.cc 35KB
tokenizer_unittest.cc 34KB
strutil_unittest.cc 34KB
java_map_field_lite.cc 34KB
java_enum_field_lite.cc 33KB
共 2220 条
- 1
- 2
- 3
- 4
- 5
- 6
- 23
资源评论
weixin_38743602
- 粉丝: 394
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功