Live data from Hacker News

Python Has Too Many Package Managers

dublog.net

11–20 of 170 posts

Re: Python Has Too Many Package Managers

#13

After all, the motto is "there's more than one way to do it"!

Maybe it's just a joke, but for those that don't know that is Perl's motto and even better because there's the venerable, wonderful CPAN [0] which is the de facto package repository for the language.

[0] https://www.cpan.org/

Re: Python Has Too Many Package Managers

#14

After all, the motto is "there's more than one way to do it"!

Maybe it's just a joke, but for those that don't know that is Perl's motto and even better because there's the venerable, wonderful CPAN [0] which is the de facto package repository for the language. [0] https://www.cpan.org/

[deleted]

Re: Python Has Too Many Package Managers

#15
post #5

I disagree with the title, but it's an okay rundown of the various package managers. Wish the author had tried out hatch though since it seems good. Also rye is not abandoned. You can see the repo has updates within the last 24 hours for a new release. I think they want uv to eat rye, but that hasn't happened yet. My current favorites are uv + mise. Handles lockfiles, multiple versions of python, and it's very fast s…

you mean it is in the process of happening? From this article it looks like Armin R. and Charlie M. are updating Rye use uv under the hood.

https://astral.sh/blog/uv

> As part of this release, we're also taking stewardship of Rye, an experimental Python packaging tool from Armin Ronacher. We'll maintain Rye as we expand uv into a unified successor project, to fulfill our shared vision for Python packaging.

Re: Python Has Too Many Package Managers

#18
I concur and I also think that there are too many build backends.

pdm is my current favorite package manager. It is fully PEP-compliant and the lockfile generation is nice. I wouldn't call hatch a package manager because I don't think it can make lockfiles.

uv is on my radar but it doesn't look ready for primetime yet. I saw they are building out a package management API with commands such as `uv add` and `uv remove`. Cross-platform lockfiles, editable installs, in-project .venv, and a baked-in build backend might be enough for me to make the switch. It's my pipe dream to get the full build/install/publish workflow down to a single static binary with no dependencies.

Anna-Lee Popkes has an awesome comparison of the available package managers [0] complete with handy Venn diagrams.

The pyOpenSci team has another nice comparison of the available build backends [1].

[0] https://alpopkes.com/posts/python/packaging_tools/

[1] https://www.pyopensci.org/python-package-guide/package-struc...

Re: Python Has Too Many Package Managers

#20

"Finally, because dependency resolution is a directed acylic graph (DAG)" ... Is it? :-) Mwahahaha

We analyze firmware and binaries, amongst other things at my day job.

Reconstructing dependency graphs is a necessary part of our day to day.

Assuming dependency graphs cant have cycles has shot us in the foot. There are absolutely real circular dependencies in assets in the wild.

Post reply on HN