Apps using the Heroku-16 stack will continue to run, but should be upgraded to a more recent stack to maintain access to security updates, technical support, and the ability to deploy new code.
Why is the Heroku-16 end-of-life occurring?
In accordance with Heroku's stack update policy, support for Heroku stacks is synchronized with the release lifecycle of the Ubuntu Long Term Support release on which they are based. Heroku-16 is based upon Ubuntu 16.04 LTS, for which Canonical's standard five-year support (including availability of bug and security fixes) ends on April 30th, 2021.
Heroku-16 was superseded by Heroku-18 in July 2018 and then by our latest stack, Heroku-20, in December 2020.
What is the Heroku-16 end-of-life timetable?
- Dec 11, 2020: Heroku-16 stack was deprecated.
- March 22, 2021: The first build of each Heroku-16 app within a 7-day period will fail with a deprecation notice; following builds will proceed normally.
- May 1, 2021: Heroku-16 stack reaches end-of-life. The first build of each Heroku-16 app per day will fail with a deprecation notice; following builds will proceed normally. Existing Heroku-16 apps will continue to run and build, but no longer receive security updates, will receive only limited technical support, and be run at your own risk.
- May 3, 2021: It will no longer be possible to create new Heroku-16 apps. New apps created by the Review Apps and Heroku CI features will be unaffected.
- June 1, 2021: No further builds (code deployments) will be allowed for Heroku-16 apps. All other non-build functionality will continue to work, and the apps will continue to run.
Which of my apps are affected?
To list all apps that are using the Heroku-16 stack, you can run the following Heroku CLI commands:
$ heroku plugins:install apps-table $ heroku apps:table --filter="STACK=heroku-16"
You can also show apps by team:
$ heroku apps:table --filter="STACK=heroku-16" --team=my-team-name
Listing apps using the Heroku CLI will show all apps, including those that might otherwise be hidden in the Heroku dashboard (such as the ephemeral apps created by Heroku CI).
What resources are available to assist with upgrading your apps?
Step-by-step documentation is available to assist you with upgrading. Additionally, Heroku Enterprise customers can engage with the Customer Solutions Architecture (CSA) team to determine a strategy that works for your business.
Will Heroku-16 apps stop running? Will my app be shut down?
No. Existing Heroku-16 apps will not be shut down when the stack reaches its end-of-life, or when builds are disabled.
The apps will continue to run for the foreseeable future, and all non-build functionality will continue to work, such as:
- Adjusting app settings
- Adjusting app environment variables
- Scaling app processes
- Running one-off dynos
- Creating/managing addons
However we highly encourage you to upgrade to a supported stack to maintain access to security updates, technical support, and the ability to perform builds (deploy new code).
Will apps on the Heroku-16 stack receive technical support?
After the Heroku-16 stack reaches end-of-life on May 1st, 2021, it will no longer be a supported stack, so apps using it will only receive limited technical assistance.
Will apps on the Heroku-16 stack continue to build?
From June 1st, 2021, no further builds will be allowed for Heroku-16 apps. This means it will not be possible to deploy changes to your application's source code after this date until the application's stack is upgraded. Upgrading an existing app's stack will still be possible even after June 1st, 2021.
Are you offering extensions to the Heroku-16 builds deadline?
For security and compliance reasons we must decommission the Heroku-16 build system as soon as possible after the end-of-life of Ubuntu 16.04. As such, we are unable to grant extensions to the Heroku-16 builds disablement deadline of 1st June, 2021.
I upgraded my app to a supported stack but my app no longer works as expected, can I rollback to Heroku-16?
Yes, you can rollback an app that has been upgraded to a newer stack - see this Dev Center article. Rolling back to a previous release that's based on Heroku-16 will still be possible even after Heroku-16 builds are disabled.
My app does not have any dynos, since it's only used to hold addons. What effect will upgrading stack have on the addons?
The stack is only used by dynos run on an app, so upgrading the app's stack will not affect the addons themselves. However, we recommended that the stack be upgraded regardless, in order to suppress the dashboard warning banners and email notifications. For apps where code has never been deployed, setting a new stack on the app will take immediate effect and not require a code deployment.