Closed danieldjewell closed 3 years ago
Thanks for the info. Do you know what we should use instead?
A PR which fixes this in a backwards compatible way is welcome.
Do you know what we should use instead?
From https://github.com/pypa/setuptools/issues/917, It is pip.
A quick workaround that works with python3 (not backward compatible)
diff --git a/anaconda-mode.py b/anaconda-mode.py
index 7552f49..89d643b
--- a/anaconda-mode.py
+++ b/anaconda-mode.py
@@ -3,6 +3,8 @@ from __future__ import print_function
import sys
import os
from distutils.version import LooseVersion
+import subprocess
+
# CLI arguments.
@@ -52,13 +54,10 @@ instrument_installation()
def install_deps():
import site
- import setuptools.command.easy_install
site.addsitedir(server_directory)
- cmd = ['--install-dir', server_directory,
- '--site-dirs', server_directory,
- '--always-copy','--always-unzip']
+ cmd = [sys.executable, '-m', 'pip', 'install', '--target', server_directory]
cmd.extend(missing_dependencies)
- setuptools.command.easy_install.main(cmd)
+ subprocess.check_call(cmd)
instrument_installation()
if missing_dependencies:
Thanks @shanavas786 I took your changes for Python 3+ installations and keep setuptools for Python2.
If someone can check the PR and verify that it works, I would merge it in master.
This: https://github.com/pypa/setuptools/commit/2885ca26494e6f555fae85f8f9983c2361c93829 commit to setuptools removes main() from easy_install.
This causes anaconda-mode to fail here: https://github.com/pythonic-emacs/anaconda-mode/blob/b1875a5d0ec9885c1c42558c126b93ee6bcedaa6/anaconda-mode.el#L151