以前也问过类似的问题,但这次我问的是更新的setuptools配置文件——setup.cfg
。
考虑一下我的用例,其中我有一个包含多个相互依赖的Python包的项目。为了简单起见,假设mypkg1
依赖于mypkg2
:
mypkg1/
mypkg1/
setup.cfg
mypkg2/
mypkg2/
setup.cfg
如何为mypkg1
编写setup.cfg
文件,使其依赖于mypkg2
的本地副本?
[metadata]
name = mypkg1
version = 0.0.1
[options]
packages = find:
python_requires = >= 3.7
install_requires =
../mypkg2 # Does not work
答案不能是将mypkg2
分发到包存储库(例如PyPI(或某些VCS版本(例如GitHub版本(,因为这些解决方案使包成为外部的,而不是本地的。
相关问题
如何在Python中的setup.py中包含和安装本地依赖项?
此问题适用于
setup.py
,但对setup.cfg
不起作用。https://github.com/pypa/setuptools/issues/1951
讨论中没有表示对此有任何支持,也没有表示将其作为功能的任何计划。
直接引用仍然有效。看起来像这样:
install_requires =
my_package @ file:///home/code/my_package
注意文件中的三斜杠:///-前两个是通常的模式://,第三个是分隔空<主机>(默认为localhost(。