哈希检查setup.py安装需要

时间:2017-10-19 17:47:41

标签: python pip setuptools distutils setup.py

根据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']

也许还有另一种方法可以实现相同目标,但我找不到任何文档。

1 个答案:

答案 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