Я хотел бы иметь возможность генерировать колеса для всех зависимостей в Pipfile.lock
, используя при этом проверку хэша. До версии 11.1.2 это можно было сделать с помощью:
pipenv lock -r > reqs.txt
pip wheel -r reqs.txt
_(#1417 был проблематичным для этого рабочего процесса, но в остальном он работал)_
В версии 11.1.2 хэши были удалены из вывода в стиле требований, что (на самом деле) означает, что невозможно создать/загрузить проверенные хэшем колеса из файла блокировки.
Вариант использования — упаковать модули Python для автономной установки или установки без инструментов компиляции/разработки на сервере. Колеса можно построить, затем распространить и установить в минимальной среде Python.
Эту функциональность вы хотели бы включить в проект? Если нет, есть ли способ снова поддержать этот рабочий процесс?
на данный момент планов на это нет
это звучит как отличная возможность для инструмента pipenv-wheels
.
На всякий случай, если кто-то ищет здесь решение, это довольно просто (при условии, что внутренние компоненты pipenv
не меняются):
from pipenv.utils import convert_deps_to_pip
with open('Pipfile.lock') as f:
deps = json.load(f)['default']
# remove local project which wouldn't have a hash
for k, v in list(deps.items()):
if v.get('path') == '.':
del(deps[k])
path_to_requirements_file_with_hashes = convert_deps_to_pip(deps)
Самый полезный комментарий
На всякий случай, если кто-то ищет здесь решение, это довольно просто (при условии, что внутренние компоненты
pipenv
не меняются):