Protocol Buffers - Google's data interchange format (grpc依赖)
https://developers.google.com/protocol-buffers/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
148 lines
6.9 KiB
148 lines
6.9 KiB
=============================================================================== |
|
Welcome to the C# port of Google Protocol Buffers, written by Jon Skeet |
|
(skeet@pobox.com) based on the work of many talented people. |
|
|
|
=============================================================================== |
|
RELEASE NOTES - Code imported into Google's main protobuf repository |
|
=============================================================================== |
|
|
|
Everything below note this represents history of protobuf-csharp-port project |
|
before the code was merged into csharp/ subtree of GitHub google/protobuf |
|
repository. |
|
Frozen legacy version of the original project is available in |
|
https://github.com/jskeet/protobuf-csharp-port. |
|
|
|
=============================================================================== |
|
RELEASE NOTES - Version 2.4.1.555 |
|
=============================================================================== |
|
|
|
Changes: |
|
- Upgrade solution format to Visual Studio 2012. |
|
- Add the ability to print a builder (not just a message) |
|
- TextGenerator introduces a new overload of PrintTo |
|
- Munge protoc's error format into a VS-C#-compatible output format. |
|
- Work to make ProtoGen clone that acts as a protoc.exe plugin. |
|
- Added the AllowPartiallyTrustedCallers attribute |
|
- Optimized enum parsing. |
|
|
|
Fixes: |
|
- Fix for bug in limited input stream's Position, Introduced Position on |
|
output stream |
|
- Fix for writing a character to a JSON output overflows allocated buffer |
|
- Optimize FromBase64String to return Empty when presented with empty string. |
|
- Use string.Concat instead of operator to avoid potential import problems |
|
- Issue 81: quoting for NUnit parameters. |
|
- Issue 56: NuGet package is noisy |
|
- Issue 70: Portable library project has some invalid Nunit-based code. |
|
- Issue 71: CodedInputStream.ReadBytes go to slow path unnecessarily |
|
- Issue 84: warning CS0219: The variable `size' is assigned but never used |
|
|
|
=============================================================================== |
|
RELEASE NOTES - Version 2.4.1.521 |
|
=============================================================================== |
|
|
|
Changes: |
|
- Add generated_code_attributes option, defaulted to false |
|
- Added support for Portable library |
|
- Added 'Unsafe' static type in ByteString to allow direct buffer access |
|
|
|
Fixes: |
|
- Issue 50: The XML serializer will fail to deserialize a message with empty |
|
child message |
|
- Issue 45: Use of 'item' as a field name causes AmbiguousMatchException |
|
- Issue 49: Generated nested static Types class should be partial |
|
- Issue 38: Disable CLSCompliant warnings (3021) |
|
- Issue 40: proto_path does not work for command-line file names |
|
- Issue 54: should retire all bytes in buffer (bufferSize) |
|
- Issue 43: Fix to correct identical 'umbrella_classname' options from trying |
|
to write to the same filename. |
|
|
|
=============================================================================== |
|
RELEASE NOTES - Version 2.4.1.473 |
|
=============================================================================== |
|
|
|
Features: |
|
- Added option service_generator_type to control service generation with |
|
NONE, GENERIC, INTERFACE, or IRPCDISPATCH |
|
- Added interfaces IRpcDispatch and IRpcServerStub to provide for blocking |
|
services and implementations. |
|
- Added ProtoGen.exe command-line argument "--protoc_dir=" to specify the |
|
location of protoc.exe. |
|
- Extracted interfaces for ICodedInputStream and ICodedOutputStream to allow |
|
custom implementation of writers with both speed and size optimizations. |
|
- Addition of the "Google.ProtoBuffers.Serialization" assembly to support |
|
reading and writing messages to/from XML, JSON, IDictionary<,> and others. |
|
- Several performance related fixes and tweaks |
|
- Issue 3: Add option to mark generated code with attribute |
|
- Issue 20: Support for decorating classes [Serializable] |
|
- Issue 21: Decorate fields with [deprecated=true] as [System.Obsolete] |
|
- Issue 22: Reusable Builder classes |
|
- Issue 24: Support for using Json/Xml formats with ICodedInputStream |
|
- Issue 25: Added support for NuGet packages |
|
- Issue 31: Upgraded protoc.exe and descriptor to 2.4.1 |
|
|
|
Fixes: |
|
- Issue 13: Message with Field same name as message causes uncompilable .cs |
|
- Issue 16: Does not integrate well with other tooling |
|
- Issue 19: Support for negative enum values |
|
- Issue 26: AddRange in GeneratedBuilder iterates twice. |
|
- Issue 27: Remove XML documentation output from test projects to clear |
|
warnings/errors. |
|
- Issue 28: Circular message dependencies result in null default values for |
|
Message fields. |
|
- Issue 29: Message classes generated have a public default constructor. You |
|
can disable private ctor generation with the option generate_private_ctor. |
|
- Issue 35: Fixed a bug in ProtoGen handling of arguments with trailing \ |
|
- Big-endian support for float, and double on Silverlight |
|
- Packed and Unpacked parsing allow for all repeated, as per version 2.3 |
|
- Fix for leaving Builder a public ctor on internal classes for use with |
|
generic "where T: new()" constraints. |
|
|
|
Other: |
|
- Changed the code signing key to a privately held key |
|
- Reformatted all code and line-endings to C# defaults |
|
- Reworking of performance benchmarks to produce reliable results, option /v2 |
|
- Issue 34: Silverlight assemblies are now unit tested |
|
|
|
=============================================================================== |
|
RELEASE NOTES - Version 2.3.0.277 |
|
=============================================================================== |
|
|
|
Features: |
|
- Added cls_compliance option to generate attributes indicating |
|
non-CLS-compliance. |
|
- Added file_extension option to control the generated output file's extension. |
|
- Added umbrella_namespace option to place the umbrella class into a nested |
|
namespace to address issues with proto files having the same name as a |
|
message it contains. |
|
- Added output_directory option to set the output path for the source file(s). |
|
- Added ignore_google_protobuf option to avoid generating code for includes |
|
from the google.protobuf package. |
|
- Added the LITE framework (Google.ProtoBuffersLite.dll) and the ability to |
|
generate code with "option optimize_for = LITE_RUNTIME;". |
|
- Added ability to invoke protoc.exe from within ProtoGen.exe. |
|
- Upgraded to protoc.exe (2.3) compiler. |
|
|
|
Fixes: |
|
- Issue 9: Class cannot be static and sealed error |
|
- Issue 12: default value for enumerate fields must be filled out |
|
|
|
Other: |
|
- Rewrite of build using MSbuild instead of NAnt |
|
- Moved to NUnit Version 2.2.8.0 |
|
- Changed to using secure .snk for releases |
|
|
|
=============================================================================== |
|
RELEASE NOTES - Version 0.9.1 |
|
=============================================================================== |
|
|
|
Fixes: |
|
- issue 10: Incorrect encoding of packed fields when serialized |
|
|
|
=============================================================================== |
|
RELEASE NOTES - Version 0.9.0 |
|
=============================================================================== |
|
|
|
- Initial release |
|
|
|
===============================================================================
|
|
|