有没有办法指定在 pip 中安装模块所需的最低 python 版本?
我正在尝试将包发布到 pypi。
python setup.py sdist upload -r pypi
是我正在使用的命令。但是,在 setup.py 中,无法指定运行此模块需要最低 python 版本(在我的例子中为 python 3.5(。
您可以使用以下命令指定项目所需的 python 版本:
python_requires='>=3.5'
上面的代码必须在setup.py
中指定,也只有 pip 的 9.0.0 及更高版本才能识别python_requires
元数据。
此外,在setup.py
指定依赖项
setup(
install_requires=['dependent functions,classes,etc'],
)
第一件事是记录你的包需要什么最小的Python版本。在自述文件和setup.py
中包含该信息:
setup(
…
long_description=open('README.rst', 'rU').read(),
classifiers=[
…
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
…
],
…
)
其次,禁止在运行时靠近setup.py
顶部的某个地方使用错误版本:
import sys
if sys.version_info < (3, 5):
raise RuntimeError("This package requres Python 3.5+")