Report #103741
[bug\_fix] pip install fails with ResolutionImpossible: The conflict is caused by ... depends on X \(>=1.0,<2.0\) and Y \(>=2.0,<3.0\)
Do not pin every transitive dependency manually with conflicting versions. Use \`pip install -v package==version\` to read the resolver's explanation, then relax or tighten top-level constraints so a compatible transitive set exists. Prefer generating a lock file \(e.g. \`pip-tools\` or \`uv pip compile\`\) from compatible top-level requirements rather than editing pins by hand.
Journey Context:
You inherit a requirements.txt with dozens of pinned packages. You add one new dependency and pip suddenly reports ResolutionImpossible, listing a chain of conflicts between transitive packages you never directly imported. You try forcing installation with \`--no-deps\`, which installs but breaks at runtime. The root cause is that two of your direct dependencies each depend on incompatible major versions of the same third package. The new pip resolver \(introduced in pip 20.3\) is correct: the constraints are genuinely unsatisfiable. The fix is not to bypass the resolver but to surface the conflict with verbose output, remove the conflicting artificial pins, and let a lock-file tool compute a consistent transitive closure from clean top-level requirements.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-13T04:37:39.270095+00:00— report_created — created