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

require libyaml-dev for Ruby >= 3.4.1 #146

Merged
merged 1 commit into from
Feb 21, 2025
Merged

require libyaml-dev for Ruby >= 3.4.1 #146

merged 1 commit into from
Feb 21, 2025

Conversation

rubys
Copy link
Collaborator

@rubys rubys commented Feb 21, 2025

No description provided.

@rubys rubys merged commit 2fb907d into main Feb 21, 2025
8 checks passed
@albus522
Copy link
Collaborator

Why are you choosing to limit what it is installed on? You are setting yourself up for this being one nasty conditional as this is going to apply to the next point release of every version.

@rubys
Copy link
Collaborator Author

rubys commented Feb 24, 2025

Here's what I know. For starters, the Dockerfile produced by the latest version of Rails doesn't work with the latest version of Ruby:

rails/rails#54588

Apparently the Ruby team decided that their base images are not going to include runtime dependencies going forward. They initially implemented this new decision in a way that effectively was retroactive - those that depended on prior versions of Ruby would fail, but they reverted that change.

Knowing that this changes was coming, Rails made a change: rails/rails#54237; dockerfile-rails reflects that change, so libyaml-dev is included in all Dockerfiles. Unfortunately, they have not released this change.

All this PR (#146) does is require the string "libyaml-dev" to be in the Dockerfile if (a) a Dockerfile existed before you ran "bin/rails generate dockerfile" and (b) include --skip in the list of options and (c) if the ruby release is greater than or equal to "3.4.1".

For background, by default fly launch will use your existing Dockerfile (and not overwrite it) and will automatically proceed to deploy unless the dockerfile generator detects a known issue; at which point it will inform you of the issue and suggest running bin/rails dockerfile generate to update your Dockerfile.

Does this match your understanding? Would you recommend something different?

@albus522
Copy link
Collaborator

I missed that this was only the check for issues and not generation. I think this is the complete check we want #147

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.

None yet

2 participants