aboutsummaryrefslogtreecommitdiffstats
path: root/setuptools/command/easy_install.py
diff options
context:
space:
mode:
authorJohannes Reiff <mail@jreiff.de>2019-12-19 14:06:22 +0100
committerJohannes Reiff <mail@jreiff.de>2019-12-19 14:06:22 +0100
commit72993bc1839f6f2ee3e04539a85410d837d3bf98 (patch)
treeb776c4712c03f6e3e80bb3a4ff9af1df7353b58f /setuptools/command/easy_install.py
parent1d03fdc94c3676a5b675ec7d818d48c6a772fb49 (diff)
downloadexternal_python_setuptools-72993bc1839f6f2ee3e04539a85410d837d3bf98.tar.gz
external_python_setuptools-72993bc1839f6f2ee3e04539a85410d837d3bf98.tar.bz2
external_python_setuptools-72993bc1839f6f2ee3e04539a85410d837d3bf98.zip
Make easy_install command less strict (fixes #1405)
Diffstat (limited to 'setuptools/command/easy_install.py')
-rw-r--r--setuptools/command/easy_install.py24
1 files changed, 10 insertions, 14 deletions
diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py
index 09066f8c..e979d2aa 100644
--- a/setuptools/command/easy_install.py
+++ b/setuptools/command/easy_install.py
@@ -156,19 +156,16 @@ class easy_install(Command):
"allow building eggs from local checkouts"),
('version', None, "print version information and exit"),
('no-find-links', None,
- "Don't load find-links defined in packages being installed")
+ "Don't load find-links defined in packages being installed"),
+ ('user', None, "install in user site-package '%s'" % site.USER_SITE)
]
boolean_options = [
'zip-ok', 'multi-version', 'exclude-scripts', 'upgrade', 'always-copy',
'editable',
- 'no-deps', 'local-snapshots-ok', 'version'
+ 'no-deps', 'local-snapshots-ok', 'version',
+ 'user'
]
- if site.ENABLE_USER_SITE:
- help_msg = "install in user site-package '%s'" % site.USER_SITE
- user_options.append(('user', None, help_msg))
- boolean_options.append('user')
-
negative_opt = {'always-unzip': 'zip-ok'}
create_index = PackageIndex
@@ -272,6 +269,9 @@ class easy_install(Command):
self.config_vars['userbase'] = self.install_userbase
self.config_vars['usersite'] = self.install_usersite
+ elif self.user:
+ log.warn("WARNING: The user site-packages directory is disabled.")
+
self._fix_install_dir_for_user_site()
self.expand_basedirs()
@@ -478,8 +478,9 @@ class easy_install(Command):
self.cant_write_to_target()
if not is_site_dir and not self.multi_version:
- # Can't install non-multi to non-site dir
- raise DistutilsError(self.no_default_version_msg())
+ # Can't install non-multi to non-site dir with easy_install
+ pythonpath = os.environ.get('PYTHONPATH', '')
+ log.warn(self.__no_default_msg, self.install_dir, pythonpath)
if is_site_dir:
if self.pth_file is None:
@@ -1309,10 +1310,6 @@ class easy_install(Command):
Please make the appropriate changes for your system and try again.""").lstrip()
- def no_default_version_msg(self):
- template = self.__no_default_msg
- return template % (self.install_dir, os.environ.get('PYTHONPATH', ''))
-
def install_site_py(self):
"""Make sure there's a site.py in the target dir, if needed"""
@@ -2344,4 +2341,3 @@ def _patch_usage():
class EasyInstallDeprecationWarning(SetuptoolsDeprecationWarning):
"""Class for warning about deprecations in EasyInstall in SetupTools. Not ignored by default, unlike DeprecationWarning."""
-