This commit is contained in:
Roman Donchenko 2023-11-21 03:08:23 +09:00 committed by GitHub
commit 7c9068d24e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 69 additions and 78 deletions

1
news/11909.process.rst Normal file
View File

@ -0,0 +1 @@
Most project metadata is now defined statically via pip's ``pyproject.toml`` file.

View File

@ -1,7 +1,72 @@
[project]
dynamic = ["version", "scripts"]
name = "pip"
description = "The PyPA recommended tool for installing Python packages."
readme = "README.rst"
license = {text = "MIT"}
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",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
]
authors = [
{name = "The pip developers", email = "distutils-sig@python.org"},
]
# NOTE: requires-python is duplicated in __pip-runner__.py.
# When changing this value, please change the other copy as well.
requires-python = ">=3.7"
[project.urls]
Homepage = "https://pip.pypa.io/"
Documentation = "https://pip.pypa.io"
Source = "https://github.com/pypa/pip"
Changelog = "https://pip.pypa.io/en/stable/news/"
[build-system]
requires = ["setuptools", "wheel"]
# The lower bound is for <https://github.com/pypa/setuptools/issues/3865>.
requires = ["setuptools>=67.6.1", "wheel"]
build-backend = "setuptools.build_meta"
[tool.setuptools]
package-dir = {"" = "src"}
include-package-data = false
[tool.setuptools.dynamic]
version = {attr = "pip.__version__"}
[tool.setuptools.packages.find]
where = ["src"]
exclude = ["contrib", "docs", "tests*", "tasks"]
[tool.setuptools.package-data]
"pip" = ["py.typed"]
"pip._vendor" = ["vendor.txt"]
"pip._vendor.certifi" = ["*.pem"]
"pip._vendor.requests" = ["*.pem"]
"pip._vendor.distlib._backport" = ["sysconfig.cfg"]
"pip._vendor.distlib" = [
"t32.exe",
"t64.exe",
"t64-arm.exe",
"w32.exe",
"w64.exe",
"w64-arm.exe",
]
[tool.towncrier]
# For finding the __version__
package = "pip"

View File

@ -1,79 +1,8 @@
import os
import sys
from setuptools import find_packages, setup
def read(rel_path: str) -> str:
here = os.path.abspath(os.path.dirname(__file__))
# intentionally *not* adding an encoding option to open, See:
# https://github.com/pypa/virtualenv/issues/201#issuecomment-3145690
with open(os.path.join(here, rel_path)) as fp:
return fp.read()
def get_version(rel_path: str) -> str:
for line in read(rel_path).splitlines():
if line.startswith("__version__"):
# __version__ = "0.9"
delim = '"' if '"' in line else "'"
return line.split(delim)[1]
raise RuntimeError("Unable to find version string.")
long_description = read("README.rst")
from setuptools import setup
setup(
name="pip",
version=get_version("src/pip/__init__.py"),
description="The PyPA recommended tool for installing Python packages.",
long_description=long_description,
license="MIT",
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",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
],
url="https://pip.pypa.io/",
project_urls={
"Documentation": "https://pip.pypa.io",
"Source": "https://github.com/pypa/pip",
"Changelog": "https://pip.pypa.io/en/stable/news/",
},
author="The pip developers",
author_email="distutils-sig@python.org",
package_dir={"": "src"},
packages=find_packages(
where="src",
exclude=["contrib", "docs", "tests*", "tasks"],
),
package_data={
"pip": ["py.typed"],
"pip._vendor": ["vendor.txt"],
"pip._vendor.certifi": ["*.pem"],
"pip._vendor.requests": ["*.pem"],
"pip._vendor.distlib._backport": ["sysconfig.cfg"],
"pip._vendor.distlib": [
"t32.exe",
"t64.exe",
"t64-arm.exe",
"w32.exe",
"w64.exe",
"w64-arm.exe",
],
},
entry_points={
"console_scripts": [
"pip=pip._internal.cli.main:main",
@ -81,8 +10,4 @@ setup(
"pip{}.{}=pip._internal.cli.main:main".format(*sys.version_info[:2]),
],
},
zip_safe=False,
# NOTE: python_requires is duplicated in __pip-runner__.py.
# When changing this value, please change the other copy as well.
python_requires=">=3.7",
)

View File

@ -406,7 +406,7 @@ class KeyringSubprocessResult(KeyringModuleV1):
stdin: Optional[Any] = None,
stdout: Optional[Any] = None,
input: Optional[bytes] = None,
check: Optional[bool] = None
check: Optional[bool] = None,
) -> Any:
if cmd[1] == "get":
assert stdin == -3 # subprocess.DEVNULL