Commit Graph

189 Commits

Author SHA1 Message Date
Feng Xiao
34a1b6e6b8 Merge pull request #2394 from cwelton/formatting
oneOf fix for JsonFormat includingDefaultValueFields
2016-12-08 11:17:10 -08:00
Caleb Welton
1a56251a35 oneOf fix for JsonFormat includingDefaultValueFields 2016-12-05 18:01:20 -08:00
Michael Stack
7550bcd89f Change CodedInputStream#DEFAULT_SIZE_LIMIT from 64MB to
Integer.MAX_SIZE (0x7FFFFFF) #2228

M java/core/src/main/java/com/google/protobuf/CodedInputStream.java
 Set DEFAULT_SIZE_LIMIT to Integer.MAX_SIZE (Was 64MB). This is how it was
 in pre-2.7.0 pb. Changed size check to an overflow-conscious test (as it
 is later in tryRefillBuffer (making sizeLimit a long was to disruptive).

M java/core/src/test/java/com/google/protobuf/CodedInputStreamTest.java
 Add two tests that echo tests recently added over in c++ to test parse
 of message sizes that are approach and are beyond the size limit.
2016-12-01 20:18:31 -08:00
Adam Cozzette
5d63097fc2 Merge branch 'master' into down-integrate-with-msvc-fix 2016-11-17 17:04:30 -08:00
Adam Cozzette
5a76e633ea Integrated internal changes from Google 2016-11-17 16:59:59 -08:00
Time
ed08341234 #2356 : fix ExceptionInInitializerError on IBM J9 2016-11-11 16:47:41 +08:00
Christopher Tubbs
eb7f3a3ad1 Use latest maven-compiler-plugin (2.6.0)
* Uses build-helper-maven-plugin to add generated sources to the classpath
* Fixes an issue building with newer versions of the maven-compiler-plugin
  (See https://issues.apache.org/jira/browse/MCOMPILER-240)
2016-11-04 02:11:55 -04:00
nmittler
c0f95c6f94 Hacking ByteBufferWriter to work with GAE
Fixes #2269
2016-10-20 11:25:11 -07:00
Bo Yang
f9f3c35eb3 Update version number. 2016-10-10 11:44:21 -07:00
Feng Xiao
f933d10fbe Update version number.
[skip ci]

Change-Id: I1ba6f6372a08b5796570851336e1a548602f60da
2016-10-10 11:44:21 -07:00
Feng Xiao
04d72c2997 Fix java compatibilty tests.
Change-Id: I3ff47358e66965cab34736eed2a477ae29f02f61
2016-10-10 11:43:48 -07:00
Bo Yang
fe1aaad7fe Fix bugs for internal integration. 2016-10-10 11:39:55 -07:00
Bo Yang
15f4db6cb1 Bump version number to 3.1.0-alpha-1. 2016-10-10 11:24:31 -07:00
Bo Yang
cc8ca5b6a5 Integrate internal changes 2016-10-10 11:23:36 -07:00
Bo Yang
b28ab73d22 Fix gson dependency.
gson 2.3 has internal bug that it doesn't work with some versions of maven.
2016-09-21 22:51:36 +00:00
Patrick Strawderman
9ac84f8f3f Fix erroneous comment regarding String.substring
Since Java 7, Strings produced with String.substring do not share byte arrays.
2016-09-16 14:54:58 -07:00
Jisi Liu
58860c021f Merge remote-tracking branch 'origin/3.0.x' into merge 2016-09-14 09:37:48 -07:00
Dave Protasowski
1fc416be21 Allow the JsonFormat.Parser to ignore unknown fields
The default behaviour of throwing an exception remains
2016-09-08 15:08:30 -04:00
Jisi Liu
6e11540b32 Bump version number to 3.0.2 2016-09-02 11:57:49 -07:00
Feng Xiao
52e491b3bb Use 64-bit protoc binaries in compatibility tests.
Turns out travis doesn't have the library dependencies to run a 32-bit
binary.

Change-Id: I5fadbcade2eb71c1e9ce21d90fa9459797df0e81
2016-08-31 11:36:37 -07:00
Feng Xiao
30647cae9f Use 64-bit protoc binaries in compatibility tests.
Turns out travis doesn't have the library dependencies to run a 32-bit
binary.

Change-Id: I5fadbcade2eb71c1e9ce21d90fa9459797df0e81
2016-08-01 13:49:15 -07:00
Jisi Liu
fb7a7c5f1f Bump version number for GA 2016-07-25 12:07:56 -07:00
Feng Xiao
36adb40064 Update compatibility tests as well.
Change-Id: I991396ac6e51e32f3ab1daa501d625f34c3ecb04
2016-07-19 14:57:14 -07:00
Feng Xiao
2e30301837 Versioning Java GeneratedMessage.
Change-Id: Ib2bb5042deaabdf452d5be2ad1ce40d739ad8d1b
2016-07-19 14:32:51 -07:00
Feng Xiao
fa52702408 Include javadoc/source in Java release packages.
Also fixed javadoc errors.

[ci skip]
2016-07-18 15:59:09 -07:00
Feng Xiao
82b43d1f41 Remove Java deterministic API.
Change-Id: I43f7e04a53d1445dfa86db310bdb18ceb446398c
2016-07-18 10:36:04 -07:00
Feng Xiao
1bce70dddb Fix compatiblity issues.
Currently some public API methods are defined in GenreatedMessage.java
and they have a generric return type:
  class GeneratedMessage {
    class Builder<BuilderType extends Builder<BuilderType>> {
      public BuilderType setField(...);
      public BuilderType setExtension(...);
    }
  }
With these definitions, the compiled byte code of a callsite will have
a direct reference to GeneratedMessage. For example:
  fooBuilder.setField(...);
becomes:
  ##: invokevirtual // Method Builder.setField:(...)LGeneratedMessage.Builder
  ##: checkcast     // class Builder

This will prevent us from updating generated classes to subclass a
different versioned GeneratedMessageV3 class in the future (we can't do
it in a binary compatible way).

This change addresses the problem by overriding these methods directly
in the generated class:
  class Foo {
    class Builder extends GeneratedMessage.Builder<Builder> {
      public Builder setField(...) {
        return super.setField(...);
      }
    }
  }
After this, fooBuilder.setField(...) will be compiled to:
  ##: invokevirtual // Method Builder.setField:(...)LFoo.Builder

The callsites will no longer reference GeneratedMessage directly and we
can change Foo to subclass GeneratedMessageV3 without breaking binary
compatiblity.

The downside of this change is:
  1. It increases generated code size (though it saves some instructions
     on the callsites).
  2. We can never stop generating these overrides because doing that
     will break binary compatibility.

Change-Id: I879afbbc1325a66324a51565e017143489b06e97
2016-07-14 15:33:45 -07:00
Feng Xiao
4e0d05138a Merge pull request #1781 from xfxyjwf/update_version
Update version number to 3.0.0-beta-4
2016-07-14 12:59:14 -07:00
Feng Xiao
047a3b4852 Exclude Java lite module from parent pom.xml 2016-07-13 18:09:10 -07:00
Feng Xiao
932f94e16e Update version number to 3.0.0-beta-4 2016-07-13 16:08:47 -07:00
Feng Xiao
9086d96439 Integrate from internal code base. 2016-07-13 13:48:40 -07:00
Otto Kekäläinen
3808d091f8 Fix spelling in strings and comments 2016-07-03 15:26:04 +03:00
chezRong
454dbf16fc added minified JSON formatting functionality with test 2016-07-01 10:08:16 +01:00
Adam Cozzette
d64a2d9941 Integrated internal changes from Google
This includes all internal changes from around May 20 to now.
2016-06-29 15:38:03 -07:00
Feng Xiao
a31d14b7d0 Describe platform requirements for the compatibility tests. 2016-05-20 15:15:15 -07:00
Feng Xiao
4f630a6857 Add compatiblity tests against v2.5.0 2016-05-17 15:13:59 -07:00
Jisi Liu
c8be6ee00c Merge pull request #1542 from google/beta-3
Merge Beta 3 release branch into master
2016-05-16 13:46:16 -07:00
Feng Xiao
09732c96ac Add compatibility notice for Java. 2016-05-11 16:22:30 -07:00
Jisi Liu
5dea2017db Update version numbers for other languages 2016-05-10 15:43:39 -07:00
Jisi Liu
dbed8a0154 Update version numbers for beta3 2016-05-10 14:49:42 -07:00
Jisi Liu
ce6bec74fd Remove accidentally restored deleted files. 2016-05-06 15:57:06 -07:00
Jisi Liu
12fdeb9b41 Merge branch 'master' of github.com:google/protobuf 2016-04-28 14:43:08 -07:00
Jisi Liu
cf14183bcd Down integrate from Google internal. 2016-04-28 14:34:59 -07:00
Jakub Kukul
db93833bc6 Added serialVersionUID to ExtendableMessage. 2016-04-22 16:04:27 +02:00
Jisi Liu
0de06f54bc Merge branch 'master' of github.com:google/protobuf 2016-03-30 11:43:44 -07:00
Jisi Liu
3b3c8abb96 Integrate google internal changes. 2016-03-30 11:39:59 -07:00
Pradeep Gollakota
4d98369f6d Allow custom URLs for Any in JsonFormat
- Using custom URL for types in Any will no longer throw an
InvalidProtocolBufferException in JsonFormat
- Fixes #1128
2016-03-18 23:06:14 -07:00
Dongjoon Hyun
7a9040fe7f Remove redundant the in comments. 2016-02-03 15:27:27 -08:00
Jisi Liu
defa25b38b Restore the license for Internal.java 2016-01-29 14:04:15 -08:00
Jisi Liu
1b8bab3a78 Uncomment the test, which was commented out during integration 2016-01-29 14:01:01 -08:00