| =============================================================================== | 
 | 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 tweeks | 
 | - 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 | 
 |  | 
 | =============================================================================== |