From c2cee964456819aec136e5a6fa58baf84aa3e60b Mon Sep 17 00:00:00 2001 From: Roman Donchenko Date: Sun, 20 Apr 2025 01:55:02 +0300 Subject: [PATCH] Switch license metadata to the PEP 639 format Also, include all license files for the vendored dependencies inside the wheel, and in the `License-File` package metadata field. License files are included in distributions automatically, so remove them from `MANIFEST.in`. --- MANIFEST.in | 4 ---- news/13335.process.rst | 3 +++ pyproject.toml | 12 ++++++++---- 3 files changed, 11 insertions(+), 8 deletions(-) create mode 100644 news/13335.process.rst diff --git a/MANIFEST.in b/MANIFEST.in index 95e966d9624..998cb4f485e 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,5 +1,3 @@ -include AUTHORS.txt -include LICENSE.txt include NEWS.rst include README.rst include SECURITY.md @@ -12,8 +10,6 @@ include build-project/.python-version include src/pip/_vendor/README.rst include src/pip/_vendor/vendor.txt -recursive-include src/pip/_vendor *LICENSE* -recursive-include src/pip/_vendor *COPYING* include docs/requirements.txt diff --git a/news/13335.process.rst b/news/13335.process.rst new file mode 100644 index 00000000000..9a38395bba0 --- /dev/null +++ b/news/13335.process.rst @@ -0,0 +1,3 @@ +pip's own licensing metadata now follows PEP 639. +In addition, the licenses of pip's vendored dependencies are now included +in the ``License-File`` metadata field and in the wheel. diff --git a/pyproject.toml b/pyproject.toml index 5bc7f455140..1c18a9c8cf6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,11 +4,16 @@ dynamic = ["version"] name = "pip" description = "The PyPA recommended tool for installing Python packages." readme = "README.rst" -license = {text = "MIT"} +license = "MIT" +license-files = [ + "AUTHORS.txt", + "LICENSE.txt", + "src/pip/_vendor/**/*COPYING*", + "src/pip/_vendor/**/*LICENSE*", +] classifiers = [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", "Topic :: Software Development :: Build Tools", "Programming Language :: Python", "Programming Language :: Python :: 3", @@ -40,8 +45,7 @@ Source = "https://github.com/pypa/pip" Changelog = "https://pip.pypa.io/en/stable/news/" [build-system] -# The lower bound is for . -requires = ["setuptools>=67.6.1"] +requires = ["setuptools>=77"] build-backend = "setuptools.build_meta" [tool.setuptools]