-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
Update Ruby to 3.2.3 #2893
Update Ruby to 3.2.3 #2893
Conversation
Note that there was a request for a backport to version 16.7.x (#2872, #2886). I have made sure that it works on latest versions of both stable branch - 16.7.4 and 16.8.1 (cross tested with / without relative url in use on each version), but still not sure it solves these issues as the root cause is old kernel version (according to #2872 (comment) they uses Synology NAS based on linux kernel 3.10.108). Anyway, I can say these changes did not break current (my) installation. |
I'll have a crack a testing it on my Synology. I've already migrated my GitLab server to a barebones PC, so there's no danger to my data. |
Great work! |
Unfortunately, my test wasn't successful. The container got a lot farther than with Ruby 3.1, but in the end, it still failed. The container got through initialisation and database migrations, but then crashed in a different place, again with a
Thanks @kkimurak for giving this a try! |
@CDann3r If you test this on your Syno, beware that the container got through database migrations in my test. Now, I don't know if there actually were any migrations in 16.7 — but if there are, you may not be able to start 16.6 again. |
`Dir.exists?(file_name) -> bool` have been deprecated since Ruby 2.1 and removed on Ruby 3.2. See https://bugs.ruby-lang.org/issues/17391 Replacement is `Dir.exist?(file_name) -> bool`.
to suppress warning on build like below: Applying patch /etc/docker-gitlab/build/patches/0004-fix-raketask-gitlab-assets-compile.patch for gitlab-foss... <stdin>:15: trailing whitespace. removal_targets += Dir.children(Tasks::Gitlab::Assets::PUBLIC_ASSETS_DIR).map {|child| File.join(Tasks::Gitlab::Assets::PUBLIC_ASSETS_DIR, child)} warning: 1 line adds whitespace errors.
Changed the commit order because the commit that updates Ruby to 3.2.3 depends on the commit that fixes the patch in |
@kkimurak Since I demonstrated in #2872 that these changes plus your backport of 64e503e in ruby3.2.x-backport16.7.x-plus fixes the Synology issue, could you submit PRs of that branch and its 16.8-twin? GitLab came out with security patches today, and since releases are going to roll out soonish anyway, it might be an opportunity to kill two birds with one stone... |
Does this change also mean that the base Docker image can be upgraded from focal to jammy LTS? |
@asoluter Not sure. It is said that |
Hi, thanks for the PR. Regarding the question of upgrading from focal to a current release of the baseimage, we have to think about upgrading in the near feature since this release will be eol in april 2025 (see https://wiki.ubuntu.com/Releases). |
The version of ruby that used in development have been bumped to 3.2.2 (gitlab.com/gitlab-org/gitlab!140815) on GitLab v16.8.0 release, then bumped to 3.2.3 (gitlab.com/gitlab-org/gitlab!142295) on master (may not be included in any release, but will be in v16.8.2 I think).
There's no particular reason to choose 3.2.3 - it's the latest release, and the latest gitlab used it. If someone doesn't want to skip 3.2.2 or 3.2.1, I'll accept that suggestion.
(2024-02-08 edit)
Now this PR is based on #2895.
This PR contains following changes: