summaryrefslogtreecommitdiff
path: root/pyproject.toml
blob: 139c37e18d743e63740b84008a360cc02b61d723 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
[build-system]
requires = ["setuptools", "wheel"]
build-backend = "setuptools.build_meta"

[tool.towncrier]
# For finding the __version__
package = "pip"
package_dir = "src"
# For writing into the correct file
filename = "NEWS.rst"
# For finding the news fragments
directory = "news/"

# For rendering properly for this project
issue_format = "`#{issue} <https://github.com/pypa/pip/issues/{issue}>`_"
template = "tools/news/template.rst"

# Grouping of entries, within our changelog
type = [
  { name = "Process",                   directory = "process", showcontent = true },
  { name = "Deprecations and Removals", directory = "removal", showcontent = true },
  { name = "Features",                  directory = "feature", showcontent = true },
  { name = "Bug Fixes",                 directory = "bugfix",  showcontent = true },
  { name = "Vendored Libraries",        directory = "vendor",  showcontent = true },
  { name = "Improved Documentation",    directory = "doc",     showcontent = true },
  { name = "Trivial Changes",           directory = "trivial", showcontent = false },
]

[tool.vendoring]
destination = "src/pip/_vendor/"
requirements = "src/pip/_vendor/vendor.txt"
namespace = "pip._vendor"

protected-files = ["__init__.py", "README.rst", "vendor.txt"]
patches-dir = "tools/vendoring/patches"

[tool.vendoring.transformations]
substitute = [
  # pkg_resource's vendored packages are directly vendored in pip.
  { match='pkg_resources\.extern', replace="pip._vendor" },
  { match='from \.extern', replace="from pip._vendor" },
  { match='''\('pygments\.lexers\.''', replace="('pip._vendor.pygments.lexers." },
]
drop = [
  # contains unnecessary scripts
  "bin/",
  # interpreter and OS specific msgpack libs
  "msgpack/*.so",
  # unneeded parts of setuptools
  "easy_install.py",
  "setuptools",
  "pkg_resources/_vendor/",
  "_distutils_hack",
  "distutils-precedence.pth",
  "pkg_resources/extern/",
  # trim vendored pygments styles and lexers
  "pygments/styles/[!_]*.py",
  '^pygments/lexers/(?!python|__init__|_mapping).*\.py$',
  # trim rich's markdown support
  "rich/markdown.py",
]

[tool.vendoring.typing-stubs]
six = ["six.__init__", "six.moves.__init__", "six.moves.configparser"]
distro = []

[tool.vendoring.license.directories]
setuptools = "pkg_resources"

[tool.vendoring.license.fallback-urls]
CacheControl = "https://raw.githubusercontent.com/ionrock/cachecontrol/v0.12.6/LICENSE.txt"
distlib = "https://bitbucket.org/pypa/distlib/raw/master/LICENSE.txt"
webencodings = "https://github.com/SimonSapin/python-webencodings/raw/master/LICENSE"