install_requires 层次结构:ContextualVersionConflict
install_requires hierarchy: ContextualVersionConflict
假设我有一个 main_package
.
其中 setup.cfg
有:
install_requires =
importlib_metadata; python_version < "3.8"
not_main_package>= 15.1
我还有一个not_main_package 16.0
。
其中 setup.cfg
有:
install_requires =
importlib_metadata >= 3.6
我愿意:
$ pip install importlib_metadata==1.5.0
$ install main_package
我得到一个错误:
pkg_resources.ContextualVersionConflict: (importlib-metadata 1.5.0 (/usr/local/lib/python3.7/site-packages), Requirement.parse('importlib-metadata>=3.6'), {'not_main_package'})
我说得对吗 parent 的 (main_package
) install_requires
具有更高的优先级,将忽略 child 的 (not_main_package
) install_requires
,因此,导致 ContextualVersionConflict
?
您应该手动安装所需版本的 importlib_metadata
假设我有一个 main_package
.
其中 setup.cfg
有:
install_requires =
importlib_metadata; python_version < "3.8"
not_main_package>= 15.1
我还有一个not_main_package 16.0
。
其中 setup.cfg
有:
install_requires =
importlib_metadata >= 3.6
我愿意:
$ pip install importlib_metadata==1.5.0
$ install main_package
我得到一个错误:
pkg_resources.ContextualVersionConflict: (importlib-metadata 1.5.0 (/usr/local/lib/python3.7/site-packages), Requirement.parse('importlib-metadata>=3.6'), {'not_main_package'})
我说得对吗 parent 的 (main_package
) install_requires
具有更高的优先级,将忽略 child 的 (not_main_package
) install_requires
,因此,导致 ContextualVersionConflict
?
您应该手动安装所需版本的 importlib_metadata