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
Portable Ruby 3.1.4 (opt-in beta) #16145
Conversation
Once we get to the rollout stage it would probably be good to ship this in the macOS package too. |
almost every command failing for me with the same error:
Works if I disable bootsnap:
Fine if I delete bootsnap files in the cache and re-enable bootsnap. I have an unusual multi-user/group writable permission setup right now and seeing some permission weirdness around I've opened a PR in #16147 (which could be merged in here instead, if desired) to provide a |
Ah, that looks to be the same error we saw with Ruby's own builds in ruby/setup-ruby. We can probably change the Bootsnap cache to be
If you have more info, it's worth opening an issue about it - it likely also happens with |
Another (potentially easier) option: just nuke the cache whenever we install a new Ruby version.
I'll reach out to you on Slack but I think #16147 or similar would be sufficient for me to proceed. |
@SMillerDev To do this: we'll need to sign all the portable Ruby binaries. |
990311e
to
f4e67c6
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me 👍🏻
f4e67c6
to
979eed7
Compare
Great work @Bo98 |
Adds a
HOMEBREW_RUBY3
variable that enables Portable Ruby 3.1.4.This is opt-in, disabled by default. Over the coming weeks we can enable this by default in increasing audiences. Once it is rolled out to everyone, then we can drop Ruby 2.6 support, update dependencies, and then update RuboCop to target a 3.1 minimum (in that order).
At some point we will also need to vendor Ruby 3.1 gems, and we will need to decide when that is. Expect 0.75-1s slower startup times under Ruby 3 until that happens.
I'm intentionally not enabling this by default for anyone in this PR because:
HOMEBREW_DEVELOPER
is still a big change as that affects all of homebrew-core and homebrew-cask CI which has largely been untested so far, so a separate PR that can be reverted independently is best. The impact of the performance penalty on CI is also unclear.