Подтвердить что ты не робот

Pip freeze> требование .txt

Я получаю следующую ошибку с этой командой:

$pip freeze > requirements.txt 
Warning: cannot find svn location for distribute==0.6.16dev-r0

Это файл моих требований .txt заранее:

Django==1.3
django-registration==0.7
4b9b3361

Ответ 1

Во-первых, я бы отметил, что это не ошибка, а скорее предупреждение (хотя оно серьезное).

Это кажется открытой проблемой в pip, судя по этой странице вопроса в репозитории github. Проблема возникает, когда pip устанавливает что-то версию разработки, которая хранится в репозитории, который не является SVN. В одном примере, на странице с информацией о проблемах:

mkvirtualenv test --no-site-packages
workon test
pip install flask==dev
pip freeze > requirements.txt

Он напечатает этот результат до стандартной ошибки:

Warning: cannot find svn location for Flask==0.9-devdev-20120114

Но файл все равно будет иметь:

## FIXME: could not find svn URL in dependency_links for this package:
Flask==0.9-devdev-20120114
Jinja2==2.6
Werkzeug==0.8.2
wsgiref==0.1.2

Однако я не смогу использовать этот файл в будущем для установки Flask. См. Здесь:

mkvirtualenv test2 --no-site-packages
workon test2
pip install -r requirements.txt

Выведет ошибку:

Downloading/unpacking Flask==0.9-devdev-20120114 (from -r requirements.txt (line 2))
Could not find a version that satisfies the requirement Flask==0.9-devdev-20120114 (from -r requirements.txt (line 2)) (from versions: )
No distributions matching the version for Flask==0.9-devdev-20120114 (from -r requirements.txt (line 2))
Storing complete log in /Users/dgrtwo/.pip/pip.log

Ответ 2

sudo pip install --upgrade distribute

Ответ 3

Не хватает комментариев для комментариев, но sudo pip install --upgrade distribute borked my pip. Версия 1.4.1. После выполнения этой команды, pip freeze дает AssertionError.

Исправление для THAT sudo pip install setuptools==7.0

Два комбинированных решения устраняли предупреждение svn URL.

Ответ 4

Я столкнулся с той же проблемой, пытаясь создать проект django и развернуть его на герою. Я думаю, проблема связана с наличием нескольких копий django. Удаление django, расположенного в

/usr/local/lib/python2.7/dist-packages/django

и переустановка, похоже, решила проблему. Я смог создать requirements.txt без предупреждения.

Ответ 5

Идея Рона устроила мою установку на пипетке, и исправление MikeTwo не исправило.

В итоге я удалил pip и переустановил, как найдено здесь (комментарий UzLA). Удалить пакет:

sudo apt-get remove --auto-remove python-pip  

Загрузите официальный установщик:

wget https://bootstrap.pypa.io/get-pip.py 

установите его:

sudo python get-pip.py  

pip freeze работал после этого. Он дал SNIMissingWarning и InsecurePlatformWarning, см. документы, но это не проблема.

Примечание: источник этого исправления, который имеет 4-й шаг, для установки символической ссылки из /usr/local/bin/pip в/usr/bin. Это может быть необязательно. Попробуйте stat /usr/local/bin/pip. Это должно сообщать обычный файл размером 200 байт или около того. Вы можете less /usr/local/bin/pip посмотреть, что в нем. Затем выполните echo $PATH, чтобы проверить, существует ли /usr/local/bin. Если это так, символическая ссылка не нужна.