我正在将 Python 项目转换为使用 pip-tools。我创建了新*.in
文件,记录了我的项目要求,并在我的 中有以下目标Makefile
:
update-deps:
pip-compile -U --generate-hashes --allow-unsafe requirements/prod.in
pip-compile -U --generate-hashes --allow-unsafe requirements/dev.in
dev-install:
pip-sync requirements/*.txt
pip install -e .
我有一个 virtualenv 设置,可以在我的本地成功运行这两个目标。但是,当dev-install
目标在 GitHub 操作工作流程中运行时,我收到以下错误:
ERROR: In --require-hashes mode, all requirements must have their versions pinned with ==. These do not:
.
.
.
我的项目针对不同版本的 Python 运行测试矩阵,列出的罪魁祸首依赖项因执行测试的 Python 版本而异。例如,在 Python 3.6dataclasses
中是 的依赖项,black
并且被列为不固定于==
. 看起来它与Pipfile 中的指定方式有关。
这是pip-tools
GitHub Actions 或其他问题的问题吗?任何帮助是极大的赞赏!