From 6ae0da519af5615f4f28b28d3d738755075866a3 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Wed, 10 Sep 2025 12:26:26 -0700 Subject: [PATCH 1/5] Clarify that the `license` key in `pyprojcet.toml` should only be set if it is consistent across all distribution files This change is approved at https://discuss.python.org/t/split-from-pep-639-expressing-project-vs-distribution-licenses-post-pep-639-mod-titled/90314/179 . --- source/specifications/pyproject-toml.rst | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/source/specifications/pyproject-toml.rst b/source/specifications/pyproject-toml.rst index 4ce9b7484..c94e78d83 100644 --- a/source/specifications/pyproject-toml.rst +++ b/source/specifications/pyproject-toml.rst @@ -259,6 +259,11 @@ Text string that is a valid SPDX as specified in :doc:`/specifications/license-expression`. Tools SHOULD validate and perform case normalization of the expression. +This key should **only** be specified if the license expression for any +and all distribution files generated from the ``pyproject.toml`` is the +same as the one specified. If the license expression will differ then +it should either be specified as dynamic or not set at all. + Legacy specification '''''''''''''''''''' From 3504230284d0802c38859fcd18f9ca59970daaec Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Wed, 10 Sep 2025 12:30:49 -0700 Subject: [PATCH 2/5] Add a history entry --- source/specifications/pyproject-toml.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/source/specifications/pyproject-toml.rst b/source/specifications/pyproject-toml.rst index c94e78d83..7950bccbc 100644 --- a/source/specifications/pyproject-toml.rst +++ b/source/specifications/pyproject-toml.rst @@ -545,5 +545,8 @@ History - December 2024: The ``license`` key was redefined, the ``license-files`` key was added and ``License::`` classifiers were deprecated through :pep:`639`. +- September 2025: Clarity that the ``license`` key applies to all distribution + files generated from the ``pyproject.toml`` file. + .. _TOML: https://toml.io From b947936259353b85c34252dc01c2e11a97762482 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Mon, 15 Sep 2025 17:09:25 +0100 Subject: [PATCH 3/5] Apply suggestion from @webknjaz MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: 🇺🇦 Sviatoslav Sydorenko (Святослав Сидоренко) --- source/specifications/pyproject-toml.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/specifications/pyproject-toml.rst b/source/specifications/pyproject-toml.rst index 7950bccbc..4a14615b9 100644 --- a/source/specifications/pyproject-toml.rst +++ b/source/specifications/pyproject-toml.rst @@ -260,7 +260,7 @@ as specified in :doc:`/specifications/license-expression`. Tools SHOULD validate and perform case normalization of the expression. This key should **only** be specified if the license expression for any -and all distribution files generated from the ``pyproject.toml`` is the +and all distribution files generated from the :file:`pyproject.toml` is the same as the one specified. If the license expression will differ then it should either be specified as dynamic or not set at all. From ed6f9704411531d46756ef7b49f7109aa73fd6e6 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Mon, 15 Sep 2025 17:09:31 +0100 Subject: [PATCH 4/5] Apply suggestion from @webknjaz MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: 🇺🇦 Sviatoslav Sydorenko (Святослав Сидоренко) --- source/specifications/pyproject-toml.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/specifications/pyproject-toml.rst b/source/specifications/pyproject-toml.rst index 4a14615b9..3c47b9d50 100644 --- a/source/specifications/pyproject-toml.rst +++ b/source/specifications/pyproject-toml.rst @@ -546,7 +546,7 @@ History added and ``License::`` classifiers were deprecated through :pep:`639`. - September 2025: Clarity that the ``license`` key applies to all distribution - files generated from the ``pyproject.toml`` file. + files generated from the :file:`pyproject.toml` file. .. _TOML: https://toml.io From 3851b070abb3ed435f1b52572593e96970eb9431 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Mon, 15 Sep 2025 17:11:00 +0100 Subject: [PATCH 5/5] Fix wording in pyproject-toml.rst license section --- source/specifications/pyproject-toml.rst | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/source/specifications/pyproject-toml.rst b/source/specifications/pyproject-toml.rst index 3c47b9d50..bb0e56ff7 100644 --- a/source/specifications/pyproject-toml.rst +++ b/source/specifications/pyproject-toml.rst @@ -260,9 +260,10 @@ as specified in :doc:`/specifications/license-expression`. Tools SHOULD validate and perform case normalization of the expression. This key should **only** be specified if the license expression for any -and all distribution files generated from the :file:`pyproject.toml` is the -same as the one specified. If the license expression will differ then -it should either be specified as dynamic or not set at all. +and all distribution files created by a build backend using the +:file:`pyproject.toml` is the same as the one specified. If the license +expression will differ then it should either be specified as dynamic or +not set at all. Legacy specification ''''''''''''''''''''