根据pip documentation,可以在requirements.txt文件中指定需求的哈希值。
是否可以通过在setup.py中指定哈希来获得相同的结果,以便在有人只是pip install <package>
?时检查哈希值。
我通过将install_requires
关键字参数传递给distutils包中的setup
函数来指定setup.py中的需求。
from distutils.core import setup
from setuptools import find_packages
setup(name='<package-name>',
...
...
install_requires=['ecdsa==0.13', 'base58==0.2.5']
也许还有另一种方法可以实现相同目标,但我找不到任何文档。
答案 0 :(得分:0)
当前,我不认为有一种简单的方法可以在setup.py中指定哈希检查。我围绕它的解决方案是简单地将virtualenv与requirements.txt中的哈希依赖项一起使用。在虚拟环境中安装后,您可以运行 pip setup.py install ,它将检查本地环境(这是您的虚拟环境),并且安装的软件包会被散列。
在 requirements.txt 中,您的散列包看起来像这样:
requests==2.19.1 \
--hash=sha256:63b52e3c866428a224f97cab011de738c36aec0185aa91cfacd418b5d58911d1 \
--hash=sha256:ec22d826a36ed72a7358ff3fe56cbd4ba69dd7a6718ffd450ff0e9df7a47ce6a
激活您的virtualenv并安装requirements.txt文件:
pip install -r requirements.txt --require-hashes