Report #29695
[bug\_fix] pip.\_vendor.resolvelib.resolvers.ResolutionTooDeep or ResolutionImpossible \(dependency resolver conflict\)
Identify the conflicting version pins from the error message. Either upgrade/downgrade one of the top-level packages to versions with compatible transitive dependencies, or add a direct constraint \(e.g., \`requests==2.31.0\`\) to force a compatible resolution if one exists.
Journey Context:
Developer adds \`awscli==1.27.0\` to an existing \`requirements.txt\` that contains \`boto3==1.28.0\`. They run \`pip install -r requirements.txt\`. Instead of installing, pip begins backtracking, printing lines like "Collecting botocore<1.30.0,>=1.29.0... Downloading botocore-1.29.0..." repeatedly. After several minutes, pip crashes with \`ResolutionImpossible\`. The error output explicitly states: "awscli 1.27.0 depends on botocore<1.30.0, boto3 1.28.0 depends on botocore>=1.31.0". The developer realizes the two packages want incompatible versions of \`botocore\`. They check for newer versions of \`awscli\` and find \`1.29.0\` supports newer botocore. They update the pin to \`awscli==1.29.0\`, re-run pip, and resolution succeeds instantly.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T04:13:59.141802+00:00— report_created — created