aboutsummaryrefslogtreecommitdiffstats
path: root/setuptools/monkey.py
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2016-09-04 19:28:08 -0400
committerJason R. Coombs <jaraco@jaraco.com>2016-09-04 19:28:08 -0400
commit57a5c05e6f460260f1339dce37407c724ad4c5e8 (patch)
treea6e7d8a0fa731a405c5a924de1021f81b8e36f58 /setuptools/monkey.py
parentd6efc9424328b42a3c7aeae758bab35bc7df5014 (diff)
downloadexternal_python_setuptools-57a5c05e6f460260f1339dce37407c724ad4c5e8.tar.gz
external_python_setuptools-57a5c05e6f460260f1339dce37407c724ad4c5e8.tar.bz2
external_python_setuptools-57a5c05e6f460260f1339dce37407c724ad4c5e8.zip
Move monkeypatching in package module into monkey.
Diffstat (limited to 'setuptools/monkey.py')
-rw-r--r--setuptools/monkey.py38
1 files changed, 38 insertions, 0 deletions
diff --git a/setuptools/monkey.py b/setuptools/monkey.py
index b6baf49d..189fa4e0 100644
--- a/setuptools/monkey.py
+++ b/setuptools/monkey.py
@@ -2,6 +2,11 @@
Monkey patching of distutils.
"""
+import sys
+import distutils.filelist
+
+import setuptools
+
__all__ = []
"everything is private"
@@ -20,3 +25,36 @@ def _get_unpatched(cls):
"distutils has already been patched by %r" % cls
)
return cls
+
+
+def patch_all():
+ # we can't patch distutils.cmd, alas
+ distutils.core.Command = setuptools.Command
+
+ has_issue_12885 = (
+ sys.version_info < (3, 4, 6)
+ or
+ (3, 5) < sys.version_info <= (3, 5, 3)
+ or
+ (3, 6) < sys.version_info
+ )
+
+ if has_issue_12885:
+ # fix findall bug in distutils (http://bugs.python.org/issue12885)
+ distutils.filelist.findall = setuptools.findall
+
+ needs_warehouse = (
+ sys.version_info < (2, 7, 13)
+ or
+ (3, 0) < sys.version_info < (3, 3, 7)
+ or
+ (3, 4) < sys.version_info < (3, 4, 6)
+ or
+ (3, 5) < sys.version_info <= (3, 5, 3)
+ or
+ (3, 6) < sys.version_info
+ )
+
+ if needs_warehouse:
+ warehouse = 'https://upload.pypi.org/legacy/'
+ distutils.config.PyPIRCCommand.DEFAULT_REPOSITORY = warehouse