aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/google/protobuf/compiler/java/java_message_field.cc
Commit message (Collapse)AuthorAge
* Merge pull request #2121 from mazurkin/issue-2108Gravatar Feng Xiao2018-06-18
|\ | | | | issue-2108 [protoc/Java] Excessive copying on buildPartial()
* | Merge from Google internal for 3.4 releaseGravatar Jisi Liu2017-07-18
| |
* | Integrated internal changes from GoogleGravatar Adam Cozzette2016-11-17
| |
| * [issue-2108] [protoc/java] Excessive copying on buildPartial()Gravatar Nickolay Mazurkin2016-09-18
|/
* Versioning Java GeneratedMessage.Gravatar Feng Xiao2016-07-19
| | | | Change-Id: Ib2bb5042deaabdf452d5be2ad1ce40d739ad8d1b
* Integrated internal changes from GoogleGravatar Adam Cozzette2016-06-29
| | | | This includes all internal changes from around May 20 to now.
* Integrate google internal changes.Gravatar Jisi Liu2016-03-30
|
* Down-integrate from google3.Gravatar Feng Xiao2015-08-22
|
* down-integrate internal changesGravatar Bo Yang2015-05-21
|
* Propogate onChange() event when getFooBuilder() is on an oneof messageGravatar Jisi Liu2015-02-23
| | | | | | field. Change-Id: Idb5b53da5accd24038a895aba49b684eeee95814
* Down-integrate from internal code base.Gravatar Feng Xiao2014-11-10
|
* Replace links to code.google.com/protobuf with ↵Gravatar Feng Xiao2014-10-01
| | | | developers.google.com/protocol-buffers
* down integrate to svnGravatar jieluo@google.com2014-07-18
|
* Down-integrate from internal branchGravatar xiaofeng@google.com2012-09-22
|
* Submit recent changes from internal branch. See CHANGES.txt for more details.Gravatar liujisi@google.com2010-11-02
|
* Massive roll-up of changes. See CHANGES.txt.Gravatar kenton@google.com2009-12-18
|
* Push out changes from internal codebase.Gravatar kenton@google.com2009-01-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | All Languages * Repeated fields of primitive types (types other that string, group, and nested messages) may now use the option [packed = true] to get a more efficient encoding. In the new encoding, the entire list is written as a single byte blob using the "length-delimited" wire type. Within this blob, the individual values are encoded the same way they would be normally except without a tag before each value (thus, they are tightly "packed"). C++ * UnknownFieldSet now supports STL-like iteration. * Message interface has method ParseFromBoundedZeroCopyStream() which parses a limited number of bytes from an input stream rather than parsing until EOF. Java * Fixed bug where Message.mergeFrom(Message) failed to merge extensions. * Message interface has new method toBuilder() which is equivalent to newBuilderForType().mergeFrom(this). * All enums now implement the ProtocolMessageEnum interface. * Setting a field to null now throws NullPointerException. * Fixed tendency for TextFormat's parsing to overflow the stack when parsing large string values. The underlying problem is with Java's regex implementation (which unfortunately uses recursive backtracking rather than building an NFA). Worked around by making use of possesive quantifiers. Python * Updated RPC interfaces to allow for blocking operation. A client may now pass None for a callback when making an RPC, in which case the call will block until the response is received, and the response object will be returned directly to the caller. This interface change cannot be used in practice until RPC implementations are updated to implement it.
* Integrate changes from internal Google-internal branch.Gravatar kenton@google.com2008-09-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | General * License changed from Apache 2.0 to New BSD. * It is now possible to define custom "options", which are basically annotations which may be placed on definitions in a .proto file. For example, you might define a field option called "foo" like so: import "google/protobuf/descriptor.proto" extend google.protobuf.FieldOptions { optional string foo = 12345; } Then you annotate a field using the "foo" option: message MyMessage { optional int32 some_field = 1 [(foo) = "bar"] } The value of this option is then visible via the message's Descriptor: const FieldDescriptor* field = MyMessage::descriptor()->FindFieldByName("some_field"); assert(field->options().GetExtension(foo) == "bar"); This feature has been implemented and tested in C++ and Java. Other languages may or may not need to do extra work to support custom options, depending on how they construct descriptors. C++ * Fixed some GCC warnings that only occur when using -pedantic. * Improved static initialization code, making ordering more predictable among other things. * TextFormat will no longer accept messages which contain multiple instances of a singular field. Previously, the latter instance would overwrite the former. * Now works on systems that don't have hash_map. Python * Strings now use the "unicode" type rather than the "str" type. String fields may still be assigned ASCII "str" values; they will automatically be converted. * Adding a property to an object representing a repeated field now raises an exception. For example: # No longer works (and never should have). message.some_repeated_field.foo = 1
* Initial checkin.Gravatar temporal2008-07-10