Commit Graph

3772 Commits

Author SHA1 Message Date
Joshua Haberman
44bd6bda58 Merge pull request #1821 from haberman/rubyfreezestr
Ruby: encode and freeze strings when the are assigned or decoded.
2016-07-25 10:09:15 -07:00
Josh Haberman
d07a9963df Ruby: fixed string freezing for JRuby. 2016-07-25 01:26:14 -07:00
Feng Xiao
9e3c98f17b Fix maven path.
Change-Id: I252d7a644a9e4064a9f1a816a2be3f25f37b4c43
2016-07-23 19:43:03 -07:00
Sergio Campama
3a1259cb45 Correctly sets the generate_for_named_framework option after parsing.
- Also updates the documentation with a bit more information.
2016-07-23 21:37:53 -04:00
Feng Xiao
0622030332 Merge pull request #1830 from xfxyjwf/travis
Remove linux tests from travis.
2016-07-23 00:39:28 +00:00
Feng Xiao
1b3796c890 Merge pull request #1829 from xfxyjwf/fixcpp
Fix sign-comparison warnings and add a test for that.
2016-07-23 00:24:07 +00:00
Feng Xiao
fdd970e4ed Fix maven links.
[ci skip]

Change-Id: Ibefbdf441d932c5751235c635244450d7cbacc53
2016-07-22 16:24:52 -07:00
Feng Xiao
9702b9f785 Keep cpp_distcheck on travis for now.
When it runs in parallel with other jenkins tests, multiple tests start
to fail probably because cpp_distcheck will update the C++ lib that
other tests (such as python_cpp) are depending on.

Change-Id: Ibca0243084bb6b81c811b62c75288e20cc2aabf5
2016-07-22 16:04:11 -07:00
Feng Xiao
c2ced9ad48 Remove linux tests from travis.
These tests are already covered by jenkins and right now jenkins can
finish these tests much quicker then travis.

Change-Id: I5799761ccc338211d750940e3cf4c8e2569c8144
2016-07-22 14:57:28 -07:00
Feng Xiao
9009662b71 Fix sign-comparison warnings in public header files. 2016-07-22 21:41:17 +00:00
Feng Xiao
16adea3ddc Add a test to catch sign-comparison warnings.
grpc build treates them as errors and such issues (protobuf change
breaks grpc) has been reported repeatedly. For example:
  https://github.com/google/protobuf/issues/1813

Change-Id: I077c4557cf3effd5195f88802c38999b884edc30
2016-07-22 14:15:40 -07:00
Feng Xiao
4ddaad4f3a Merge pull request #1825 from xfxyjwf/jenkins2
Add more tests to jenkins.
2016-07-22 21:02:46 +00:00
Feng Xiao
de5236dc9f Merge pull request #1828 from sergiocampama/framework
Fixes the parsing of the proto-framework map file.
2016-07-22 20:51:13 +00:00
Sergio Campama
2ff93494a7 Fixes the parsing of the proto-framework map file.
- Fixes memory issue where the pointer to the StringPiece would be allocated on the stack, and would mangle the output.
 - Fixes length of the file name when parsing the comma separated files.
2016-07-22 12:56:36 -04:00
Feng Xiao
20fbb357d0 Add more tests to jenkins.
1. Added ruby22 and jruby tests to jenkins.
2. Added javascript tests to jenkins.
3. Added golang tests to jenkins.
4. Removed ruby19/ruby20 tests from travis. Support for ruby 2.0 has
   ended since 2016/02/24.
   https://www.ruby-lang.org/en/news/2016/02/24/support-plan-of-ruby-2-0-0-and-2-1/

Change-Id: Ie984b06772335352a4be7067ab2485f923875685
2016-07-21 18:11:12 -07:00
Feng Xiao
2ba058c66c Merge pull request #1822 from xfxyjwf/java6
Update travis tests for Java.
2016-07-21 21:03:55 +00:00
Josh Haberman
ff7f68ae9f Ruby: encode and freeze strings when the are assigned or decoded. 2016-07-21 11:37:54 -07:00
Feng Xiao
ad49ed78f3 Update travis tests for Java.
1. Set JAVA_HOME so mvn can pick up the correct java version.
2. Remove jdk6 tests. It has been broken for a while and remain undetected as
   mvn is actually using java 7 to build the code. Given that we have
   set -source and -target to 6 in the pom.xml and the built .jar
   should be usable by java 6, having a dedicated java 6 test doesn't
   seem necessary (assuming very few Java 6 users want to compile protobuf
   Java from source).

Change-Id: I4f14da772632df3e47801f180198242b306c3f0f
2016-07-21 11:37:46 -07:00
Feng Xiao
30d8416c1c Merge pull request #1811 from xfxyjwf/fixdist
Add missing files in EXTRA_DIST and add a test.
2016-07-20 20:54:27 +00:00
Feng Xiao
a4f68b16a0 Add missing files in EXTRA_DIST and add a test.
Change-Id: If80725402173cdf50969cb08e7fe5affe3532fb2
2016-07-20 13:53:44 -07:00
Feng Xiao
af8732ec11 Merge pull request #1810 from xfxyjwf/versioning
Versioning Java GeneratedMessage class
2016-07-20 20:52:21 +00:00
Jon Skeet
e465f26310 Merge pull request #1812 from jskeet/fix-travis
Use the dotnet-release package feed for Travis.
2016-07-20 11:32:33 -07:00
Joshua Haberman
dd3d9d65e5 Merge pull request #1447 from seishun/defaults
JavaScript: Make implicit defaults consistent with explicit defaults
2016-07-20 10:43:21 -07:00
Nikolai Vavilov
73e0b49272 fix debug.dump 2016-07-20 17:11:04 +03:00
Jon Skeet
deaea21315 Use the dotnet-release package feed for Travis.
See https://github.com/dotnet/core/issues/227 for background.
2016-07-19 17:57:46 -07:00
Feng Xiao
60cb094b7b Add files missing from "make dist".
Change-Id: I56a6cce613462794f172ff2e62b25d8a9fc162f3
2016-07-19 16:15:42 -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
Nikolai Vavilov
e4b129f304 restore old behavior for toObject 2016-07-19 10:34:58 +03:00
Nikolai Vavilov
db1b2a06e3 nits 2016-07-19 09:39:52 +03:00
Nikolai Vavilov
970a4fda17 Make implicit defaults consistent with explicit defaults 2016-07-19 09:39:52 +03:00
Joshua Haberman
77b08afaf8 Merge pull request #1802 from haberman/jsmapbin
JavaScript: segregate references to binary functionality
2016-07-18 22:52:07 -07:00
Josh Haberman
e0e7377119 Fix goog.require()/goog.provide() ordering. 2016-07-18 20:49:11 -07:00
Feng Xiao
24ac9c0cb4 Merge pull request #1803 from xfxyjwf/javadoc
Include javadoc/source in Java release packages.
2016-07-19 00:06:01 +00: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
Josh Haberman
7429b91eda JavaScript: move extension binary info to separate struct. 2016-07-18 15:58:58 -07:00
Feng Xiao
2078f614e4 Merge remote-tracking branch 'origin/3.0.0-beta-4' 2016-07-18 14:57:47 -07:00
Josh Haberman
923eae8b16 JavaScript maps: move binary callbacks out of constructor.
This change will help us separate binary support into
separate files, because we only refer to binary serialization
functions in the actual binary serialization paths.
2016-07-18 14:46:12 -07:00
Feng Xiao
56855f6f00 Merge pull request #1792 from xfxyjwf/changelog
Added 3.0.0-beta-4 changelog.
2016-07-18 18:08:18 +00:00
Feng Xiao
82b43d1f41 Remove Java deterministic API.
Change-Id: I43f7e04a53d1445dfa86db310bdb18ceb446398c
2016-07-18 10:36:04 -07:00
Thomas Van Lenten
b6a620da13 Merge pull request #1801 from thomasvl/oneof_framework_build_issues
Use public methods to fetch oneofs in generated code.
2016-07-18 13:01:35 -04:00
Thomas Van Lenten
2e98ed5d17 Use public methods to fetch oneofs in generated code.
When building into frameworks, the generated code doesn't always have direct
access to the proto internals.  Instead of opening up the access, just use the
public method to fetch the correct oneof.

Fixes https://github.com/google/protobuf/issues/1789
2016-07-18 11:10:02 -04:00
Feng Xiao
3d9726f919 Mention Java lite in the changelog.
Change-Id: Ic07a7c664930209974244c66885d672288982610
2016-07-15 15:26:44 -07:00
Sergio Campamá
b99577c5ac Exposes the currently registered extensions for a message and removes the internal sortedExtensionsInUse 2016-07-15 18:04:01 -04:00
Sergio Campamá
f6d1d1a17e Uses head version of rvm to avoid shell_update_session not found error (#1791)
Uses head version of rvm to avoid shell_update_session not found error

Fixes #1786
2016-07-15 16:59:09 -04:00
Feng Xiao
1349fb8b14 Added 3.0.0-beta-4 changelog.
Change-Id: I997012e7e9b58d9ec8b2f59429d71c98d81aa40d
2016-07-15 12:19:15 -07:00
Feng Xiao
3a8d8ead4f Merge pull request #1787 from xfxyjwf/steppingstone
Fix compatibility issues for the future GeneratedMessageV3 change.
2016-07-15 11:45:56 -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
0b6825516b Add missing golden test file. 2016-07-14 15:21:10 -07:00
Jon Skeet
e1f146bc4f Merge pull request #1785 from jskeet/merge-csharp
Merge C# changes from master to 3.0.0-beta4
2016-07-14 22:44:49 +01:00