希望有一个合理的解释,但我刚刚遇到weird issue我在服务器上安装了同一个软件包的多个版本。
我只使用pip安装。我通过运行升级:
pip install --upgrade -r requirements.txt
但是,如果你看一下上面的链接(并总结如下),你会发现我能够使用pip连续两次卸载相同的包。首先卸载了0.15.3版本(我想安装的版本),然后卸载了一个不应该存在的旧版本。
↪ ../.virtualenvs/courtlistener/bin/pip uninstall django_filter
Uninstalling django-filter-0.15.3:
Proceed (y/n)? y
Successfully uninstalled django-filter-0.15.3
# Great. It's uninstalled.
↪ ../.virtualenvs/courtlistener/bin/pip install django_filter
Requirement already satisfied: django_filter in /var/www/.virtualenvs/courtlistener/lib/python2.7/site-packages
# HUH?!
↪ sudo ../.virtualenvs/courtlistener/bin/pip uninstall django_filter
Uninstalling django-filter-0.11.0:
Proceed (y/n)? y
Successfully uninstalled django-filter-0.11.0
我想了解这是怎么发生的,所以我可以肯定它不会再发生。理清是一件非常痛苦的事。
答案 0 :(得分:1)
不幸的是,它有时会发生。刚刚发现了两种可能性(但可能会以不同的方式发生)。
python-pip(1.0-1build1)有一个错误导致程序包无法删除。
pip is not uninstalling packages(查看Oz123答案)。他的建议不是使用发行点。相反,请使用上游的点子。
刚刚测试过easy_install,它没有删除软件包:
'//div[@class="search0013"]/input'
在这种情况下,建议不要使用easy_install。
Why use pip over easy_install?(接受的答案有更多原因)。