我有一个组织中其他应用程序使用的python包,我们称其为buildtools
。
我组织中的其他应用程序已通过
pip install git+https://${OAUTH_TOKEN}:[email protected]/my_organization/buildtools#egg=buildtools
我想向
buildtools
添加一个需要第3方程序包的新功能,我们只说它的requests
。因此,在buildtools
中,我将requests
添加到requirements.txt
,将其导入,这一切都很好。但是,我组织中的其他应用程序都没有
requests
作为其在requirements.txt
中的依赖项。当我合并新代码并更新程序包时,我相信在使用
ImportError: No module named requests
的下游应用程序中会遇到一些buildtools
错误。如何确保使用
buildtools
软件包的任何应用程序在获得最新的requests
时都安装了buildtools
软件包?换句话说,如何递归更新
buildtools
的依赖关系?我知道我可以在组织中使用
requests
的所有应用程序中将requirements.txt
添加到buildtools
中,但是我正试图避免这种情况。 最佳答案
你为什么不跑
pip install -r requirements.txt
如所讨论的here?
这是递归更新/安装所需软件包的最好,最轻松的方法。