From 967d214a5cdfce36e3fab7ea6e3298749faec424 Mon Sep 17 00:00:00 2001 From: Andrew Murray Date: Mon, 21 Dec 2020 17:45:43 +1100 Subject: [PATCH 1/6] Added versioning documentation [ci skip] --- RELEASING.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/RELEASING.md b/RELEASING.md index db7b22445..4368792e6 100644 --- a/RELEASING.md +++ b/RELEASING.md @@ -1,3 +1,28 @@ +# Versioning + +Pillow follows Semantic Versioning. From https://semver.org/: + +> Given a version number MAJOR.MINOR.PATCH, increment the: +> 1. MAJOR version when you make incompatible API changes, +> 2. MINOR version when you add functionality in a backwards compatible manner, and +> 3. PATCH version when you make backwards compatible bug fixes. + +Quarterly releases (referred to as "Main Release" in the checklist below) bump at +least the MINOR version, as new functionality has likely been added in the prior three +months. + +A quarterly release bumps the MAJOR version when make incompatible API changes are +made, such as removing deprecated APIs or dropping an EOL Python version. In practice, +these occur every 12-18 months, guided by Python's EOL schedule, and any APIs that have +been deprecated for at least a year are removed at the same time. + +PATCH versions ("Point Release" or "Embargoed Release" in the checklist below) are for +security, installation or critical bug fixes. These are less common as it is preferred +to stick to quarterly releases. + +Between quarterly releases, ".dev0" is appended to the version, indicating that this is +not a formally released copy. + # Release Checklist ## Main Release From 35834535cbf9c42f7dc454e86f6a0056d74e8e00 Mon Sep 17 00:00:00 2001 From: Andrew Murray <3112309+radarhere@users.noreply.github.com> Date: Mon, 21 Dec 2020 19:17:31 +1100 Subject: [PATCH 2/6] Fixed wording [ci skip] Co-authored-by: Hugo van Kemenade --- RELEASING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELEASING.md b/RELEASING.md index 4368792e6..01faa76ec 100644 --- a/RELEASING.md +++ b/RELEASING.md @@ -11,7 +11,7 @@ Quarterly releases (referred to as "Main Release" in the checklist below) bump a least the MINOR version, as new functionality has likely been added in the prior three months. -A quarterly release bumps the MAJOR version when make incompatible API changes are +A quarterly release bumps the MAJOR version when incompatible API changes are made, such as removing deprecated APIs or dropping an EOL Python version. In practice, these occur every 12-18 months, guided by Python's EOL schedule, and any APIs that have been deprecated for at least a year are removed at the same time. From cf26a10f32e82eee3a7220d4b289a3dd4d9907bb Mon Sep 17 00:00:00 2001 From: Andrew Murray <3112309+radarhere@users.noreply.github.com> Date: Mon, 21 Dec 2020 19:17:50 +1100 Subject: [PATCH 3/6] Added link [ci skip] Co-authored-by: Hugo van Kemenade --- RELEASING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELEASING.md b/RELEASING.md index 01faa76ec..9aac638c4 100644 --- a/RELEASING.md +++ b/RELEASING.md @@ -13,7 +13,7 @@ months. A quarterly release bumps the MAJOR version when incompatible API changes are made, such as removing deprecated APIs or dropping an EOL Python version. In practice, -these occur every 12-18 months, guided by Python's EOL schedule, and any APIs that have +these occur every 12-18 months, guided by [Python's EOL schedule](https://devguide.python.org/#status-of-python-branches), and any APIs that have been deprecated for at least a year are removed at the same time. PATCH versions ("Point Release" or "Embargoed Release" in the checklist below) are for From a0f8004aa6230830a0801357367df4493e96d250 Mon Sep 17 00:00:00 2001 From: Andrew Murray <3112309+radarhere@users.noreply.github.com> Date: Mon, 21 Dec 2020 19:48:53 +1100 Subject: [PATCH 4/6] Specify branch [ci skip] --- RELEASING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELEASING.md b/RELEASING.md index 9aac638c4..5fe5a9b72 100644 --- a/RELEASING.md +++ b/RELEASING.md @@ -20,7 +20,7 @@ PATCH versions ("Point Release" or "Embargoed Release" in the checklist below) a security, installation or critical bug fixes. These are less common as it is preferred to stick to quarterly releases. -Between quarterly releases, ".dev0" is appended to the version, indicating that this is +Between quarterly releases, ".dev0" is appended to the `master` branch, indicating that this is not a formally released copy. # Release Checklist From d13a3ce7bfb836559830ae7d160c69690eec2d0f Mon Sep 17 00:00:00 2001 From: Andrew Murray Date: Mon, 21 Dec 2020 20:45:59 +1100 Subject: [PATCH 5/6] Moved "Versioning" into "Release Notes" --- RELEASING.md | 28 +++------------------------- docs/releasenotes/index.rst | 4 +++- docs/releasenotes/versioning.rst | 30 ++++++++++++++++++++++++++++++ 3 files changed, 36 insertions(+), 26 deletions(-) create mode 100644 docs/releasenotes/versioning.rst diff --git a/RELEASING.md b/RELEASING.md index 5fe5a9b72..eb69f2699 100644 --- a/RELEASING.md +++ b/RELEASING.md @@ -1,30 +1,8 @@ -# Versioning - -Pillow follows Semantic Versioning. From https://semver.org/: - -> Given a version number MAJOR.MINOR.PATCH, increment the: -> 1. MAJOR version when you make incompatible API changes, -> 2. MINOR version when you add functionality in a backwards compatible manner, and -> 3. PATCH version when you make backwards compatible bug fixes. - -Quarterly releases (referred to as "Main Release" in the checklist below) bump at -least the MINOR version, as new functionality has likely been added in the prior three -months. - -A quarterly release bumps the MAJOR version when incompatible API changes are -made, such as removing deprecated APIs or dropping an EOL Python version. In practice, -these occur every 12-18 months, guided by [Python's EOL schedule](https://devguide.python.org/#status-of-python-branches), and any APIs that have -been deprecated for at least a year are removed at the same time. - -PATCH versions ("Point Release" or "Embargoed Release" in the checklist below) are for -security, installation or critical bug fixes. These are less common as it is preferred -to stick to quarterly releases. - -Between quarterly releases, ".dev0" is appended to the `master` branch, indicating that this is -not a formally released copy. - # Release Checklist +See https://pillow.readthedocs.io/en/stable/releasenotes/versioning.html for +information about how the version numbers line up with releases. + ## Main Release Released quarterly on January 2nd, April 1st, July 1st and October 15th. diff --git a/docs/releasenotes/index.rst b/docs/releasenotes/index.rst index 18d2d9576..cd73de814 100644 --- a/docs/releasenotes/index.rst +++ b/docs/releasenotes/index.rst @@ -3,7 +3,8 @@ Release Notes Pillow is released quarterly on January 2nd, April 1st, July 1st and October 15th. Patch releases are created if the latest release contains severe bugs, or if security -fixes are put together before a scheduled release. +fixes are put together before a scheduled release. See :ref:`versioning` for more +information. Please use the latest version of Pillow. Functionality and security fixes should not be expected to be backported to earlier versions. @@ -48,3 +49,4 @@ expected to be backported to earlier versions. 3.0.0 2.8.0 2.7.0 + versioning diff --git a/docs/releasenotes/versioning.rst b/docs/releasenotes/versioning.rst new file mode 100644 index 000000000..c69139600 --- /dev/null +++ b/docs/releasenotes/versioning.rst @@ -0,0 +1,30 @@ +.. _versioning: + +Versioning +========== + +Pillow follows Semantic Versioning. From https://semver.org/: + + Given a version number MAJOR.MINOR.PATCH, increment the: + + 1. MAJOR version when you make incompatible API changes, + 2. MINOR version when you add functionality in a backwards compatible manner, and + 3. PATCH version when you make backwards compatible bug fixes. + +Quarterly releases ("`Main Release `_") +bump at least the MINOR version, as new functionality has likely been added in the +prior three months. + +A quarterly release bumps the MAJOR version when incompatible API changes are +made, such as removing deprecated APIs or dropping an EOL Python version. In practice, +these occur every 12-18 months, guided by +`Python's EOL schedule `_, and +any APIs that have been deprecated for at least a year are removed at the same time. + +PATCH versions ("`Point Release `_" +or "`Embargoed Release `_") +are for security, installation or critical bug fixes. These are less common as it is +preferred to stick to quarterly releases. + +Between quarterly releases, ".dev0" is appended to the "master" branch, indicating that +this is not a formally released copy. From 1777aada93f00aa09c906eb40e0c8bdfef6e0839 Mon Sep 17 00:00:00 2001 From: Andrew Murray <3112309+radarhere@users.noreply.github.com> Date: Tue, 22 Dec 2020 07:38:56 +1100 Subject: [PATCH 6/6] Reformatted link [ci skip] Co-authored-by: Hugo van Kemenade --- docs/releasenotes/versioning.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/releasenotes/versioning.rst b/docs/releasenotes/versioning.rst index c69139600..1653bff3c 100644 --- a/docs/releasenotes/versioning.rst +++ b/docs/releasenotes/versioning.rst @@ -3,7 +3,7 @@ Versioning ========== -Pillow follows Semantic Versioning. From https://semver.org/: +Pillow follows [Semantic Versioning](https://semver.org/): Given a version number MAJOR.MINOR.PATCH, increment the: