Add configuration for using vendoring
@@ -18,3 +18,42 @@ type = [
{ 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/automation/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' },
+]
+drop = [
+ # contains unnecessary scripts
+ "bin/",
+ # interpreter and OS specific msgpack libs
+ "msgpack/*.so",
+ # unneeded parts of setuptools
+ "easy_install.py",
+ "setuptools",
+ "pkg_resources/_vendor/",
+ "pkg_resources/extern/",
+]
+
+[tool.vendoring.typing-stubs]
+six = ["six.__init__", "six.moves.__init__", "six.moves.configparser"]
+appdirs = []
+contextlib2 = []
+
+[tool.vendoring.license.directories]
+setuptools = "pkg_resources"
+msgpack-python = "msgpack"
+
+[tool.vendoring.license.fallback-urls]
+pytoml = "https://github.com/avakar/pytoml/raw/master/LICENSE"
+webencodings = "https://github.com/SimonSapin/python-webencodings/raw/master/LICENSE"
