python-rope / ropevim

vim mode that uses rope library to provide features like python refactorings and code-assists
GNU General Public License v2.0
245 stars 34 forks source link

Does ropevim work with Python 3? #32

Closed bderrett closed 9 years ago

bderrett commented 9 years ago

I have installed the rope_py3k package. When I try to install ropevim I get the error

Downloading/unpacking ropevim
  Downloading ropevim-0.4.tar.gz
  Running setup.py (path:/tmp/pip_build_root/ropevim/setup.py) egg_info for package ropevim

    warning: no files found matching '*.py' under directory 'ropemode'
Downloading/unpacking rope>=0.9.4 (from ropevim)
  Downloading rope-0.10.2.tar.gz (221kB): 221kB downloaded
  Running setup.py (path:/tmp/pip_build_root/rope/setup.py) egg_info for package rope
    Traceback (most recent call last):
      File "<string>", line 17, in <module>
      File "/tmp/pip_build_root/rope/setup.py", line 5, in <module>
        import ropetest
      File "/tmp/pip_build_root/rope/ropetest/__init__.py", line 4, in <module>
        import ropetest.projecttest
      File "/tmp/pip_build_root/rope/ropetest/projecttest.py", line 9, in <module>
        from rope.base.libutils import path_to_resource
      File "/tmp/pip_build_root/rope/rope/base/libutils.py", line 4, in <module>
        import rope.base.project
      File "/tmp/pip_build_root/rope/rope/base/project.py", line 1, in <module>
        import cPickle as pickle
    ImportError: No module named 'cPickle'
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):

  File "<string>", line 17, in <module>

  File "/tmp/pip_build_root/rope/setup.py", line 5, in <module>

    import ropetest

  File "/tmp/pip_build_root/rope/ropetest/__init__.py", line 4, in <module>

    import ropetest.projecttest

  File "/tmp/pip_build_root/rope/ropetest/projecttest.py", line 9, in <module>

    from rope.base.libutils import path_to_resource

  File "/tmp/pip_build_root/rope/rope/base/libutils.py", line 4, in <module>

    import rope.base.project

  File "/tmp/pip_build_root/rope/rope/base/project.py", line 1, in <module>

    import cPickle as pickle

ImportError: No module named 'cPickle'

As you can see, pip tries to install rope, rather than using rope_py3k. I suppose this means that ropevim is incompatible with Python 3? If this is the case, it should be specified in the documentation.

mcepl commented 9 years ago

I suppose this means that ropevim is incompatible with Python 3?

Exactly, https://github.com/python-rope/rope/issues/57

elvis-sik commented 8 years ago

rope now installs on Python 3, though ropevim does not. I tried using 2to3 with no success. I would really like this, it would be one more nail on my IDE coffin. Any chance to support Py 3?

mcepl commented 8 years ago

Good point, and although https://github.com/python-rope/rope/issues/57 has not been resolved, it might very well soon be. However, unfortunately I have not enough time for dealing with ropevim. Any pull requests will be kindly welcomed, of course. (the same applies to https://github.com/python-rope/ropevim/issues/47 I am afraid, although the fix for that may lie in ropemode).

elvis-sik commented 8 years ago

I don't feel up to the task, but will clone the repo and give it a try. Hopefully someone more knowledgeable will be able to do it.

smheidrich commented 7 years ago

Well, this makes ropevim useless on recent versions of Debian (which switched to compiling vim with Python 3 rather than Python 2 in September 2016).