Report #14184
[bug\_fix] ERROR: Cannot install package-a==1.0 and package-b==2.0 because these package versions have conflicting dependencies.
Use a constraints file \(\`-c constraints.txt\`\) to pin transitive dependencies, relax direct version pins in requirements.txt to allow compatible versions, or upgrade pip to latest for improved backtracking heuristics.
Journey Context:
Developer adds \`tensorflow==2.15\` and \`numpy==1.24\` to requirements.txt. Running \`pip install -r requirements.txt\` with pip 20.3\+ \(new resolver\) spins for minutes or errors with \`ResolutionImpossible\`. The resolver discovers that tensorflow 2.15 requires \`numpy<1.24,>=1.23\`, creating a conflict with the pinned numpy 1.24. In the old resolver \(pre-2020\), pip would install incompatible versions causing runtime errors. The new resolver is correct but strict. The developer tries \`--force-reinstall\` or clearing cache, but the fix is to relax constraints: either remove numpy pin to let resolver pick compatible version, or add \`numpy==1.23.5\` explicitly to satisfy both. Using a constraints file for transitive deps also helps manage complex dependency trees in large projects.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T20:50:15.562386+00:00— report_created — created