summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2021-10-22 15:27:51 -0400
committerJason R. Coombs <jaraco@jaraco.com>2021-10-22 15:27:51 -0400
commitfc5c3083908170e1cbfd1dec91f87a3e2707e3fa (patch)
tree6a7ba24fa3bfc1e4afb2430be24b6d589cd3e2a9
parent18b997db3e74d179af12175bff3d1a37006017fc (diff)
downloadpython-setuptools-git-fc5c3083908170e1cbfd1dec91f87a3e2707e3fa.tar.gz
Deprecate setup.py install and easy_install. Ref #917.
-rw-r--r--changelog.d/917.change.rst1
-rw-r--r--pytest.ini4
-rw-r--r--setuptools/command/easy_install.py6
-rw-r--r--setuptools/command/install.py7
4 files changed, 18 insertions, 0 deletions
diff --git a/changelog.d/917.change.rst b/changelog.d/917.change.rst
new file mode 100644
index 00000000..a2d3f7b8
--- /dev/null
+++ b/changelog.d/917.change.rst
@@ -0,0 +1 @@
+``setup.py install`` and ``easy_install`` commands are now officially deprecated. Use other standards-based installers (like pip) and builders (like build). Workloads reliant on this behavior should pin to this major version of Setuptools.
diff --git a/pytest.ini b/pytest.ini
index f81b6cfb..c7b62cc6 100644
--- a/pytest.ini
+++ b/pytest.ini
@@ -29,3 +29,7 @@ filterwarnings=
# https://github.com/pypa/setuptools/issues/2823
ignore:setup_requires is deprecated.
+
+ # https://github.com/pypa/setuptools/issues/917
+ ignore:setup.py install is deprecated.
+ ignore:easy_install command is deprecated.
diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py
index b88c3e9a..1aed0e87 100644
--- a/setuptools/command/easy_install.py
+++ b/setuptools/command/easy_install.py
@@ -153,6 +153,12 @@ class easy_install(Command):
create_index = PackageIndex
def initialize_options(self):
+ warnings.warn(
+ "easy_install command is deprecated. "
+ "Use build and pip and other standards-based tools.",
+ EasyInstallDeprecationWarning,
+ )
+
# the --user option seems to be an opt-in one,
# so the default should be False.
self.user = 0
diff --git a/setuptools/command/install.py b/setuptools/command/install.py
index 72b9a3e4..35e54d20 100644
--- a/setuptools/command/install.py
+++ b/setuptools/command/install.py
@@ -30,6 +30,13 @@ class install(orig.install):
_nc = dict(new_commands)
def initialize_options(self):
+
+ warnings.warn(
+ "setup.py install is deprecated. "
+ "Use build and pip and other standards-based tools.",
+ setuptools.SetuptoolsDeprecationWarning,
+ )
+
orig.install.initialize_options(self)
self.old_and_unmanageable = None
self.single_version_externally_managed = None