httpcore
httpcore copied to clipboard
Consider dropping upper pin on h11
Hi! By pinning the upper version of h11 in setup.py
each time they make a release projects that depend on httpcore
can fail with version requirement issues.
For example:
ERROR: httpcore 0.14.7 has requirement h11<0.13,>=0.11, but you'll have h11 0.13.0 which is incompatible.
...
pkg_resources.ContextualVersionConflict: (h11 0.13.0 (/.../python3.8/lib/python3.8/site-packages), Requirement.parse('h11<0.13,>=0.11'), {'httpcore'})
Could you remove the upper pin and allow consumers of this important library to use compatible versions on release or restrict the version themselves if necessary?
Of course, part of this is pip
's fault as it should be resolving these constraints, but it does not appear to do so consistently.
A discussion of upper bounds: https://iscinumpy.dev/post/bound-version-constraints/
Related to: https://github.com/encode/httpcore/pull/503
This could be extended to all of the versioning in the setup.py
which mostly pin to major versions.
I think that'd probably be okay.
As you can see from #503 we've a couple of changes we'd need to make to ensure our tests still pass. (Not because the behaviour is wrong, just because it's structured in a way that it fails type checking against the newly added annotations.)
The block to this is probably having someone work on resolving that.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Hi bot, this issue is still relevant. The upper pin remains and furthermore httpcore is not compatible with h11 0.13+.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
A decision is still needed on https://github.com/encode/httpcore/pull/526 to support h11 0.13.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Boop. https://github.com/encode/httpcore/pull/549
A decision is still needed on #526 to support h11 0.13.
The decision is about PAUSED handling? If so that's resolved
Right, let's consider https://github.com/encode/httpcore/pull/579 as resolving this. We'll keep the pinning (because, we're careful like that) but we've bumped up the version to the latest.