aboutsummaryrefslogtreecommitdiff
path: root/javanano/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge 3.2.x branch into master (#2648)Paul Yang2017-01-311-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Down-integrate internal changes to github. * Update conformance test failure list. * Explicitly import used class in nano test to avoid random test fail. * Update _GNUC_VER to use the correct implementation of atomic operation on Mac. * maps_test.js: check whether Symbol is defined before using it (#2524) Symbol is not yet available on older versions of Node.js and so this test fails with them. This change just directly checks whether Symbol is available before we try to use it. * Added well_known_types_embed.cc to CLEANFILES so that it gets cleaned up * Updated Makefile.am to fix out-of-tree builds * Added Bazel genrule for generating well_known_types_embed.cc In pull request #2517 I made this change for the CMake and autotools builds but forgot to do it for the Bazel build. * Update _GNUC_VER to use the correct implementation of atomic operation on Mac. * Add new js file in extra dist. * Bump version number to 3.2.0 * Fixed issue with autoloading - Invalid paths (#2538) * PHP fix int64 decoding (#2516) * fix int64 decoding * fix int64 decoding + tests * Fix int64 decoding on 32-bit machines. * Fix warning in compiler/js/embed.cc embed.cc: In function ‘std::string CEscape(const string&)’: embed.cc:51:32: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i = 0; i < str.size(); ++i) { ^ * Fix include in auto-generated well_known_types_embed.cc Restore include style fix (e3da722) that has been trampled by auto-generation of well_known_types_embed.cc * Fixed cross compilations with the Autotools build Pull request #2517 caused cross compilations to start failing, because the js_embed binary was being built to run on the target platform instead of on the build machine. This change updates the Autotools build to use the AX_PROG_CXX_FOR_BUILD macro to find a suitable compiler for the build machine and always use that when building js_embed. * Minor fix for autocreated object repeated fields and maps. - If setting/clearing a repeated field/map that was objects, check the class before checking the autocreator. - Just to be paranoid, don’t mutate within copy/mutableCopy for the autocreated classes to ensure there is less chance of issues if someone does something really crazy threading wise. - Some more tests for the internal AutocreatedArray/AutocreatedDictionary classes to ensure things are working as expected. - Add Xcode 8.2 to the full_mac_build.sh supported list. * Fix generation of extending nested messages in JavaScript (#2439) * Fix generation of extending nested messages in JavaScript * Added missing test8.proto to build * Fix generated code when there is no namespace but there is enum definition. * Decoding unknown field should succeed. * Add embed.cc in src/Makefile.am to fix dist check. * Fixed "make distcheck" for the Autotools build To make the test pass I needed to fix out-of-tree builds and update EXTRA_DIST and CLEANFILES. * Remove redundent embed.cc from src/Makefile.am * Update version number to 3.2.0-rc.1 (#2578) * Change protoc-artifacts version to 3.2.0-rc.1 * Update version number to 3.2.0rc2 * Update change logs for 3.2.0 release. * Update php README * Update upb, fixes some bugs (including a hash table problem). (#2611) * Update upb, fixes some bugs (including a hash table problem). * Ruby: added a test for the previous hash table corruption. Verified that this triggers the bug in the currently released version. * Ruby: bugfix for SEGV. * Ruby: removed old code for dup'ing defs. * Reverting deployment target to 7.0 (#2618) The Protobuf library doesn’t require the 7.1 deployment target so reverting it back to 7.0 * Fix typo that breaks builds on big-endian (#2632) * Bump version number to 3.2.0
* Class is final but declares protected fieldwujingchao2016-11-141-2/+2
| | | This class is declared to be final, but declares fields to be protected. Since the class is final, it can not be derived from, and the use of protected is confusing.
* Fix message for InvalidProtocolBufferExceptionMsp2016-11-041-1/+1
|
* Fix spelling in strings and commentsOtto Kekäläinen2016-07-031-1/+1
|
* Update version number and fix javadoc errors.Feng Xiao2016-01-061-2/+2
|
* Merge branch 'master' of https://github.com/zsurocking/protobufXiao Hang2015-08-0420-28/+28
|\
* | Generate a package name suffix ".nano" for nano messagesXiao Hang2015-07-291-5/+5
|/ | | | Also introducing an option javanano_use_deprecated_package to allow users to disable the suffix
* Speed up little endian int/long writes.Jeff Davidson2015-05-111-12/+10
| | | | | Bug: 20636336 Change-Id: I303d712967f9885f7c3082d00f961f8ab93a6aed
* Handle 0-length byte buffers in micro and nano protobufsAndre Eisenbach2015-05-041-0/+2
| | | | Change-Id: I845ee1ab1005d25c8d77a8c2ed801c0f7b7c847b
* Throw OutOfSpaceException instead of IllegalArgumentException.Charles Munger2015-04-282-1/+28
| | | | | | | | | | | | | When a MessageNano containing a String is serialized into a buffer that is too small to contain it, and the buffer's boundary happens to be where the string field's length delimiting varint is serialized, and the string's length and 3*length have the same length when encoded as a varint, an IllegalArgumentException is thrown rather than an OutOfSpaceException. Github issue: https://github.com/google/protobuf/issues/292 Change-Id: If478d68cf15bfd0662252d008e42b2bf1ff1c75e
* Inline unknownFieldData{Equals,HashCode} to generated code.Brian Duff2015-04-282-33/+11
| | | | | | | | | | It turns out dex (apparently) was inlining these protected final methods from ExtendableMessageNano into every message class. Removing these methods from the base class and inlining their code reduces the method count by 2 methods / message when the store_unknown_fields option is on. Change-Id: I0aa09f2016d39939c4c8b8219601793b8fab301f
* Add reset() and position() to CodedOutputByteBufferNano.Shai Barack2015-04-281-0/+17
| | | | Change-Id: Ie2a9e36276ac35e10b3f8d379b5742d50a0374e9
* DO NOT MERGE Overloading createMessageTyped to accept a tag as an integer.Kweku Adams2015-04-282-13/+13
| | | | | | | | | | | When building, some instances expect createMessageTyped to have the signature (int, Class, long), while others expect (int, Class, int). Simply having the former signature meant that builds expecting the latter would fail. This is a cherrypick of change b2a9d4321578139677c146ce37eba5e27e8f5c79 from master. Change-Id: Ib02dbf66173510f4edea32c7b43e82c1a7a38aa2
* Exclude cachedSize when printing fields.Brian Duff2015-04-281-0/+4
| | | | Change-Id: I85563b74237d38c1e447b7286f5f6e62d57e3d63
* Add clone() method support for nano.Brian Duff2015-04-288-2/+115
| | | | | | Upstreamed from Another Place (cr/57247854). Change-Id: I2aaf59544c0f5ae21a51891d8a5eeda1dc722c90
* When no clear() is generated, still initialize fields.Brian Duff2015-04-281-0/+6
| | | | | | | | | | | | | | | | https://android-review.googlesource.com/#/c/67890/ removed field initialization from the ctor, making it just call clear() instead. When I added the generate_clear option back (as part of the reftypes compat mode) in https://android-review.googlesource.com/#/c/109530/, I forgot to ensure that what clear() used to do was inlined in the constructor. This change fixes NPEs that are happening for users of reftypes_compat_mode who rely on unset repeated fields being empty arrays rather than null. Change-Id: Idb58746c60f4a4054b7ebb5c3b0e76b16ff88184
* Fix comments.Brian Duff2015-04-281-2/+2
| | | | | | Forgot to update these in https://android-review.googlesource.com/#/c/109809/ Change-Id: I53f838e2f134f53964161d9620d5ead00c4a3939
* Optimize measurement and serialization of nano protos.Charles Munger2015-04-282-23/+251
| | | | | | | Measuring the serialized size of nano protos is now a zero-alloc operation, and serializing a proto now allocates no memory (other than the output buffer) instead of O(total length of strings). Change-Id: Id5e2ac3bdc4ac56c0bf13d725472da3a00c9baec Signed-off-by: Charles Munger <clm@google.com>
* Fix bug with large extension field numbers.Brian Duff2015-04-283-8/+30
| | | | | | | | | | | | | | | | | | | Previously, extensions with field numbers greater than 268435455 would result in a compile time error in generated code that looks something like this: Foo.java:3178: error: integer number too large: 3346754610 3346754610); This is because we were trying to represent the tag number (an unsigned int) using a java int constant, but java int constants are signed, and can't exceed Integer.MAX_VALUE. Fixed by declaring it as a long instead, and casting it down to an int in the implementation. This is safe, because the tag value always fits in 32 bis. Change-Id: If2017bacb4e20af667eaeaf9b65ddc2c30a7709f
* Clean up importsTamir Duberstein2015-04-022-3/+1
|
* DRY: Use `Charset` statics to eliminate exceptionsTamir Duberstein2015-04-024-43/+24
|
* Add test for debug string for oneofJisi Liu2015-02-191-0/+2
| | | | Change-Id: I6a51a35c69ac24a60dd96ef69d556b1e68bc37d6
* Fix review comments.Jisi Liu2015-02-191-1/+1
| | | | Change-Id: Iafd4a3aa9d55e31478bf070311eeadfe95ece4d7
* Add tests for oneofs.Jisi Liu2015-02-191-6/+142
|
* partial oneof tests.Jisi Liu2015-02-191-0/+38
|
* Add tests for oneof equals and hash.Jisi Liu2015-02-192-0/+81
|
* Uncomment string/bytes fields in oneof nano.Jisi Liu2015-02-191-2/+2
|
* Oneof message level elements (consts, case getter/clear) and messsage type ↵Jisi Liu2015-02-191-1/+1
| | | | field oneof support.
* Initial check in for primitive oneof fields.Jisi Liu2015-02-191-0/+8
|
* Support maps in NanoPrinter.Jisi Liu2015-02-192-0/+53
|
* Use EMPTY_BYTES in WireFormatNanoJisi Liu2015-02-191-2/+1
|
* Mark factory setter API as private for alpha release.Jisi Liu2015-02-171-1/+5
|
* Get the map factory per mergeFrom() call for JavaNano.Jisi Liu2015-02-071-1/+4
|
* implement hashCode() for JavaNano maps.Jisi Liu2015-02-061-0/+19
|
* Implement Equals for nano.Jisi Liu2015-02-062-2/+161
|
* Rename empty bytes in JavaNano.Jisi Liu2015-02-052-4/+3
|
* Rename readData() to readPrimitiveField() in JavaNano.Jisi Liu2015-02-053-4/+4
|
* Add tests merging empty entries in JavaNano mapJisi Liu2015-02-051-0/+30
|
* Fix the behavior when merging conflicting keys, the new value alwaysJisi Liu2015-02-053-34/+35
| | | | override the existing one even for message types.
* Test keys and values cannot be null.Jisi Liu2015-02-051-1/+23
|
* Basic serialization/parsing test.Jisi Liu2015-02-052-1/+130
|
* Moving internal code to InternalNano and rename MapUtil to MapFactories.Jisi Liu2015-02-043-234/+230
|
* parsing and serialzation for maps in JavaNano.Jisi Liu2015-02-033-50/+296
|
* Parsing for Maps in JavaNanoJisi Liu2015-02-021-0/+97
|
* Add readData(int) to read primitive value.Jisi Liu2015-02-021-0/+40
|
* MOVE TYPE_XXX constants to InternalNano.Jisi Liu2015-02-022-54/+39
|
* Add package for map test for nano.Jisi Liu2015-02-021-1/+4
|
* Add tests for JavaNano maps.Jisi Liu2015-02-021-0/+52
|
* Replace links in nano proto code.Feng Xiao2014-11-2627-27/+27
|
* Prepare nano proto code to be merged into protobuf repository.Feng Xiao2014-11-1933-0/+9004