向 requirements.txt 添加一个条目,其中包含哈希值

Add an entry to requirements.txt that has hash values in it

我习惯于看到 requirements.txt 有可选的库和关联的 [最低] 版本。

pandas==1.0.4

在我现在正在处理的现有项目中,我们有这样的库条目:

argcomplete==1.12.3 \
    --hash=sha256:291f0beca7fd49ce285d2f10e4c1c77e9460cf823eef2de54df0c0fec88b0d81 \
    --hash=sha256:2c7dbffd8c045ea534921e63b0be6fe65e88599990d8dc408ac8c542b72a5445
asgiref==3.4.1; python_version >= "3.6" \
    --hash=sha256:ffc141aa908e6f175673e7b1b3b7af4fdb0ecb738fc5c8b88f69f055c2415214 \
    --hash=sha256:4ef1ab46b484e3c706329cedeff284a5d40824200638503f5768edb6de7d58e9
certifi==2021.5.30; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6" \
    --hash=sha256:50b1e4f8446b06f41be7dd6338db18e0990601dce795c2b1686458aa7e8fa7d8 \
    --hash=sha256:2bbf76fd432960138b3ef6dda3dde0544f27cbf8546c458e60baf371917ba9ee
cffi==1.14.6; python_version >= "3.6" \
    --hash=sha256:22b9c3c320171c108e903d61a3723b51e37aaa8c81255b5e7ce102775bd01e2c \
    --hash=sha256:f0c5d1acbfca6ebdd6b1e3eded8d261affb6ddcf2186205518f1428b8569bb99 \
    --hash=sha256:99f27fefe34c37ba9875f224a8f36e31d744d8083e00f520f133cab79ad5e819 \
    --hash=sha256:55af55e32ae468e9946f741a5d51f9896da6b9bf0bbdd326843fec05c730eb20 \

该项目确实使用了 poetry - 这可能是文件的生成器?它是如何生成这个文件的,我如何添加我的新依赖项 - 即 pytest 7.0.0 ?

首先使用 Poetry CLI 添加库 add command:

poetry add 'pandas==1.0.4'

或除 ==1.0.4 以外的任何其他 version constraints 您可能想要的。

然后生成需求文件 export command:

poetry export --format requirements.txt --output requirements.txt