Release Schedule

Timeline of maintenance and support for Plone releases.

Plone currently has three Release Managers: Maurits van Rees (backend, Classic UI), Víctor Fernández de Alba (Volto frontend), and Timo Stollenwerk (REST API). This is their page for telling you when you can expect a new Plone release, especially the backend. It also shows the time line of support for a given version of Plone.

Let's start with an image of a support time line, followed by a table of Plone version support, and finally their definitions.

Series

Latest

Python versions

Status

Initial release

End of bugfix support

End of security support

4.3

4.3.20

2.7

end of life

2013-04-06

2020-08-28

2022-12-12

5.0

5.0.10

2.7

end of life

2015-09-27

2019-02-07

2022-12-12

5.1

5.1.7

2.7

end of life

2018-02-05

2020-10-02

2022-12-12

5.2

5.2.12

2.7, 3.7, 3.8

bugfix

2019-07-10

2023-10-31

2024-10-31

6.0

6.0.4

3.8, 3.9, 3.10, 3.11

bugfix

2022-12-12

2023-12-12

2024-12-121

6.1

  

development

TBD2

2024-12-12

2027-12-12

Notes:

  1. As long as there is no 6.1 release, security support on 6.0 will be extended.
  2. Dates for 6.1 are highly tentative. But you can take these dates as promises for the extent of support for the Plone 6 series as a whole.

Definitions

On this page, we use these terms:

  • Development: for a minor release new features are developed, and for a major release breaking changes may be added.

  • Maintenance support: security and other bug fixes and small new features are added. Around the end of maintenance support, a last release will be done. Note that there is no single team that is responsible for fixing bugs or backporting fixes to older versions. Bug fixes are the responsibility of the Plone community as a whole.

  • Security support: Plone security hotfixes will be made available for this series. For more information, see the security update policy.

  • Major version: 5, 6

  • Minor version: 5.2, 6.0, 6.1

  • Bugfix version: 5.2.10, 6.0.0

Release cadence

This is the expected release cadence for the Python backend, including Classic UI:

  • We aim to release a new minor version roughly every 12-18 months. We might speed this up, starting with 6.0.
  • We expect two or three minor versions, for example Plone 6.0, 6.1, and 6.2.
  • We aim to release a new major version roughly every 3-4 years.
  • Planning for a new minor or major version usually starts after a release has been done. Currently, there is no clear calendar with expected dates.

Maintenance policy

These are the general rules for maintenance support for the Python backend, including Classic UI:

  • Each major release gets at least two years of maintenance support, likely more.
  • On top of this, after the next major version is released, there is an overlap of a year where the previous release still gets maintenance support.
  • Each minor release gets at least one year of maintenance support.
  • On top of this, after the next minor version is released, there is an overlap of half a year where the previous release still gets maintenance support.

Security policy

These are the general rules for security support for the Python backend, including Classic UI:

  • Each major release gets at least five years of security support.
  • There is an overlap of at least two years between major versions. This gives you time to migrate to a new major version.
  • You have to be on the last minor release to have the full period of security support.
  • Each minor release gets at least two years of security support.
  • There is an overlap of at least one year between minor versions. This gives you time to migrate to a new minor version.
  • Note that underlying versions of Python, Zope, React, and their dependencies may be out of security support sooner. Have a look at the The Zope release schedule.
  • See the security update policy for more information.

    Versioning policy

    Individual Plone packages follow semantic versioning: a new feature means a minor release, a breaking change means a major release of this package.

    Two Python packages are special: Products.CMFPlone and Plone. This last one has no code of its own, but it depends on Products.CMFPlone plus a few optional packages. When we talk about Plone release 6.0.0, we mean the combination of Products.CMFPlone 6.0.0, Plone 6.0.0 and a set of version pins for all dependencies. The canonical place for the version pins is on dist.plone.org/release in a directory per release.

    For a Plone release as a whole:

    • 6.0.1 and 6.0.2 are examples of bugfix releases. These contain bug fixes. They may contain new code that should not affect stability, for example: support for a new Python version. Specifically it may contain a new minor Zope version, and even major versions of dependencies, for example requests or setuptools. Occasionally a bug fix release may drop support for a Python version, if this version is no longer supported by the Python community. This should be clearly visible in the support table. We will still try not to break compatibility. Add-ons should usually not need changes. You need to run a small in-place migration in your Plone site via the plone-upgrade page to update configuration and sometimes data.
    • 6.1 and 6.2 are minor releases. These contain larger changes. Add-ons may need to be changed to work on the new version or to use the new features. It should be relatively easy to make the same version of an add-on work in all minor releases. You need to run an in-place migration in your Plone site via the plone-upgrade page to update configuration and sometimes data. This may take longer than for a bug fix release.
    • 6 and 7 are major releases. These contain breaking changes. Add-ons are likely to need changes. It may be hard to have one version of an add-on work across two major versions. You need to run an in-place migration in your Plone site via the plone-upgrade page to update configuration and probably data. This likely takes longer than for a minor release.
    • Occasionally, security related fixes or packaging fixes may be released in, for lack of a better term, "sub-bugfix" releases: 5.2.10.1, 6.0.0.2. This is when there is no accompanying new release of the Products.CMFPlone package. No migration is needed here.

    Note that Plone is both a framework and a product, and you can use a lot of community add-ons and own code on top of it. This means that even a seemingly innocent fix like adding a class in HTML could break something for someone. We cannot foresee everything. Please be a bit forgiving.

    General advice for all Plone versions

    • Migrate to Plone 5.2 or 6.0 on Python 3 as soon as you can.

    • Use the highest Python version that is supported by your Plone version. For release schedules of core Python, see https://www.python.org/downloads/

    • Check the hotfixes page to see if any security fixes are available for your Plone version.

    Supported versions

    Plone 6.0 series
    Plone 5.2 series

    No longer supported versions:

    Plone 5.1 series
    Plone 5.0 series
    Plone 4.3 series