如何让PyPI自动安装依赖项

贾菲特·加多

如何在PyPI上发布软件包,以便自动安装所有依赖项,而不是由用户手动安装。

我在指定的依赖setup.pyinstall_requires如下:

setuptools.setup(name='myPackage',
    version='1.0',
    packages=setuptools.find_packages(),
    include_package_data=True,
    classifiers=[
        'Programming Language :: Python :: 3',
        'Operating System :: OS Independent',
        'Topic :: Scientific/Engineering :: Bio-Informatics'
                ],
    install_requires=['numpy', 'pandas', 'sklearn'],
    python_requires='>=3'
        )

我有一个requirements.txt文件包含在我文件中MANIFEST.in

numpy==1.15.4
sklearn==0.20.1
pandas==0.23.4

但是,当我尝试安装软件包时在test.pypi上发布后,出现以下错误:

Could not find a version that satisfies the requirement numpy (from myPackage==1.0.0) (from versions: )
No matching distribution found for sklearn (from myPackage==1.0.0)

这意味着PyPI不会安装numpy依赖项。如何启用自动安装依赖项?构建和发布程序包时,我应该使用虚拟环境吗?我该怎么做呢?

PS我对此是全新的,所以我将欣赏显式代码或指向简单教程页面的链接。谢谢。

贾菲特·加多

我意识到从test.PyPI安装软件包不会安装所有软件包,因为其中一些软件包托管在PyPI上,而不是test.PyPI。

当我在PyPI上以预发行版本(1.0a1)发行软件包时,而不是在test.PyPI上发行软件包时,依赖项已正确安装。因此,问题仅在于test.PyPI。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章