-
Notifications
You must be signed in to change notification settings - Fork 3.2k
Description
Description
It seems in some cases, Pip try to install multiple versions of the same package, leading to conflict resolution:
ERROR: Cannot install sphinx-apitree because these package versions have conflicting dependencies.
The conflict is caused by:
myst-nb 0.4.0 depends on myst-parser~=0.7.1
myst-nb 0.3.0 depends on myst-parser~=0.6.0
myst-nb 0.2.2 depends on myst-parser~=0.6.0
myst-nb 0.2.1 depends on myst-parser~=0.6.0
myst-nb 0.2.0 depends on myst-parser~=0.6.0
It's not clear why pip install all those versions. Installing pip install myst-nb or pip install sphinx-apitree[ext] works. It seems the issue is triggered only when installing locally pip install .[docs].
Expected behavior
Packages are installed correctly.
pip version
24.3.1
Python version
3.11
OS
Ubuntu
How to Reproduce
# Optional, create virtual environment to isolate deps
pyenv virtualenv 3.11 pip_issue_repro
pyenv activate pip_issue_repro
# Reproduction
pip install kauldron[docs]Or:
git clone https://github.com/google-research/kauldron
cd kauldron/
pip install .[docs]
Output
Output: https://gist.github.com/Conchylicultor/741379767180cb09a85b4433958719f6
The .[docs] only install sphinx-apitree[ext]: https://github.com/google-research/kauldron/blob/d409d54e9bfb9e5e5f2f2c70946ff7783dd098ca/pyproject.toml#L78
[project.optional-dependencies]
docs = [
"sphinx-apitree[ext]",
]If I install pip install sphinx-apitree[ext] directly, it's working. So not sure why pip fail to install when the same package is installed inside project.optional-dependencies
Code of Conduct
- I agree to follow the PSF Code of Conduct.