Как сделать ссылку на разветвленный пакет в distutils, не нарушая замораживание pip?
Предисловие Официальный пакет Python python-openid
(распространяется через pypi.org) не работает со Службами Google. Кто-то написал исправление к этому и загрузил пропатченный источник в github. Теперь я хочу создать пакет, который должен ссылаться на этот разветвленный пакет.
Теперь при установке этого пакета все хорошо. Разветвленный пакет установлен и все в порядке. Однако при выполнении pip freeze
Там нет упоминания о том, откуда пришла посылка. В качестве разветвленного пакета следует использовать, в том числе и официальный пакет, нарушающий развертывание. Как я могу сделать ссылку на раздвоенный пакет в моем собственном пакете, а также перечислить разветвленный пакет в pip freeze
?
Обновить
Итак, я создал тег 2.2.5-bouke0
, создал дистрибутив и загрузил его на github. мой setup.py
пакета ссылок теперь выглядит так:
dependency_links=[
'http://github.com/Bouke/python-openid/downloads',
],
install_requires=[
'python-openid == 2.2.5-bouke0',
],
При сборке и установке этого пакета все нормально. Ссылочный пакет загружен с github и установлен правильно. Тем не мение, pip freeze
не показывает откуда пришла посылка:
django-federated-login==0.1.3
python-openid==2.2.5-bouke0
Как версия 2.2.5-bouke0
не может быть найдено на Pypi, развертывание такого requirements.txt
не удастся. Как я могу наставлять pip freeze
ссылаться на альтернативный источник, откуда взять пакет?
1 ответ
Сделать тег 2.2.5
в хранилище.
Положил -f https://github.com/adieu/python-openid/downloads
в requirements.txt
файл.
Чтобы быть уверенным, измените номер версии на что-то вроде 2.2.5-bouke1
, Читайте semver.org для деталей.