-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
The "Ruby version does not exist for this stack" warning doesn't explain sticky versions #1141
Comments
Is there a solution to this problem? I get a, well, similar error:
ruby-2.6.9 is declared in .ruby-version and of course Gemfile and Gemfile.lock |
Another ticket today where this caused confusion: https://heroku.support/1124585 Edit: Though this case wasn't sticky versions, but suggests the overall error message could be clearer. |
That error looks like a temporary glitch in the network. When I try to manually download the binary from that URL it works for me. Just re-run it. |
A user just reported this in an open source project with a Heroku deploy button. The app.json hasn't changed in 9 months. I just reproduced it myself:
The app Gemfile specifies
|
I faced this issue as well, all I had to do was downgrade the stack from 22 to 20,
|
In https://heroku.support/967916 after upgrading from Heroku-16 to Heroku-20, builds of an existing app started failing with:
In this case, the app didn't have a Ruby version defined in
Gemfile.lock
, so the2.3.4
version wasn't something they'd specified, but due to the sticky versions feature.Whilst the above error message does link to docs that say how to specify a version explicitly, it requires both reading those docs and a couple of mental leaps to understand that the issue may be due to no version being specified. What also added to the confusion in this case, was that their review apps did work, since they were starting with a clean cache so defaulted to newer Ruby.
As such it would be great to explicitly call out why
2.3.4
was used in this case.For example during successful builds, this warning is shown:
However the build doesn't get as far as showing that warning in the stack upgrade case.
(For what it's worth the Python buildpack currently has the same issue -- it uses sticky versioning but doesn't explain what happened when that version isn't found on the current stack)
cc @schneems
The text was updated successfully, but these errors were encountered: