This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Platforms

Platform documentation and stack information

Documentation for the various platforms and infrastructure stacks used across our applications.

1 - Heroku

Heroku platform and stack documentation

Heroku is a cloud platform that enables companies to build, deliver, monitor and scale apps. This section covers the different Heroku stacks (runtime environments) and their support lifecycles.

Stack Overview

Heroku stacks are the different runtime environments available for applications. Each stack is based on a specific Ubuntu LTS version and has a defined support lifecycle.

Current Stacks

  • Heroku-24: Default stack (Ubuntu 24.04) - Supported until April 2029
  • Heroku-22: Active (Ubuntu 22.04) - Supported until April 2027
  • Heroku-20: End of Life (April 30, 2025)
  • Heroku-18: End of Life (April 30, 2023)
  • Heroku-16: End of Life (May 1, 2021)

1.1 - heroku-24

Heroku-24 stack based on Ubuntu 24.04 - Current default stack

Overview

Heroku-24 is the current default stack for new Heroku applications, based on Ubuntu 24.04 LTS.

Support Timeline

  • General Availability: June 2024
  • Default Stack: December 2024
  • End of Life: April 2029

Key Features

Base Image Optimizations

  • Reduced base image size by removing less frequently used packages (Bazaar, Mercurial)
  • Build tools (GCC, Make, Git, system Python) available only at build time, not at runtime
  • More efficient resource utilization

Multi-Architecture Support

  • Published images support both amd64 and arm64 architectures
  • Default Linux user changed from root to heroku

Build and Runtime Changes

  • Git available only at build time (not at runtime)
  • Limited locale support: C, C.utf8, POSIX, and en_US.utf8 only
  • APT sources list uses new deb822 format at /etc/apt/sources.list.d/ubuntu.sources
  • Reduced timezone data (only geographical regions and city names)

Fir Apps

  • Only heroku/builder:24 is supported for Fir apps
  • Heroku-24 is the exclusive base image for new Fir applications

Upgrading to Heroku-24

Applications should be upgraded to Heroku-24 to benefit from the latest security updates, performance improvements, and extended support timeline.

References

1.2 - heroku-22

Heroku-22 stack based on Ubuntu 22.04 - Active support

Overview

Heroku-22 is based on Ubuntu 22.04 LTS and is currently in active support.

Support Timeline

  • Release: June 2022
  • Superseded by: Heroku-24 (June 2024)
  • End of Life: April 2027

Key Changes from Heroku-20

OpenSSL Version

  • Ships with OpenSSL 3.0
  • OpenSSL 1.1 is not available as a runtime library
  • Applications depending on OpenSSL 1.1 must be updated

Ubuntu Base

  • Based on Ubuntu 22.04 (Jammy Jellyfish)
  • Upgraded from Ubuntu 20.04 in Heroku-20

Migration Considerations

Applications should plan migration to Heroku-24 before April 2027 to ensure continued security updates and support.

References

1.3 - heroku-20

Heroku-20 stack based on Ubuntu 20.04 - END OF LIFE

⚠️ End of Life Notice

Heroku-20 reached end of life on April 30, 2025.

Overview

Heroku-20 was based on Ubuntu 20.04 LTS.

Support Timeline

  • Release: 2020
  • Deprecated: June 2024
  • End of Life: April 30, 2025
  • Build Cutoff: Approximately May 30, 2025

Post-EOL Status

  • Existing apps continue to run at customer’s own risk
  • No security updates provided
  • No new builds/deployments allowed after build cutoff
  • Limited technical support available

Required Action

All applications on Heroku-20 must be upgraded to Heroku-22 or Heroku-24 immediately.

Running applications on an end-of-life stack exposes them to security vulnerabilities and compliance risks.

Migration Path

  1. Test application on Heroku-24 (recommended) or Heroku-22
  2. Update dependencies and configurations as needed
  3. Deploy to new stack
  4. Monitor for any runtime issues

References

1.4 - heroku-18

Heroku-18 stack based on Ubuntu 18.04 - END OF LIFE

⚠️ End of Life Notice

Heroku-18 reached end of life on April 30, 2023.

Overview

Heroku-18 was based on Ubuntu 18.04 LTS (Bionic Beaver).

Support Timeline

  • Release: 2018
  • Deprecated: June 22, 2022
  • End of Life: April 30, 2023
  • Build Cutoff: May 1, 2023

Post-EOL Status

  • Existing apps continue to run at customer’s own risk
  • No security updates since April 30, 2023
  • No new builds/deployments allowed since May 1, 2023
  • No technical support available

Critical Action Required

All applications still on Heroku-18 are severely outdated and must be upgraded immediately.

This stack has been unsupported for over 2 years and poses significant security and compliance risks.

Migration Path

Applications on Heroku-18 should be upgraded directly to Heroku-24 to ensure the longest support timeline.

References

1.5 - heroku-16

Heroku-16 stack based on Ubuntu 16.04 - END OF LIFE

⚠️ End of Life Notice

Heroku-16 reached end of life on May 1, 2021.

Overview

Heroku-16 was based on Ubuntu 16.04 LTS (Xenial Xerus).

Support Timeline

  • Release: 2016
  • Deprecated: December 11, 2020
  • End of Life: May 1, 2021
  • Build Cutoff: June 1, 2021

Post-EOL Status

  • Existing apps continue to run at customer’s own risk
  • No security updates since May 1, 2021
  • No new builds/deployments allowed since June 1, 2021
  • No technical support available

Critical Action Required

Applications on Heroku-16 are critically outdated (4+ years unsupported) and represent a severe security risk.

Immediate upgrade to Heroku-24 is essential for security, compliance, and operational stability.

Migration Path

Direct upgrade to Heroku-24 is strongly recommended. Given the age of this stack, significant application updates will likely be required.

References