aboutsummaryrefslogtreecommitdiff
path: root/ruby/ext
Commit message (Collapse)AuthorAgeFilesLines
* Updated upb from latest changes.Josh Haberman2016-02-182-244/+133
|
* Changed Ruby to properly camelCase its JSON by default.Josh Haberman2016-02-185-416/+1151
|
* Merge pull request #1144 from dongjoon-hyun/remove_redundant_theJoshua Haberman2016-02-111-1/+1
|\ | | | | Remove redundant `the`.
| * Remove redundant `the` in comments.Dongjoon Hyun2016-02-031-1/+1
| |
* | Add field name to initialization map exceptionsAnders Carling2015-11-201-3/+3
| |
* | Raise NoMethodError for unknown fieldsAnders Carling2015-11-201-1/+1
|/ | | | More informative and more ruby-like
* A very small fix to silence some warnings.Josh Haberman2015-09-281-1/+3
| | | | | | | Also updated the Gemfile.lock since alpha-4 has been pushed to RubyGems. Change-Id: I8ddc5f125f28aa9a33c88dfe48251a75a877e1d3
* Merge pull request #584 from haberman/cwarningsJoshua Haberman2015-08-217-249/+354
|\ | | | | Ruby: Conform to C89/C90 variable declaration rules.
| * Return TypedData_Wrap_Struct directly.Josh Haberman2015-08-202-4/+2
| | | | | | | | Change-Id: I6cf77f01370204ad4bc7b345a040a9a3de1706a0
| * Conform to C89/C90 variable declaration rules.Josh Haberman2015-07-107-247/+354
| | | | | | | | | | | | | | | | | | | | | | | | While we are C99 in general, the Ruby build system for building C extensions enables several flags that throw warnings for C89/C90 variable ordering rules. To avoid spewing a million warnings (or trying to specifically override these warnings with command-line flags, which would be tricky and possibly fragile) we conform to Ruby's world of C89/C90. Change-Id: I0e03e62d95068dfdfde112df0fb16a248a2f32a0
* | Fixed several Ruby conformance test cases through upb update.Josh Haberman2015-08-122-108/+141
| | | | | | | | Change-Id: Ief77de7134e05e07b1a7e3970d49880c2d5e6fe9
* | Added Ruby to conformance tests.Josh Haberman2015-07-166-540/+486
| | | | | | | | | | | | | | | | | | | | | | | | | | This involved fixing a few important bugs in the Ruby implementation -- mostly cases of mixing upb field types and descriptor types (upb field types do not distinguish between int/sint/fixed/sfixed like descriptor types do). Also added protobuf-specific exceptions so parse errors can be caught specifically. Change-Id: Ib49d3db976900b2c6f3455c8b88af52cfb86e036
* | Worked around memory leak bug in Ruby interpreter.Josh Haberman2015-07-081-1/+13
|/ | | | | Change-Id: I8e2b425f9008e6b82d41d59783bb8b04af1f886f Fixes: https://github.com/google/protobuf/issues/474.
* Update upb to fix two bugs in the Ruby library.Josh Haberman2015-06-222-19/+54
| | | | | | Fixes: https://github.com/google/protobuf/issues/502 https://github.com/google/protobuf/issues/425
* Fixed compiler warnings and added -std=c99.Josh Haberman2015-06-092-10/+7
| | | | | upb no longer requires -std=c99 but the Ruby/C code still uses C99 features.
* Updated upb to latest version (C89).Josh Haberman2015-06-084-5473/+5849
| | | | | Since this version of upb supports C89, all of the extra compiler flags are no longer required.
* Ruby C extension speedup: don't re-intern constant string needlessly.Chris Fallin2015-05-197-29/+45
| | | | Also fixed lines with > 80 char length.
* Merge pull request #387 from cfallin/ruby-upb-updateJoshua Haberman2015-05-186-749/+1408
|\ | | | | Update MRI C Ruby extension to use new version of upb (with upb_env).
| * Update MRI C Ruby extension to use new version of upb.Chris Fallin2015-05-156-749/+1408
| | | | | | | | | | | | | | | | | | - Alter encode/decode paths to use the `upb_env` (environment) abstraction. - Update upb amalgamation to upstream `93791bfe`. - Fix a compilation warning (void*->char* cast). - Modify build flags so that upb doesn't produce warnings -- the Travis build logs were pretty cluttered previously.
* | Merge pull request #338 from skippy/encode-decode-helpersChris Fallin2015-05-154-59/+32
|\ \ | |/ |/| ruby: Encode decode cleanup and behavior normalization
| * adding and simplifying encoders/decodersAdam Greene2015-05-134-59/+32
| | | | | | | | | | | | * make consistent between mri and jruby * create a #to_h and have it use symbols for keys * add #to_json and #to_proto helpers on the Google::Protobuf message classes
* | make repeated_field quack like an arrayAdam Greene2015-05-142-49/+80
|/
* Merge pull request #334 from skippy/allow-msg-to-accept-nilChris Fallin2015-05-021-1/+3
|\ | | | | ruby: allow a message field to be unset
| * allow a message field to be unsetAdam Greene2015-05-021-1/+3
| |
* | return nil if array index indicie is out of boundsAdam Greene2015-05-011-6/+14
|/ | | | | | | ruby arrays don't throw an exception; they return nil. Lets do the same! this fix also includes the ability to use negative array indicies
* Fixed issue #283: crash in JSON handler cleanup.Chris Fallin2015-04-131-1/+1
| | | | Includes repro test case from @wfarr.
* Merge pull request #211 from isaiah/map_inspectChris Fallin2015-02-171-1/+1
|\ | | | | Ruby implementation Map#inspect should be consistent with Hash#inspect
| * Google::Protobuf::Map#inspect should be consistent with Hash#inspectIsaiah Peng2015-02-141-1/+1
| |
* | Addressed code-review comment.Chris Fallin2015-02-131-0/+4
| |
* | Properly support maps in Ruby protoc and another bugfix.Chris Fallin2015-02-121-13/+10
| | | | | | | | | | | | | | | | | | | | Previously, we supported map fields in the Ruby DSL. However, we never connected the final link in the chain and generated `map` DSL commands for map fields in `.proto` files. My apologies -- I had been testing with the DSL directly so I missed this. Also fixed a handlerdata-setup-infinite-loop when a map value field's type is its containing message.
* | Merge pull request #189 from cfallin/update-ruby-upbJoshua Haberman2015-02-052-104/+552
|\ \ | |/ |/| Updated to latest upb and added test for JSON map operation.
| * Updated to latest upb and added test for JSON map operation.Chris Fallin2015-02-022-104/+552
| |
* | Merge pull request #190 from isaiah/to_aryChris Fallin2015-02-031-31/+28
|\ \ | |/ |/| add #to_ary to RepeatedField
| * add #to_ary to RepeatedFieldIsaiah Peng2015-02-031-31/+28
| |
* | Updated based on code-review comments.Chris Fallin2015-02-021-2/+1
| |
* | Updated based on code-review comments.Chris Fallin2015-02-023-16/+51
| |
* | Addressed code-review comments.Chris Fallin2015-01-262-12/+26
| |
* | Addressed code-review comments.Chris Fallin2015-01-263-7/+12
| |
* | Ruby extension: added oneof accessor.Chris Fallin2015-01-142-1/+47
| |
* | Addressed code-review comments.Chris Fallin2015-01-144-58/+65
| |
* | Support oneofs in MRI Ruby C extension.Chris Fallin2015-01-147-233/+1748
|/
* Addressed code-review comments.Chris Fallin2015-01-122-23/+14
|
* Update upb amalgamation.Chris Fallin2015-01-092-400/+747
|
* Addressed code-review comments.Chris Fallin2015-01-096-135/+72
|
* Addressed code-review comments.Chris Fallin2015-01-066-32/+59
|
* Support for maps in the MRI C Ruby extension.Chris Fallin2015-01-0611-161/+1617
| | | | | | | | This adds the Map container and support for parsing and serializing maps in the protobuf wire format (as defined by the C++ implementation, with MapEntry submessages in a repeated field). JSON map serialization/parsing are not yet supported as these will require some changes to upb as well.
* Rename protobuf Ruby module to google/protobuf and rework its buildChris Fallin2014-12-1211-32/+17528
| | | | | | system. The Ruby module build now uses an amalgamated distribution of upb, and successfully builds a Ruby gem called 'google-protobuf' with module 'google/protobuf'.
* Provide a Ruby extension.Chris Fallin2014-12-098-0/+4207
This adds a Ruby extension in ruby/ that is based on the 'upb' library (now included as a submodule), and adds support for Ruby code generation to the protoc compiler.