GitHub 操作工作流中的 pip-sync 失败

时间:2021-03-24 15:54:49

标签: python pip github-actions pip-tools

我正在将 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.6 中,dataclassesblack 的一个依赖项,并且被列为没有被 == 固定。看起来它与specified in the Pipfile的方式有关。

这是 pip-tools、GitHub Actions 或其他方面的问题吗? 非常感谢任何帮助!

0 个答案:

没有答案