I know I live on a different planet to many but, the only Python packaging problem I actually have is when I need to use two different versions of the same package at the same time. Solve that and we'll talk. #python

@carlton Some of my Ruby and Node friends feel Python's package management will never be adequate if this problem isn't addressed.

Assuming you don't mean multiple versions of the same package available everywhere but instead one per package, I think we'd basically need a separate site-packages directory location per package for this. 😬

@treyhunner Yeah, I have no grand solution waiting up my sleeve. Greater minds than mine can solve the how. πŸ₯³

It’s frustrating when all dependencies (and the project) have to be on the same compatible ranges. A slow updating package blocks everyone else updating even if its usage of the target package are entirely internal.

🀷

@carlton @treyhunner To your last point, this is why we are still stuck on Python 3.12 for more projects that I care to admit to.

Since we can't stop authors from pinning to upper boundaries, I wish we had the mechanics to at least say, "IGNORE THIS" very loudly so we can move around it.

@webology @carlton @treyhunner

For this reason:

> When evaluating requires-python ranges for dependencies, uv only considers lower bounds and ignores upper bounds entirely.

https://docs.astral.sh/uv/concepts/resolution/#universal-resolution

Resolution | uv

uv is an extremely fast Python package and project manager, written in Rust.

@adamchainz @carlton @treyhunner Sorry, I was sharing two different thoughts which was confusing.

What I mean was we could not override package upper boundaries, and I should have known that UV has literally thought of everything and including this annoying situation.

See https://docs.astral.sh/uv/reference/settings/#override-dependencies

h/t via https://mastodon.social/@konstin/115133779802412410

Settings | uv

uv is an extremely fast Python package and project manager, written in Rust.