Brendan Ribera
05aa0df532
Fix hash computation for JRuby's RubyMessage
...
`System.identityHashCode` returns a hash that does not consider a
Message's values. This means two Messages with identical values will not
have identical hashCodes.
This patch uses the pattern from RubyMap to combine the hashCodes from
all values in a given message and produce a unique, consistent,
value-based hash.
8 years ago
Jisi Liu
6e11540b32
Bump version number to 3.0.2
8 years ago
Brendan Ribera
de028631fc
fix #2036 : use `rb_hash_*` to accumulate hashes
...
Instead of shifting/xoring the hash at each field, use the built-in ruby
apis for generating a hash from multiple input values.
Now returns a Fixnum.
8 years ago
Brendan Ribera
047419a172
failing test for #2036 :
...
* add a repeated field to the tested hash
* also assert that two messages with identical values produce identical hashes
8 years ago
Joshua Haberman
dd45c0b9fd
Merge pull request #2012 from haberman/rubymapgcfix
...
Ruby: make sure map parsing frames are GC-rooted.
8 years ago
Josh Haberman
3a674ffe05
upb bugfix: JSON map entry keys were passing the wrong closure.
8 years ago
Josh Haberman
d4213d839f
Ruby: make sure map parsing frames are GC-rooted.
8 years ago
Nicolas Noble
866d3e5327
Fixing regular expression...
...
This will allow loading the extension for Ruby 2.1.10...
8 years ago
Josh Haberman
3cec2ea8d6
Ruby: added custom Struct exception type and fixed Makefile.am.
8 years ago
Josh Haberman
a207a2bd00
Fix for JRuby (assert_true is not present).
8 years ago
Josh Haberman
e3094a8d80
Ruby: added API support for well-known types.
8 years ago
Josh Haberman
6d92233e72
Added unit test for PascalCasing package names in Ruby.
8 years ago
Jisi Liu
0973822d03
remove extra zeros.
8 years ago
Jisi Liu
5a6c921217
Make jruby still depend on beta-4
8 years ago
Jisi Liu
fb7a7c5f1f
Bump version number for GA
8 years ago
Josh Haberman
4f19797baf
Ruby: generated foo.proto -> foo_pb.rb instead of foo.rb.
...
This brings us more into line with other langauges, and makes it more
obvious when we are requiring protobuf generated code.
8 years ago
Josh Haberman
d07a9963df
Ruby: fixed string freezing for JRuby.
8 years ago
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
8 years ago
Josh Haberman
ff7f68ae9f
Ruby: encode and freeze strings when the are assigned or decoded.
8 years ago
Feng Xiao
932f94e16e
Update version number to 3.0.0-beta-4
8 years ago
Otto Kekäläinen
3808d091f8
Fix spelling in strings and comments
9 years ago
Josh Haberman
2d514ce2d8
Fixed oneof behavior for enums and fixed JRuby.
9 years ago
Josh Haberman
545527e8cf
Ruby oneofs: return default instead of nil for unset fields.
9 years ago
Jisi Liu
5dea2017db
Update version numbers for other languages
9 years ago
Nicolas "Pixel" Noble
edd29498f4
Properly generating well known proto files for the macos build.
9 years ago
Nicolas "Pixel" Noble
236b93937f
Addressing concerns.
9 years ago
Nicolas "Pixel" Noble
1f8b6da920
Few tweaks to the rakefile to permit native gems compilation with the proto files generation.
9 years ago
Adam Cozzette
bbb68fe63d
Added dig and bsearch_index to RepeatedField methods forwarded to array
...
This fixes the test_acts_likes_an_array test in RepeatedFieldTest, which
checks that repeated fields respond to the same methods as regular Ruby
arrays. The bsearch_index and dig array methods seem to be new in Ruby
2.3 and so we should support those.
9 years ago
Josh Haberman
d419ca10b4
Updated upb and simplified ruby code a bit with new upb method.
9 years ago
Josh Haberman
e67ef3d449
Bugfix for JSON error case.
9 years ago
Josh Haberman
800e986012
Remove no longer applicable documentation from README.md.
9 years ago
Josh Haberman
194ad621bb
Ruby JSON: always accept both camelCase and original field names.
...
For JSON encoding we provide a new option to decide at
encode time whether to use camelCase or original proto field
names:
json = MapMessage.encode_json(m, :preserve_proto_fieldnames => true)
9 years ago
Josh Haberman
90c7f6e55e
Documented the JSON change and compatibility flags.
9 years ago
Josh Haberman
94e54b39c8
Updated upb: picked up legacy JSON flags to help Ruby users migrate.
...
The flags are:
UPB_JSON_ACCEPT_LEGACY_FIELD_NAMES
UPB_JSON_WRITE_LEGACY_FIELD_NAMES
The first just allows the parser to accept the old field names.
The second makes the printer print the old field names.
These flags are intended to be temporary, as a migration aid
for users.
9 years ago
Josh Haberman
513875da77
Generate well-known types in Ruby extension and prune unneeded proto2 dependencies.
9 years ago
Josh Haberman
f654d49dd6
Updated upb from latest changes.
9 years ago
Josh Haberman
78da66698b
Changed Ruby to properly camelCase its JSON by default.
9 years ago
Josh Haberman
69ac430c02
Removed 'optional' from proto3 syntax file.
9 years ago
Nicolas "Pixel" Noble
bbb188acdd
Actually enabling cross compilation.
9 years ago
Nicolas "Pixel" Noble
4e141bb3b8
Removing usage of git - not everyone grabs the gem using it.
9 years ago
Josh Haberman
70a4b03086
Add rake-compiler-dock as a dep.
9 years ago
Josh Haberman
af4aa9bd64
Added support for binary gems.
9 years ago
Dongjoon Hyun
7a9040fe7f
Remove redundant `the` in comments.
9 years ago
Josh Haberman
fc7f8d9cd0
Fixed Ruby conformance tests by running them under rvm Ruby.
9 years ago
Josh Haberman
bf50ec4ac9
Added debugging output to debug type= problem on Travis.
9 years ago
Josh Haberman
e891c29f9b
Allow conformance test runner to tolerate crashes, and re-enable conformance tests.
9 years ago
Feng Xiao
8675989bf7
Disable conformance tests for csharp and ruby.
...
The testee program of these two languages crashes on some test input.
9 years ago
Feng Xiao
aa7e17a6f6
Update version numbers.
...
Version number for beta languages is updated to v3.0.0-beta-2.
Version number for alpha languages is updated to v3.0.0-alpha-5.
9 years ago
Anders Carling
3a5f213cca
Invoke super implementation instead of raising error
9 years ago
Anders Carling
0559f3ee9e
Add field name to initialization map exceptions
9 years ago