It's only a mess because not everyone has adopted uv yet (IMO)
Python package management is a classic example of xkcd #927, and the community cannot be blamed for developing a Pavlovian response when it comes to yet-another-package-manager that promises to be the final solution.
UV looks very promising but I can assure you, if everyone adopted it tomorrow we would see a long tail of scenarios that UV does not work well for.
I would love to see that happen and see how astral responds. I would love to see uv get built into Python 4
I am perfectly content for a 90% solution, we should not let the perfect be the enemy of the good.
It’s a mess because there’s no first party, properly thought out and working solution.
So every year we get a new “new way” to do it. Like that xkcd… this time this is the standard that will work!
Yep. The lesson is to get this right early in your language design. Do not punt until version 2.0. Think twice before putting the package/module/whatever metadata in an executable script. If you do decide to do that, think a third time. It works out better for some languages (like Common Lisp) than others (like Python).
never had a problem with dependencies. how is it a mess? you have requirements.txt and venv per project. doesn't get easier than that