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 FFI while leaving legacy implementations intact #11483

Closed
wants to merge 58 commits into from

Commits on Jul 7, 2023

  1. branch to support FFI

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    394321f View commit details
    Browse the repository at this point in the history
  2. restore protobuf.rb

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    11fcd23 View commit details
    Browse the repository at this point in the history
  3. native implementation

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    09a7114 View commit details
    Browse the repository at this point in the history
  4. restore protobuf.rb

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    1e50c8b View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    6cc806c View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    dfc7dbb View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    fb395f8 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    d9767ca View commit details
    Browse the repository at this point in the history
  9. Add FFI implementation

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    3792576 View commit details
    Browse the repository at this point in the history
  10. Add ffi flags

    mkruskal-google authored and JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    589629d View commit details
    Browse the repository at this point in the history
  11. Refactor convert.c to separate CRuby-specific glue that has dependenc…

    …ies on Ruby headers from functionality needed by FFI.
    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    2ec3aa3 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    a5ff141 View commit details
    Browse the repository at this point in the history
  13. Refactor message.c to separate CRuby-specific glue that has dependenc…

    …ies on Ruby headers from functionality needed by FFI.
    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    cec7850 View commit details
    Browse the repository at this point in the history
  14. Have shared_convert methods invoke shared_message methods directly.

    Add `ifndef` armor around shared_convert.h.
    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    4734f34 View commit details
    Browse the repository at this point in the history
  15. branch to support FFI

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    55cd7fe View commit details
    Browse the repository at this point in the history
  16. restore protobuf.rb

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    2f3838b View commit details
    Browse the repository at this point in the history
  17. native implementation

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    c8656c4 View commit details
    Browse the repository at this point in the history
  18. restore protobuf.rb

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    1c19455 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    f461e72 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    1b1e64e View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    4cbcd56 View commit details
    Browse the repository at this point in the history
  22. Stop ignoring shared source files; ignore FFI Compiler output directo…

    …ry and protoc outputs instead.
    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    5d71437 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    b402119 View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    f7083f1 View commit details
    Browse the repository at this point in the history
  25. Relocate shared files.

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    039af51 View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    8607cda View commit details
    Browse the repository at this point in the history
  27. Create glue.

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    1a716c0 View commit details
    Browse the repository at this point in the history
  28. Fix unit tests.

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    e7240f8 View commit details
    Browse the repository at this point in the history
  29. Rebase

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    8f95755 View commit details
    Browse the repository at this point in the history
  30. restore protobuf.rb

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    1dff209 View commit details
    Browse the repository at this point in the history
  31. Rebase

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    f4c08b2 View commit details
    Browse the repository at this point in the history
  32. restore protobuf.rb

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    e32280e View commit details
    Browse the repository at this point in the history
  33. Rebase

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    536f9b3 View commit details
    Browse the repository at this point in the history
  34. Configuration menu
    Copy the full SHA
    c665a79 View commit details
    Browse the repository at this point in the history
  35. Configuration menu
    Copy the full SHA
    78a2928 View commit details
    Browse the repository at this point in the history
  36. Rebase

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    a7aa7aa View commit details
    Browse the repository at this point in the history
  37. Rebase

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    bcc6f6c View commit details
    Browse the repository at this point in the history
  38. Refactor message.c to separate CRuby-specific glue that has dependenc…

    …ies on Ruby headers from functionality needed by FFI.
    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    8336d0a View commit details
    Browse the repository at this point in the history
  39. Have shared_convert methods invoke shared_message methods directly.

    Add `ifndef` armor around shared_convert.h.
    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    88f1506 View commit details
    Browse the repository at this point in the history
  40. Fix merge damage

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    3089818 View commit details
    Browse the repository at this point in the history
  41. Configuration menu
    Copy the full SHA
    95c4535 View commit details
    Browse the repository at this point in the history
  42. Address PR feedback.

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    0286c71 View commit details
    Browse the repository at this point in the history
  43. Cleanup debug print.

    JasonLunn committed Jul 7, 2023
    Configuration menu
    Copy the full SHA
    2fd1eac View commit details
    Browse the repository at this point in the history

Commits on Jul 10, 2023

  1. Revert changes to ruby-upb.h.

    Remove uses of _upb_Hash directly from Ruby.
    JasonLunn committed Jul 10, 2023
    Configuration menu
    Copy the full SHA
    3d1d1fe View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0d575d5 View commit details
    Browse the repository at this point in the history
  3. Update to the new Ruby-native ObjectCache.

    Drop test sources from the gemspec which was breaking tests.
    JasonLunn committed Jul 10, 2023
    Configuration menu
    Copy the full SHA
    8920f9d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    72d6ee8 View commit details
    Browse the repository at this point in the history

Commits on Jul 12, 2023

  1. Introduce a new test that the expected implementation is used.

    Make tests executable from bazel and rake.
    JasonLunn committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    a3eb317 View commit details
    Browse the repository at this point in the history
  2. Merge remote-tracking branch 'upstream/main' into simultaneous_ffi

    # Conflicts:
    #	ruby/google-protobuf.gemspec
    JasonLunn committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    bc87afb View commit details
    Browse the repository at this point in the history

Commits on Jul 13, 2023

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

Commits on Jul 14, 2023

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

Commits on Jul 15, 2023

  1. Move most calls to attach_function out of ffi.rb.

    Allows reordering of `require` statements in `protobuf_ffi.b` so that failed attempts load `ffi/ffi.rb` can be recovered in `protobuf.rb` without having to undo constant definitions when falling back from FFI to native implementations.
    JasonLunn committed Jul 15, 2023
    Configuration menu
    Copy the full SHA
    e28e256 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    55f2884 View commit details
    Browse the repository at this point in the history
  3. Merge remote-tracking branch 'upstream/main' into simultaneous_ffi

    # Conflicts:
    #	protobuf_deps.bzl
    JasonLunn committed Jul 15, 2023
    Configuration menu
    Copy the full SHA
    03a32da View commit details
    Browse the repository at this point in the history

Commits on Jul 16, 2023

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

Commits on Jul 17, 2023

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

Commits on Jul 18, 2023

  1. Make all interpreters opt-in for FFI.

    Rename `backend.rb` to `implementation.rb`.
    JasonLunn committed Jul 18, 2023
    Configuration menu
    Copy the full SHA
    839a3d7 View commit details
    Browse the repository at this point in the history