Skip to content
Snippets Groups Projects
totten's avatar
totten authored
d5986c58
History
Name Last commit Last update
doc
img
stat
.gitignore
README.md

CiviCRM Release Management

This project supports documentation and meta-activities for release-management.

Release Plans

Name Development/Alpha Period RC/Beta Period Release Date Stable Period Extended Security Period
6.10.x Nov 2025 Dec 2025 Jan 7, 2026 Jan 2026 Feb 2026 - Jul 2026 (incl)
(tentative)
6.9.x Oct 2025 Nov 2025 Dec 3, 2025 Dec 2025
6.8.x Sep 2025 Oct 2025 Nov 5, 2025 Nov 2025
6.7.x Aug 2025 Sep 2025 Oct 1, 2025 Oct 2025
6.6.x Jul 2025 Aug 2025 Sep 3, 2025 Sep 2025
6.5.x Jun 2025 Jul 2025 Aug 6, 2025 Aug 2025
6.4.x May 2025 Jun 2025 Jul 2, 2025 Jul 2025 Aug 2025 - Jan 2026 (incl)
(tentative)
6.3.x Apr 2025 May 2025 Jun 4, 2025 Jun 2025
6.2.x Mar 2025 Apr 2025 May 7, 2025 May 2025
6.1.x Feb 2025 Mar 2025 Apr 2, 2025 Apr 2025
6.0.x Jan 2025 Feb 2025 Mar 5, 2025 Mar 2025
5.82.x Dec 2024 Jan 2025 Feb 5, 2025 Feb 2025
5.81.x Nov 2024 Dec 2024 Jan 8, 2025 Jan 2025 Feb 2025 - Jul 2025 (incl)
(tentative)
5.80.x Oct 2024 Nov 2024 Dec 4, 2024 Dec 2024
5.79.x Sep 2024 Oct 2024 Nov 6, 2024 Nov 2024
5.78.x Aug 2024 Sep 2024 Oct 2, 2024 Oct 2024
5.77.x Jul 2024 Aug 2024 Sep 4, 2024 Sep 2024
5.76.x Jun 2024 Jul 2024 Aug 7, 2024 Aug 2024
5.75.x May 2024 Jun 2024 Jul 3, 2024 Jul 2024 Aug 2024 - Jan 2025 (incl)
5.74.x Apr 2024 May 2024 Jun 5, 2024 Jun 2024
5.73.x Mar 2024 Apr 2024 May 1, 2024 May 2024
5.72.x Feb 2024 Mar 2024 Apr 3, 2024 Apr 2024
5.71.x Jan 2024 Feb 2024 Mar 6, 2024 Mar 2024
5.70.x Dec 2023 Jan 2024 Feb 7, 2024 Feb 2024
5.69.x Nov 2023 Dec 2023 Jan 3, 2024 Jan 2024 Feb 2024 - Jul 2024 (incl)
5.68.x Oct 2023 Nov 2023 Dec 6, 2023 Dec 2023
5.67.x Sep 2023 Oct 2023 Nov 1, 2023 Nov 2023
5.66.x Aug 2023 Sep 2023 Oct 4, 2023 Oct 2023
5.65.x Jul 2023 Aug 2023 Sep 6, 2023 Sep 2023
5.64.x Jun 2023 Jul 2023 Aug 2, 2023 Aug 2023
5.63.x May 2023 Jun 2023 Jul 5, 2023 Jul 2023 Aug 2023 - Jan 2024 (incl)
5.62.x Apr 2023 May 2023 Jun 7, 2023 Jun 2023
5.61.x Mar 2023 Apr 2023 May 3, 2023 May 2023
5.60.x Feb 2023 Mar 2023 Apr 5, 2023 Apr 2023
5.59.x Jan 2023 Feb 2023 Mar 1, 2023 Mar 2023
5.58.x Dec 2022 Jan 2023 Feb 1, 2023 Feb 2023
5.57.x Nov 2022 Dec 2022 Jan 4, 2023 Jan 2023 Feb 2023 - Jul 2023 (incl)
5.56.x Oct 2022 Nov 2022 Dec 7, 2022 Dec 2022
5.55.x Sep 2022 Oct 2022 Nov 2, 2022 Nov 2022
5.54.x Aug 2022 Sep 2022 Oct 5, 2022 Oct 2022
5.53.x Jul 2022 Aug 2022 Sep 7, 2022 Sep 2022
5.52.x Jun 2022 Jul 2022 Aug 3, 2022 Aug 2022
5.51.x May 2022 Jun 2022 Jul 6, 2022 Jul 2022 Aug 2022 - Jan 2023 (incl)
5.50.x Apr 2022 May 2022 Jun 1, 2022 Jun 2022
5.49.x Mar 2022 Apr 2022 May 4, 2022 May 2022
5.48.x Feb 2022 Mar 2022 Apr 6, 2022 Apr 2022
5.47.x Jan 2022 Feb 2022 Mar 2, 2022 Mar 2022
5.46.x Dec 2021 Jan 2022 Feb 2, 2022 Feb 2022
5.45.x Nov 2021 Dec 2021 Jan 5, 2022 Jan 2022 Feb 2022 - Jul 2022 (incl)
5.44.x Oct 2021 Nov 2021 Dec 1, 2021 Dec 2021
5.43.x Sep 2021 Oct 2021 Nov 3, 2021 Nov 2021
5.42.x Aug 2021 Sep 2021 Oct 6, 2021 Oct 2021
5.41.x Jul 2021 Aug 2021 Sep 1, 2021 Sep 2021
5.40.x Jun 2021 Jul 2021 Aug 4, 2021 Aug 2021
5.39.x May 2021 Jun 2021 Jul 7, 2021 Jul 2021 Aug 2021 - Jan 2022 (incl)
5.38.x Apr 2021 May 2021 Jun 2, 2021 Jun 2021
5.37.x Mar 2021 Apr 2021 May 5, 2021 May 2021
5.36.x Feb 2021 Mar 2021 Apr 7, 2021 Apr 2021
5.35.x Jan 2021 Feb 2021 Mar 3, 2021 Mar 2021
5.34.x Dec 2020 Jan 2021 Feb 3, 2021 Feb 2021
5.33.x Nov 2020 Dec 2020 Jan 6, 2021 Jan 2021 Feb 2021 - Jul 2021 (incl)
5.32.x Oct 2020 Nov 2020 Dec 2, 2020 Dec 2020
5.31.x Sep 2020 Oct 2020 Nov 4, 2020 Nov 2020
5.30.x Aug 2020 Sep 2020 Oct 7, 2020 Oct 2020
5.29.x Jul 2020 Aug 2020 Sep 2, 2020 Sep 2020
5.28.x Jun 2020 Jul 2020 Aug 5, 2020 Aug 2020
5.27.x May 2020 Jun 2020 Jul 1, 2020 Jul 2020 Aug 2020 - Jan 2021 (incl)
5.26.x Apr 2020 May 2020 Jun 3, 2020 Jun 2020
5.25.x Mar 2020 Apr 2020 May 6, 2020 May 2020
5.24.x Feb 2020 Mar 2020 Apr 1, 2020 Apr 2020
5.23.x Jan 2020 Feb 2020 Mar 4, 2020 Mar 2020
5.22.x Dec 2019 Jan 2020 Feb 5, 2020 Feb 2020
5.21.x Nov 2019 Dec 2019 Jan 1, 2020 Jan 2020 Feb 2020 - Jul 2020 (incl)
5.20.x Oct 2019 Nov 2019 Dec 4, 2019 Dec 2019
5.19.x Sep 2019 Oct 2019 Nov 6, 2019 Nov 2019
5.18.x Aug 2019 Sep 2019 Oct 2, 2019 Oct 2019
5.17.x Jul 2019 Aug 2019 Sep 4, 2019 Sep 2019
5.16.x Jun 2019 Jul 2019 Aug 7, 2019 Aug 2019
5.15.x May 2019 Jun 2019 Jul 3, 2019 Jul 2019
5.14.x Apr 2019 May 2019 Jun 5, 2019 Jun 2019
5.13.x Mar 2019 Apr 2019 May 1, 2019 May 2019 Jun 2019 - Jan 2020 (incl)
5.12.x Feb 2019 Mar 2019 Apr 3, 2019 Apr 2019
5.11.x Jan 2019 Feb 2019 Mar 6, 2019 Mar 2019
5.10.x Dec 2018 Jan 2019 Feb 7, 2019 Feb 2019
5.9.x Nov 2018 Dec 2018 Jan 2, 2019 Jan 2019
5.8.x Oct 2018 Nov 2018 Dec 5, 2018 Dec 2018
5.7.x Sep 2018 Oct 2018 Nov 7, 2018 Nov 2018 Dec 2018 - May 2019 (incl)
5.6.x Aug 2018 Sep 2018 Oct 3, 2018 Oct 2018
5.5.x Jul 2018 Aug 2018 Sep 5, 2018 Sep 2018
5.4.x Jun 2018 Jul 2018 Aug 1, 2018 Aug 2018
5.3.x May 2018 Jun 2018 Jul 3, 2018 Jul 2018
5.2.x Apr 2018 May 2018 Jun 6, 2018 Jun 2018
5.1.x Mar 2018 Apr 2018 May 2, 2018 May 2018
5.0.x Feb 2018 Mar 2018 Apr 4, 2018 Apr 2018

Release Lifecycle

Each period has a different policy on accepting changes:

  • During the Development/Alpha period, changes are accepted on the master branch. These are usually bugfixes, API improvements, small features, etc -- but anything that passes the review process may be accepted. The branch is internally numbered as 5.x.alpha1.
  • During the RC/Beta period, a new branch (e.g. 5.0 or 5.1 or 5.2) is created. There is a general freeze on scope. However, fixes for recent regressions may still be accepted, and they will merge-forward to master. The branch is internally numbered as 5.x.beta1. (In some unusual circumstances, it could be incremented to 5.x.beta2, etc.)
  • On the Release Date, the 5.x.0 version is tagged and released.
  • During the Stable period, patches are not generally accepted, and there is no automatic merging. There may be patches in the following cases:
    • If a recent regression is fixed and approved for the concurrent RC/beta, then it may be back-ported to the stable. These fixes are generally released ASAP, but this is left to the discretion the maintenance/release teams.
    • The security team may approve patches for a security release. Security releases may only be published on the first or third Wednesday of the month (US/Pacific time).
    • If there are any subsequent updates, they will increment the third digit (5.x.1, 5.x.2, etc).
  • Some Stable periods are extended through the Extended Security Release program, during which:
    • (Generally) Only security-fixes will be backported to ESR.
    • (Rare cases) A critical regression-fix or a security feature may be backported to ESR.

During the lifecycle, key changes come with updating the version number (tools/bin/scripts/set-version.php), making branches, and tagging releases. To understand sequencing of these steps, review an example workflow (numbers circa 5.10).

Branching and Versioning Example

(For historical planning information from 4.7.x cycles, see 4.7-release-history.md.)

Timing

General rules:

  • Standard release dates arise on the first Wed of the month.
  • Dates are construed in US/Pacific time. Thus, a release on 7-Apr-21 (US/Pacific) may also viewed as 8-Apr-21 (AU/Eastern).
  • All three main branches (development, RC, stable) are updated on the same day.
  • Month-long periods are bounded by release dates (ie first Wed). Thus, the 5.3.x development period (May 2018) actually lasts from 2-May-18 to 6-Jun-18.
  • A new ESR is designated every 6 months. ESR periods are back-to-back. The previous ESR remains active until the next ESR begins.

Those rules are not absolute -- exceptions may arise a couple times a year. For example:

  • If the first Wed of a month coincides with major holiday (e.g. New Years Day), then it could be moved.
  • If there's an important patch in development and it needs an extra day, then the new RC could be delayed by a day.
  • Circa Dec 2019, one of the ESR periods was extended by a month to improve alignment with common downstream fundraising calendars.