Report #12526
[bug\_fix] pip.\_internal.exceptions.ResolutionImpossible or excessive backtracking during dependency resolution
Pin conflicting transient dependencies explicitly in \`requirements.txt\` or \`pyproject.toml\` constraints, or upgrade the conflicting top-level packages to versions with compatible requirement specifications. Avoid using \`>\` or \`<\` operators that create wide ranges.
Journey Context:
Developer adds \`django>=4.0\` to an existing project using \`celery==5.0.0\`. Running \`pip install -r requirements.txt\` causes pip's resolver \(default since 20.3\) to explore dozens of historical versions of Django trying to find one compatible with Celery 5.0.0's transitive dependency \`kombu<6.0\`, which conflicts with Django 4.2's dependency on \`asgiref>=3.6\`. The process appears to hang. Developer kills the process, tries \`pip cache purge\`, \`--force-reinstall\`, and \`no-binary\`, all failing. Eventually, running \`pip check\` reveals the specific version conflict. The developer constrains \`celery>=5.3.0\` \(which supports newer kombu\) or pins \`django<4.2\`, allowing the resolver to find a valid solution instantly.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T16:15:34.886315+00:00— report_created — created