Heroku-18 End-of-Life FAQ

Summary

Heroku-18, our stack based on Ubuntu 18.04 Long Term Support, reaches end-of-life on April 30th, 2023. On May 1st, 2023, the building of Heroku-18 apps will no longer be supported.

Apps using the Heroku-18 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-18 end-of-life occurring?

Support for Heroku stacks is synchronized with the release lifecycle of the Ubuntu Long Term Support release on which they are based. Heroku-18 is based upon Ubuntu 18.04 LTS, for which Canonical's standard five-year support (including availability of bug and security fixes) ends on April 30th, 2023.

As such in accordance with our stack update policy and documented stack support dates, the Heroku-18 stack reaches end-of-life on April 30th, 2023.

Heroku-18 was superseded by Heroku-20 in December 2020, followed by Heroku-22 in June 2022.

What is the Heroku-18 end-of-life timetable?

  • June 22, 2022: Heroku-18 stack was deprecated.
  • February 1, 2023: The first build of each Heroku-18 app within a 7-day period will now fail with a deprecation notice. Subsequent builds during that period will proceed normally.
  • April 1, 2023: The first build of each Heroku-18 app within a 24-hour period will now fail with a deprecation notice. Subsequent builds during that period will proceed normally.
  • April 30, 2023: Heroku-18 stack reaches end-of-life. Heroku-18 apps will continue to run, but no longer receive security updates, will receive only limited technical support, and be run at your own risk.
  • May 1, 2023: No further builds (code deployments) will be allowed for any Heroku-18 apps, including those used by Review Apps and Heroku CI. All other non-build functionality will continue to work, and existing apps will continue to run. It will no longer be possible to create new Heroku-18 apps.

Which of my apps are affected?

To list all apps that are using the Heroku-18 stack, you can run the following Heroku CLI commands:

$ heroku plugins:install apps-table
$ heroku apps:table --filter="STACK=heroku-18"

You can also show apps by team:

$ heroku apps:table --filter="STACK=heroku-18" --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, which will have -ci- in their app name).

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.

Will Heroku-18 apps stop running? Will my app be shut down?

No. Existing Heroku-18 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 (unless impacted by issues unrelated to the stack version), 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-18 stack receive technical support?

After the Heroku-18 stack reaches end-of-life on April 30th, 2023, it will no longer be a supported stack, so apps using it will only receive limited technical assistance.

Will apps on the Heroku-18 stack continue to build?

From May 1st, 2023, no further builds will be allowed for Heroku-18 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 Heroku-18 app's stack will still be possible even after May 1st, 2023.

Are you offering extensions to the Heroku-18 builds deadline?

No. For security and compliance reasons we must decommission the Heroku-18 instance of the build system as soon as possible after the end-of-life of Ubuntu 18.04, since it itself has to run on the same Operating System version as the app being built. As such, we are unable to grant extensions to the Heroku-18 builds disablement deadline of May 1st, 2023, since after that date the Heroku-18 build system will no longer exist.

I upgraded my app to a supported stack but my app no longer works as expected, can I rollback to Heroku-18?

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-18 will still be possible even after Heroku-18 end-of-life and builds disablement, however at that point onwards, downgrading must be performed via the rollback feature and not heroku stack:set.

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.

How are customers being notified about Heroku-18's end-of-life?

To raise awareness of Heroku-18's scheduled end-of-life, over the coming months we will notify customers via:

  • changelog entries
  • warnings in build logs
  • warnings when specifying Heroku-18 with the CLI commands heroku create and heroku stack:set
  • banners on the Heroku Dashboard
  • banners on the Heroku-18, Stack Packages and Upgrading to the Latest Stack Dev Center pages
  • automated emails triggered whenever a Heroku-18 app is built, sent to app owners/admins/collaborators (initially at most once per 90 days, increasing to monthly, weekly, then finally daily)
  • an email campaign to the owners/team admins of any Heroku-18 apps (regardless of recent build activity)
  • periodic intentional build errors requiring a retrigger to dismiss the end-of-life message

Ask on Stack Overflow

Engage with a community of passionate experts to get the answers you need

Ask on Stack Overflow

Heroku Support

Create a support ticket and our support experts will get back to you

Contact Heroku Support