You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
pdm install appears to hang while installing dependencies with conflicting requirements. Using -v reveals it is looping forever.
Expected behavior
pdm install shows an error describing the conflicting requirements and exits with a non-zero exit code, indicating a problem with my dependency declarations.
Description
In my reproduction, pytest-cov and coveralls have conflicting requirements for transitive dependency "coverage." This means pdm should exit with an error. (I do not expect pdm to magically resolve conflicting dependencies) However, for some reason it loops forever, only describing the problem when run with -v.
The linked README has a more complete log, but this snippet in particular is relevant, seen when running pdm install -v
pdm.termui: ======== Starting round 4 ========
pdm.termui: Adding requirement tomli; python_full_version <= "3.11.0a6"(from coverage 7.2.3)
pdm.termui: Adding requirement coverage==7.2.3(from coverage 7.2.3)
pdm.termui: Candidate rejected: [email protected] because it introduces a new requirement coverage==7.2.3 that conflicts with other requirements:
coverage!=6.0.*,!=6.1,!=6.1.1,<7.0,>=4.1 (from [email protected])
pdm.termui: Adding requirement tomli; python_full_version <= "3.11.0a6"(from coverage 7.2.3)
pdm.termui: Adding requirement coverage==7.2.3(from coverage 7.2.3)
pdm.termui: Candidate rejected: [email protected] because it introduces a new requirement coverage==7.2.3 that conflicts with other requirements:
coverage!=6.0.*,!=6.1,!=6.1.1,<7.0,>=4.1 (from [email protected])
pdm.termui: Adding requirement tomli; python_full_version <= "3.11.0a6"(from coverage 7.2.3)
pdm.termui: Adding requirement coverage==7.2.3(from coverage 7.2.3)
pdm.termui: Candidate rejected: [email protected] because it introduces a new requirement coverage==7.2.3 that conflicts with other requirements:
coverage!=6.0.*,!=6.1,!=6.1.1,<7.0,>=4.1 (from [email protected])
pdm.termui: Adding requirement tomli; python_full_version <= "3.11.0a6"(from coverage 7.2.3)
pdm.termui: Adding requirement coverage==7.2.3(from coverage 7.2.3)
... loops indefinitely ...
Environment Information
# Paste the output of `pdm info && pdm info --env` below:
$ python -m pdm info
PDM version:
2.5.3
Python Interpreter:
/home/cspotcode/dev/@cspotcode/repros/.venv/bin/python (3.8)
Project Root:
/home/cspotcode/dev/@cspotcode/repros
Local Packages:
$ python -m pdm info --env
{
"implementation_name": "cpython",
"implementation_version": "3.8.10",
"os_name": "posix",
"platform_machine": "x86_64",
"platform_release": "5.10.102.1-microsoft-standard-WSL2",
"platform_system": "Linux",
"platform_version": "#1 SMP Wed Mar 2 00:30:59 UTC 2022",
"python_full_version": "3.8.10",
"platform_python_implementation": "CPython",
"python_version": "3.8",
"sys_platform": "linux"
}
The text was updated successfully, but these errors were encountered:
frostming
changed the title
pdm install appears to hang, actually stuck in endless loop, when resolving conflicting transitive dependencies
The resolver doesn't take into account of the requirements from both bare package and package[extra]
Apr 25, 2023
Make sure you run commands with
-v
flag before pasting the output.Steps to reproduce
This reproduction has dependency declarations that are incompatible due to their transitive dependencies.
https://github.com/cspotcode/repros/tree/pdm
Actual behavior
pdm install
appears to hang while installing dependencies with conflicting requirements. Using-v
reveals it is looping forever.Expected behavior
pdm install
shows an error describing the conflicting requirements and exits with a non-zero exit code, indicating a problem with my dependency declarations.Description
In my reproduction, pytest-cov and coveralls have conflicting requirements for transitive dependency "coverage." This means pdm should exit with an error. (I do not expect pdm to magically resolve conflicting dependencies) However, for some reason it loops forever, only describing the problem when run with
-v
.The linked README has a more complete log, but this snippet in particular is relevant, seen when running
pdm install -v
Environment Information
The text was updated successfully, but these errors were encountered: