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 CentOS stream9 #3866

Draft
wants to merge 20 commits into
base: master
Choose a base branch
from
Draft

[WIP] Upgrade to CentOS stream9 #3866

wants to merge 20 commits into from

Conversation

mayorova
Copy link
Contributor

@mayorova mayorova commented Aug 14, 2024

Based on #3847

The corresponding builder image is: 3scale/system-builder#41

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.
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
```
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)
```
@@ -109,7 +107,7 @@ ENV THINKING_SPHINX_ADDRESS=0.0.0.0 \
SECRET_KEY_BASE=dummy \
DATABASE_URL='mysql2://root:@localhost/porta'
USER 0
RUN dnf install -y mysql-server mysql-test \
RUN dnf install --enablerepo=crb -y mysql-server mysql-test \
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is this for?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

mysql package is in this repo that is available but not enabled by default

@mayorova mayorova force-pushed the ruby-3.1 branch 4 times, most recently from 52431d5 to 1de699d Compare September 19, 2024 09:38
Base automatically changed from ruby-3.1 to master September 19, 2024 12:15
Copy link

This PR is stale because it has not received activity for more than 30 days. Remove stale label or comment or this will be closed in 15 days.

@github-actions github-actions bot added the Stale label Oct 20, 2024
@github-actions github-actions bot closed this Nov 5, 2024
@akostadinov akostadinov removed the Stale label Nov 5, 2024
@akostadinov akostadinov reopened this Nov 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants