[OMBU-821] Upgrade to Ruby 3.3.12 - #18
Merged
Merged
Conversation
Ruby 3.1.7 blocked deploying to a current Heroku stack. Move to 3.3.12 in the Gemfile, both lockfiles, and both CI jobs. pg had to move from 1.2.3 to 1.6.3 as part of this: pg 1.2.3 uses rb_cData, which was removed from Ruby's C API in 3.2, so it cannot compile on any Ruby >= 3.2. The Gemfile constraint (>= 0.18, < 2.0) already allowed it, so only the lockfiles changed. 1.6.3 resolves to precompiled platform gems, including x86_64-linux for CI and Heroku. Verified on Ruby 3.3.12: bundle install clean and `bundle exec rake` green on both Gemfile (Rails 7.1.6) and Gemfile.next (Rails 7.2.3).
Update the stack from heroku-22 to heroku-26, the latest public stack (heroku-24 is still the API default). Ruby 3.3.12 binaries are available for heroku-24 and heroku-26 on both amd64 and arm64. The env vars were declared "required": true with no values, which means an unattended review app deploy has nothing to fill them with. Give them explicit values and generate SECRET_KEY_BASE instead. Also pin the Postgres plan explicitly to essential-0 (the current default; hobby-dev no longer exists) and add an environments.review section so review app provisioning is predictable. Note: this does not create review apps on its own. The repo still needs a Heroku pipeline with GitHub connected and review apps enabled.
The rails-next CI job runs `bundle update rails`, which re-resolves the whole tree and picked up minitest 6.0.6, failing before any test ran: railties-7.2.3/lib/rails/test_unit/line_filtering.rb:7:in `run': wrong number of arguments (given 3, expected 1..2) (ArgumentError) minitest 6 calls run_suite(reporter, options), but railties' LineFiltering only defines run(reporter, options). Rails handles both only from 8.0.5.1 and 8.1.2 onward; it was never backported to 7.1 or 7.2. Rails 7.2.3.2 caps minitest at "< 6" upstream, so the next job would also go green by bumping Rails. Rails 7.1.6 has no such cap, so the current job stays exposed on any re-resolve. Pin explicitly to cover both. Verified on Ruby 3.3.12: `bundle exec rake` green for Gemfile (7.1.6) and Gemfile.next (7.2.3), and for `bundle update rails` as CI runs it (7.2.3.2).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
from review app this is working