-
Notifications
You must be signed in to change notification settings - Fork 139
Description
Using both pip-tools or uv when trying to resolve dependencies where using uvicorn and httpx as a dev dependency will get confused and downgrade to httpcore 0.13.2 which is ancient.
I'm not 100% sure how this happens, but we had it on two separate codebases this morning. (one using uv and one using pip-tools).
It seems to stem from having a loose httpcore and h11 requirement on both cases (via e.g. uvicorn) where both resolvers prioritise h11 as it was pinned first and then the first version of httpcore that meets requirements is 0.13.2, it then also pulls in httpx to 0.25.1 as that's the higest version that doesn't require httpcore>1.
This results in a broken build as httpx needs the newer httpcore.
Looking at h11 it recently had a bunch of cleanup work done, in response to a reported cve, and has been api-stable for years now, so might be safe to relax the pin of it here.