pythonic-emacs / anaconda-mode

Code navigation, documentation lookup and completion for Python.
GNU General Public License v3.0
707 stars 87 forks source link

Setup without easy install #340

Closed jkaye2012 closed 4 years ago

jkaye2012 commented 5 years ago

Hi all,

After a recent upgrade, completion in anaconda-mode buffers is broken for me. Other buffers complete fine (as does the inferior repl), which points to an issue in anaconda-mode.

anaconda-mode contains the following message repeatedly:

Traceback (most recent call last):
  File "<string>", line 61, in <module>
AttributeError: 'list' object has no attribute 'clear'

Thanks!

wailo commented 5 years ago

Guessing: (defun anaconda-mode-port () (process-get anaconda-mode-process 'port))

This function returns nils.

jkaye2012 commented 5 years ago

This was being caused by the way that Anaconda expects its dependencies to be loaded/installed. It's currently using eggs that must be installed by easy_install, which does not support many of the pip configurations that are often required to get at external packages (e.g. from within a corporate network).

Is there any way to leverage pip instead of easy_install to get these dependencies (jedi, parso, and service_factory). I ended up having to manually download each of these packages and running easy_install pointed to my own machine as the pypi index.

CeleritasCelery commented 4 years ago

So long as the dependencies are already installed, you can work around this by adding the following empty directories to the directory stored in (anaconda-mode-server-directory) (typically ~/.emacs.d/anaconda-mode/<version>)

jedi.egg
service_factory.egg