tkf / emacs-jedi

Python auto-completion for Emacs
http://tkf.github.io/emacs-jedi/latest/
666 stars 89 forks source link

jedi mode startup python ImportError #176

Open lgp171188 opened 10 years ago

lgp171188 commented 10 years ago
deferred error : (error "Server may raise an error. Use \"M-x epc:pop-to-last-server-process-buffer RET\" to see full traceback:
Traceback (most recent call last):
  File \"/home/guruprasad/.emacs.d/.python-environments/default/bin/jediepcserver\", line 5, in <module>
    from pkg_resources import load_entry_point
  File \"/home/guruprasad/.emacs.d/.python-environments/default/local/lib/python2.7/site-packages/pkg_resources.py\", line 33, in <module>
    import plistlib
  File \"/usr/lib/python2.7/plistlib.py\", line 62, in <module>
    import datetime
ImportError: No module named datetime
")

Getting this error with Emacs 24.3+1-5+b1 on Debian unstable with latest updates installed. This makes jedi unusable.

lgp171188 commented 10 years ago

Jedi setup info:

;; Emacs Lisp version:
(:emacs-version "24.3.1" :jedi-version "0.2.0alpha2" :python-environment-version "0.0.2alpha0")
;; Python version:
nil
;; EPC error:
(:get-epc-error
 (error "Server may raise an error. Use \"M-x epc:pop-to-last-server-process-buffer RET\" to see full traceback:\nTraceback (most recent call last):\n  File \"/home/guruprasad/.emacs.d/.python-environments/default/bin/jediepcserver\", line 5, in <module>\n    from pkg_resources import load_entry_point\n  File \"/home/guruprasad/.emacs.d/.python-environments/default/local/lib/python2.7/site-packages/pkg_resources.py\", line 33, in <module>\n    import plistlib\n  File \"/usr/lib/python2.7/plistlib.py\", line 62, in <module>\n    import datetime\nImportError: No module named datetime\n"))
;; Command line:
(:virtualenv "/usr/bin/virtualenv" :virtualenv-version "1.11.6\n")
;; Customization:
((jedi:complete-on-dot . t)
 (jedi:doc-display-buffer . display-buffer)
 (jedi:doc-hook view-mode)
 (jedi:doc-mode . rst-mode)
 (jedi:environment-root)
 (jedi:environment-virtualenv)
 (jedi:get-in-function-call-delay . 1000)
 (jedi:get-in-function-call-timeout . 3000)
 (jedi:goto-definition-config
  (nil nil nil)
  (t nil nil)
  (nil definition nil)
  (t definition nil)
  (nil nil t)
  (t nil t)
  (nil definition t)
  (t definition t))
 (jedi:goto-definition-marker-ring-length . 16)
 (jedi:imenu-create-index-function . jedi:create-nested-imenu-index)
 (jedi:import-python-el-settings . t)
 (jedi:install-imenu)
 (jedi:install-python-jedi-dev-command "pip" "install" "--upgrade" "git+https://github.com/davidhalter/jedi.git@dev#egg=jedi")
 (jedi:key-complete .
                    [C-tab])
 (jedi:key-goto-definition .
                           [67108910])
 (jedi:key-goto-definition-pop-marker .
                                      [67108908])
 (jedi:key-related-names . "r")
 (jedi:key-show-doc . "d")
 (jedi:server-args)
 (jedi:server-command "/home/guruprasad/.emacs.d/.python-environments/default/bin/jediepcserver")
 (jedi:setup-keys)
 (jedi:tooltip-method pos-tip popup)
 (jedi:use-shortcuts)
 (python-environment-default-root-name . "default")
 (python-environment-directory . "~/.emacs.d/.python-environments")
 (python-environment-virtualenv "virtualenv" "--system-site-packages" "--quiet"))
lgp171188 commented 10 years ago

Looks like this is due to https://bugs.launchpad.net/ubuntu/+source/python2.7/+bug/1368144 (quoting the Ubuntu bug since it came up on top of search results). Deleting the virtual environment used by jedi and recreating with jedi:install-server fixed this. Since this is a change in python, it will be good to document it in the known issues or FAQs.