Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for extensions in CRuby, JRuby, and FFI Ruby #14703

Closed
wants to merge 47 commits into from

Commits on May 16, 2023

  1. Configuration menu
    Copy the full SHA
    d5ed3dd View commit details
    Browse the repository at this point in the history

Commits on May 17, 2023

  1. Configuration menu
    Copy the full SHA
    71f7226 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    04758ed View commit details
    Browse the repository at this point in the history

Commits on May 18, 2023

  1. Configuration menu
    Copy the full SHA
    188f456 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    730fb06 View commit details
    Browse the repository at this point in the history

Commits on May 22, 2023

  1. Configuration menu
    Copy the full SHA
    10b3e2b View commit details
    Browse the repository at this point in the history

Commits on Nov 1, 2023

  1. Merge remote-tracking branch 'jsteinberg/add-support-for-options-in-r…

    …uby' into add-support-for-options-in-ruby
    JasonLunn committed Nov 1, 2023
    Configuration menu
    Copy the full SHA
    018f8a7 View commit details
    Browse the repository at this point in the history

Commits on Nov 2, 2023

  1. Implement serialized_options and for JRuby Descriptor classes and `…

    …internal_deep_freeze` for JRuby message classes.
    JasonLunn committed Nov 2, 2023
    Configuration menu
    Copy the full SHA
    eb67c03 View commit details
    Browse the repository at this point in the history
  2. Implement serialized_options and for FFI Descriptor classes and `in…

    …ternal_deep_freeze` for FFI message classes.
    JasonLunn committed Nov 2, 2023
    Configuration menu
    Copy the full SHA
    8295112 View commit details
    Browse the repository at this point in the history

Commits on Nov 6, 2023

  1. Configuration menu
    Copy the full SHA
    9ae6d12 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4267873 View commit details
    Browse the repository at this point in the history
  3. Cleanups.

    JasonLunn committed Nov 6, 2023
    Configuration menu
    Copy the full SHA
    04ff516 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    1de6d8b View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    1f15ddb View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    b7b1955 View commit details
    Browse the repository at this point in the history

Commits on Nov 7, 2023

  1. Move implementation of options from Ruby to C.

    Don't expose `internal_deep_freeze`, even as a private method.
    JasonLunn committed Nov 7, 2023
    Configuration menu
    Copy the full SHA
    887ab6b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7830f55 View commit details
    Browse the repository at this point in the history
  3. Fix test assertions that swapped expected and actual by using ass…

    …ertion specific to class instance.
    JasonLunn committed Nov 7, 2023
    Configuration menu
    Copy the full SHA
    33f6236 View commit details
    Browse the repository at this point in the history
  4. Refactor JRuby implementation of serialized_options into options.

    Don't expose `internal_deep_freeze` under JRuby, even as private method.
    JasonLunn committed Nov 7, 2023
    Configuration menu
    Copy the full SHA
    5b52c3a View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    7ce6d7f View commit details
    Browse the repository at this point in the history
  6. Remove extraneous import.

    JasonLunn committed Nov 7, 2023
    Configuration menu
    Copy the full SHA
    73dfef7 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    957654f View commit details
    Browse the repository at this point in the history
  8. Remove extraneous import.

    JasonLunn committed Nov 7, 2023
    Configuration menu
    Copy the full SHA
    1c86a90 View commit details
    Browse the repository at this point in the history
  9. Merge branch 'add-support-for-options-in-ruby' into add-support-for-e…

    …xtensions-in-ruby
    
    # Conflicts:
    #	ruby/ext/google/protobuf_c/message.c
    #	ruby/tests/basic.rb
    JasonLunn committed Nov 7, 2023
    Configuration menu
    Copy the full SHA
    a360e61 View commit details
    Browse the repository at this point in the history

Commits on Nov 8, 2023

  1. Configuration menu
    Copy the full SHA
    49888ec View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3364054 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b09f3ef View commit details
    Browse the repository at this point in the history
  4. Fix test omission logic.

    JasonLunn committed Nov 8, 2023
    Configuration menu
    Copy the full SHA
    e134a7b View commit details
    Browse the repository at this point in the history
  5. Implement feedback from PR review:

    * Pass arena to glue functions.
    * Memoize `options` accessor.
    * Remove use of VLA.
    JasonLunn committed Nov 8, 2023
    Configuration menu
    Copy the full SHA
    6a230b1 View commit details
    Browse the repository at this point in the history
  6. Improve tests by:

    * Adding test coverage for `FieldOptions`
    * Handle case where fields are not materialized until after `freeze`
    JasonLunn committed Nov 8, 2023
    Configuration menu
    Copy the full SHA
    1f2c8ba View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    3beac3d View commit details
    Browse the repository at this point in the history
  8. Fix imports.

    JasonLunn committed Nov 8, 2023
    Configuration menu
    Copy the full SHA
    34b0dea View commit details
    Browse the repository at this point in the history
  9. Merge branch 'add-support-for-options-in-ruby' into add-support-for-e…

    …xtensions-in-ruby
    
    # Conflicts:
    #	ruby/lib/google/protobuf/ffi/descriptor_pool.rb
    JasonLunn committed Nov 8, 2023
    Configuration menu
    Copy the full SHA
    1b5c7f2 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    16cc9e3 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    0205c1d View commit details
    Browse the repository at this point in the history

Commits on Nov 9, 2023

  1. Merge remote-tracking branch 'upstream/main' into add-support-for-ext…

    …ensions-in-ruby
    
    # Conflicts:
    #	ruby/ext/google/protobuf_c/defs.c
    #	ruby/ext/google/protobuf_c/glue.c
    #	ruby/ext/google/protobuf_c/map.c
    #	ruby/ext/google/protobuf_c/message.c
    #	ruby/ext/google/protobuf_c/message.h
    #	ruby/lib/google/protobuf/ffi/descriptor_pool.rb
    #	ruby/src/main/java/com/google/protobuf/jruby/RubyDescriptor.java
    #	ruby/src/main/java/com/google/protobuf/jruby/RubyEnumDescriptor.java
    #	ruby/src/main/java/com/google/protobuf/jruby/RubyFieldDescriptor.java
    #	ruby/src/main/java/com/google/protobuf/jruby/RubyFileDescriptor.java
    #	ruby/src/main/java/com/google/protobuf/jruby/RubyMap.java
    #	ruby/src/main/java/com/google/protobuf/jruby/RubyMessage.java
    #	ruby/src/main/java/com/google/protobuf/jruby/RubyOneofDescriptor.java
    #	ruby/src/main/java/com/google/protobuf/jruby/RubyRepeatedField.java
    #	ruby/tests/basic.rb
    #	ruby/tests/basic_test.proto
    JasonLunn committed Nov 9, 2023
    Configuration menu
    Copy the full SHA
    547d922 View commit details
    Browse the repository at this point in the history
  2. Cleanup merge damage.

    JasonLunn committed Nov 9, 2023
    Configuration menu
    Copy the full SHA
    aa97ad8 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    c3831f4 View commit details
    Browse the repository at this point in the history
  4. Minimize diff

    JasonLunn committed Nov 9, 2023
    Configuration menu
    Copy the full SHA
    90b8611 View commit details
    Browse the repository at this point in the history
  5. Fix collision under GCC.

    JasonLunn committed Nov 9, 2023
    Configuration menu
    Copy the full SHA
    ce07601 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    4e2a235 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    bddc38a View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    193ce5e View commit details
    Browse the repository at this point in the history

Commits on Nov 10, 2023

  1. Configuration menu
    Copy the full SHA
    be8cf68 View commit details
    Browse the repository at this point in the history

Commits on Nov 14, 2023

  1. Address code review feedback:

    * Remove code generation changes for constants for extensions.
    * Remove code changes relating to syntax sugar.
    JasonLunn committed Nov 14, 2023
    Configuration menu
    Copy the full SHA
    d33847e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e5b9022 View commit details
    Browse the repository at this point in the history
  3. Restore static.

    JasonLunn committed Nov 14, 2023
    Configuration menu
    Copy the full SHA
    601aca4 View commit details
    Browse the repository at this point in the history