| 
					
				 | 
			
			
				@@ -1,3 +1,91 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+2018-06-01 version 3.6.0 (C++/Java/Python/PHP/Objective-C/C#/Ruby/JavaScript) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  C++ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Starting from this release, we now require C++11. For those we cannot yet 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    upgrade to C++11, we will try to keep the 3.5.x branch updated with 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    critical bug fixes only. If you have any concerns about this, please 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    comment on issue #2780. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Moved to C++11 types like std::atomic and std::unique_ptr and away from our 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    old custom-built equivalents. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Added support for repeated message fields in lite protos using implicit 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    weak fields. This is an experimental feature that allows the linker to 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    strip out more unused messages than previously was possible. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Fixed SourceCodeInfo for interpreted options and extension range options. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Fixed always_print_enums_as_ints option for JSON serialization. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Added support for ignoring unknown enum values when parsing JSON. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Create std::string in Arena memory. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Fixed ValidateDateTime to correctly check the day. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Fixed bug in ZeroCopyStreamByteSink. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Various other cleanups and fixes. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  Java 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Dropped support for Java 6. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Added a UTF-8 decoder that uses Unsafe to directly decode a byte buffer. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Added deprecation annotations to generated code for deprecated oneof 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    fields. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Fixed map field serialization in DynamicMessage. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Cleanup and documentation for Java Lite runtime. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Various other fixes and cleanups 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Fixed unboxed arraylists to handle an edge case 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Improved performance for copying between unboxed arraylists 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Fixed lite protobuf to avoid Java compiler warnings 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Improved test coverage for lite runtime 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Performance improvements for lite runtime 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  Python 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Fixed bytes/string map key incompatibility between C++ and pure-Python 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    implementations (issue #4029) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Added __init__.py files to compiler and util subpackages 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Use /MT for all Windows versions 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Fixed an issue affecting the Python-C++ implementation when used with 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    Cython (issue #2896) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Various text format fixes 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Various fixes to resolve behavior differences between the pure-Python and 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    Python-C++ implementations 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  PHP 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Added php_metadata_namespace to control the file path of generated metadata 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    file. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Changed generated classes of nested message/enum. E.g., Foo.Bar, which 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    previously generates Foo_Bar, now generates Foo/Bar 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Added array constructor. When creating a message, users can pass a php 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    array whose content is field name to value pairs into constructor. The 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    created message will be initialized according to the array. Note that 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    message field should use a message value instead of a sub-array. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Various bug fixes. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  Objective-C 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * We removed some helper class methods from GPBDictionary to shrink the size 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    of the library, the functionary is still there, but you may need to do some 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    specific +alloc / -init… methods instead. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Minor improvements in the performance of object field getters/setters by 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    avoiding some memory management overhead. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Fix a memory leak during the raising of some errors. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Make header importing completely order independent. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Small code improvements for things the undefined behaviors compiler option 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    was flagging. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  Ruby 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Added ruby_package file option to control the module of generated class. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Various bug fixes. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  Javascript 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Allow setting string to int64 field. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  Csharp 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Unknown fields are now parsed and then sent back on the wire. They can be 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    discarded at parse time via a CodedInputStream option. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Movement towards working with .NET 3.5 and Unity 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Expression trees are no longer used 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * AOT generics issues in Unity/il2cpp have a workaround (see this commit for 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    details) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * Floating point values are now compared bitwise (affects NaN value 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    comparisons) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * The default size limit when parsing is now 2GB rather than 64MB 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * MessageParser now supports parsing from a slice of a byte array 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  * JSON list parsing now accepts null values where the underlying proto 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    representation does 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 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 
			 |