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

[WIP] Upgrade to Ruby 3.3 #3864

Closed
wants to merge 19 commits into from
Closed

[WIP] Upgrade to Ruby 3.3 #3864

wants to merge 19 commits into from

Commits on Aug 8, 2024

  1. Configuration menu
    Copy the full SHA
    9a474c3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5848e18 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    9e52e4b View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    7125999 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    b34c862 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    16b4b75 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    fa4783c View commit details
    Browse the repository at this point in the history
  8. Fix decorators by making methods non-private

    The issue was caused by `draper` gem upgrade (which was a result of
    upgrading Ruby to v3). The issue was here:
    https://github.com/drapergem/draper/blob/v4.0.2/lib/draper/automatic_delegation.rb#L10-L26
    
    In decorators we delegate all methods to the decorated object. But this version of the library
    only does that when there is no private method with the same name on the decorator.
    In this case, as `admin_user`  was a private method on AccountDecorator, draper tried to call
    `admin_user `on superclass, but it was not there, so it was failing with:
    ```
    ActionView::Template::Error (super: no superclass method `admin_user' for #<AccountDecorator:0x00007f8784266d18
      @object=#<Account id: 11, org_name: "Testing" ...> Did you mean? admin_user_email):
    ```
    
    Removing it from `private_methods` fixed the issue.
    mayorova committed Aug 8, 2024
    Configuration menu
    Copy the full SHA
    a1ca3c4 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    f9c3e4f View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    51fc075 View commit details
    Browse the repository at this point in the history
  11. Skip the test using fibers

    This test caused multiple tests fail with:
    ```
    ThreadError: deadlock; lock already owned by another fiber belonging to the same thread
    ```
    
    This is fixed in Rails 7.0.6 and higher: rails/rails#46553
    mayorova committed Aug 8, 2024
    Configuration menu
    Copy the full SHA
    e088b15 View commit details
    Browse the repository at this point in the history
  12. Fix deprecation warning for fixture_file_upload

    ```
    DEPRECATION WARNING: Passing a path to `fixture_file_upload` relative to `fixture_path` is deprecated.
    In Rails 7.0, the path needs to be relative to `file_fixture_path`.
    
    Please modify the call from
    `fixture_file_upload("wide.jpg")` to `fixture_file_upload("../../../test/fixtures/wide.jpg")`.
     (called from block (4 levels) in <main> at /home/dmayorov/Projects/3scale/porta/spec/acceptance/api/cms_file_spec.rb:24)
    ```
    mayorova committed Aug 8, 2024
    Configuration menu
    Copy the full SHA
    910e7c4 View commit details
    Browse the repository at this point in the history
  13. Remove URL hacks for Liquid

    mayorova committed Aug 8, 2024
    Configuration menu
    Copy the full SHA
    42e3638 View commit details
    Browse the repository at this point in the history
  14. Remove an unused Dockerfile

    mayorova committed Aug 8, 2024
    Configuration menu
    Copy the full SHA
    a16294a View commit details
    Browse the repository at this point in the history
  15. Add 'matrix' gem required by current versions of prawn and capybara gems

    It used to be a default gem in Ruby 2.7, but since Ruby 3 it's not
    default anymore
    mayorova committed Aug 8, 2024
    Configuration menu
    Copy the full SHA
    e3de2ef View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    408c8d5 View commit details
    Browse the repository at this point in the history
  17. Update decorators

    mayorova committed Aug 8, 2024
    Configuration menu
    Copy the full SHA
    8f37e9b View commit details
    Browse the repository at this point in the history
  18. Update billing service

    mayorova committed Aug 8, 2024
    Configuration menu
    Copy the full SHA
    9bd6ed4 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    a26ee23 View commit details
    Browse the repository at this point in the history