PCRE2 Support Lifecycle

This document outlines the support lifecycle policy for PCRE2 releases. It is intended to provide clear guidance to distributors on the supported versions of PCRE2, and the actions required to distribute older versions of PCRE2 securely.

Release policy

PCRE2 releases follow a rolling version policy. There is one linear history of releases, with each new release providing a mixture of enhancements and fixes to the previous release.

PCRE2 is designed to have a high level of backwards-compatibility and stability. Where possible, we recommend that consumers of the library update to the latest version.

However, we recognise that Linux distributions in particular bundle older versions for many years. To enable this practice, this document provides advice on how to package and distribute older releases of PCRE2.

This document will be updated with each new PCRE2 release to reflect the current support status and any new lifecycle recommendations.

Actions for PCRE2 distributors and packagers

Support Policy

  1. Each PCRE2 version will be supported for at least 5 years from its release date.
  2. Selected releases older than 5 years may continue to receive support if they are actively distributed.
  3. For supported versions, security and high-severity bug fixes will be backported and listed in this document.

The following distributions have been considered to determine support requirements:

Please contact us if you would like the PCRE2 maintainers to be aware of your packages, particularly if you are a distributor of PCRE2, and provide a support lifecycle for old (not-latest) PCRE2 releases.

Supported Versions

Below is the list of supported PCRE2 versions. For each version, specific recommendations and backported fixes (if any) are provided.

PCRE2 10.32 10-September-2018

This version is older than 5 years, but remains listed in SUPPORT-LIFECYCLE.md potentially until May 2029 (end of “Maintenance Support” for RHEL 8), in recognition that customer workloads may be using this version until then.

I am not providing a recommendation of what patches to apply. Distributors still shipping this release have likely frozen their codebase at this point.

For the record, RHEL 8 used the following sets of patches: https://src.fedoraproject.org/rpms/pcre2/tree/f28, https://gitlab.com/redhat/centos-stream/rpms/pcre2/-/tree/c8s?ref_type=heads

The most serious of these was the backported mitigation for CVE-2019-20454 from the fix in 10.34.

PCRE2 10.36 04-December-2020

I am not providing a recommendation of what patches to apply. Distributors still shipping this release have likely frozen their codebase at this point, since the release of Debian 12.

PCRE2 10.37 26-May-2021

I am not providing a recommendation of what patches to apply. I am not aware of any Linux distributions providing extended support for 10.37. I have not tested this release with any backported fixes applied.

Patches introduced:

PCRE2 10.38 01-October-2021

Do not use (update to 10.39).

PCRE2 10.39 29-October-2021

I am not providing a recommendation of what patches to apply. Distributors still shipping this release have likely frozen their codebase at this point, since the release of Ubuntu 24.04.

Patches introduced:

PCRE2 10.40 15-April-2022

I am not providing a recommendation of what patches to apply. Distributors still shipping this release have likely frozen their codebase at this point, since the release of RHEL 10.

For the record, RHEL/CentOS 9 ships rather more backported patches than other distributions: https://gitlab.com/redhat/centos-stream/rpms/pcre2/-/tree/c9s?ref_type=heads

Some of these patches may be relevant to other distributions, but I have not tested them myself for compatibility with 10.40 or other earlier releases.

Patches introduced:

PCRE2 10.41 06-December-2022

Do not use (update to 10.42).

Introduced the fix for CVE-2022-41409. This only affects the pcre2test runner for the test suite, so this fix is not backported.

PCRE2 10.42 11-December-2022

Users on RISC-V are advised to update to 10.43, or not use the JIT unless using a backport for https://github.com/zherczeg/sljit/pull/223. Given the small RISC-V userbase (especially on older releases), disabling the JIT for RISC-V builds is likely acceptable.

Patches to apply:

PCRE2 10.43 16-February-2024

Patches to apply:

Patches introduced:

PCRE2 10.44 07-June-2024

Patches to apply:

Patches introduced:

PCRE2 10.45 05-February-2025

Do not use (update to 10.46, which is is a drop-in compatible release with a security fix).

Patches introduced:

PCRE2 10.46 27-August-2025

Introduced the fix for CVE-2025-58050. This only affects 10.45. Do not backport the patch (just update to 10.46).

Patches to apply:

PCRE2 10.47 21-October-2025

Patches introduced: