Issues

Issue #211 new

wipeenv does not work when "pip install -e" was used

Marco Lovato
created an issue

I installed a package with -e option. Was debugging legit from github.

I had to change reqs.txt file from Legit because there is a dependency problem, as filled here: https://github.com/kennethreitz/legit/issues/120

Then:


marco.lovato@lovato:~/code/python $ workon sandbox

(sandbox)marco.lovato@lovato:~/code/python $ git clone https://github.com/kennethreitz/legit.git

(sandbox)marco.lovato@lovato:~/code/python (develop) $ cd legit/

(sandbox)marco.lovato@lovato:~/code/python/legit (develop) $ pip install -e .

<stuff>

Successfully installed clint gitpython legit gitdb async smmap

(sandbox)marco.lovato@lovato:~/code/python/legit (develop) $ wipeenv

Uninstalling packages: GitPython==0.3.2.RC1 argparse==1.2.1 async==0.6.1 clint==0.3.1 gitdb==0.5.4 -e git+https://github.com/kennethreitz/legit.git@3c4d3214811c7892edf903682fdbb44f4050b99a#egg=legit-origin/develop smmap==0.8.2

Usage:
pip uninstall [options] <package> ... pip uninstall [options] -r <requirements file> ...

no such option: -e


If I do a pip-freeze, I see the same problem.

So don't know if you can work it around, or just avoid the exception, and move to next valid package.

Please, feel free to change priority. Its not affecting my work.

Best.

Comments (7)

  1. Doug Hellmann repo owner

    I'm not able to install legit using the URL above because it depends on a version of another package that is not available on pypi. I added some other tests for locally packages, but those work without modifying wipeenv at all.

    Is this still a problem? Is the legit dependency specified in the description accurate?

  2. Vebjorn Ljosa

    Yes, it's still a problem. For instance, I had the following line in my requirements.txt:

    -e git+https://github.com/ljosa/django-js-utils.git#egg=django_js_utils-dev
    

    A workaround is to pip uninstall all the modules that were installed with -e before running wipeenv.

  3. Pavel Savchenko

    This often happens to me when I try to wipeenv for packages that use pip install -e .[test] in their test runner. As described here and e.g used here. My workaround is to manually rm the package.egg-info directory.

  4. Michael Pacer

    I just ran into this as well — while it does seem to affect relatively few people, it would be useful to point out Pavel Savchenko's solution in the raised exception as it solves the problem. I don't know what the downside would be to automatically removing package.egg-infos from the environment as part of the wipeenv command if that really is the only problem as it would seem to be in keeping with the intention of the wipeenv command…but I'm also new to dealing with these kinds of issues, so I could be horribly wrong. But I'd be interested to know why I'm wrong if I am.

  5. Log in to comment