You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We've seen a few support tickets where a user has tried to upgrade to Heroku-24, and encounters the "Python version not available for this stack" error message due to them unknowingly using an out of date buildpack version (that is using the old style S3 URLs where the Heroku-24 assets don't exist). For example:
To raise awareness of apps using an outdated buildpack version, we can rename the Git tags similar to what we've done in the past (for example: vNNN -> archive/vNNN). If a particular app still needs to use an outdated tag for some reason, they can switch to the archive/vNNN tag name, but the missing tag error during the build will remind users that they have pinned to a old buildpack version.
Note: As a reminder we strongly recommend using the buildpack registry alias for the buildpack URL (eg heroku/python) rather than the GitHub URLs, since:
The buildpack registry buildpacks are hosted on S3 (rather than GitHub) and so have stronger uptime/reliability guarantees.
The buildpack registry buildpacks for officially supported languages are pre-cached on the build workers, so don't require an additional git clone step.
The buildpack registry buildpacks are the curated/stable release that matches the docs on Dev Center/any updates on the Heroku Changelog, whereas the main branch of the repo on GitHub will contain changes that have not yet been officially released.
We've seen a few support tickets where a user has tried to upgrade to Heroku-24, and encounters the "Python version not available for this stack" error message due to them unknowingly using an out of date buildpack version (that is using the old style S3 URLs where the Heroku-24 assets don't exist). For example:
The build log does mention the buildpack URL at the start of the build, and the Python version error message does link to https://devcenter.heroku.com/articles/python-support#supported-runtimes which mentions checking the buildpack version, however, some users still end up confused.
To raise awareness of apps using an outdated buildpack version, we can rename the Git tags similar to what we've done in the past (for example:
vNNN
->archive/vNNN
). If a particular app still needs to use an outdated tag for some reason, they can switch to thearchive/vNNN
tag name, but the missing tag error during the build will remind users that they have pinned to a old buildpack version.Note: As a reminder we strongly recommend using the buildpack registry alias for the buildpack URL (eg
heroku/python
) rather than the GitHub URLs, since:main
branch of the repo on GitHub will contain changes that have not yet been officially released.The first Python buildpack version to support Heroku-24 is v250:
https://github.com/heroku/heroku-buildpack-python/blob/main/CHANGELOG.md#v250---2024-04-26
So at the least we should archive anything older than v250. (v207 and older are already archived)
Although on Dev Center we now document:
.python-version
as the recommended way to control the Python version (instead ofruntime.txt
), which requires Python buildpack v261+...so it might be worth archiving anything older than v265 too.
GUS-W-17308840.
The text was updated successfully, but these errors were encountered: