Specifically for Python, right now, uv is showing the most promises (and mise has an uv backend, btw) for bootstrapping.
They have carefully avoided 90% of the mistakes of all other tools, and I have a long list. They don't live in a bubble.
uv still has problems (like indy greg builds not having headers) and it's still below v1 so I can't recommend to use it yet. But I've been testing it in different contexts for months now, and it's doing exceptionally well.
I usually take a year of testing before recommending a tool, because I need to see it in action in Windows shops, in Unix shops, with beginners, with non coders, with startup, in a corporate settings, with grey beards, etc. Python versatility means the user base is extremely diverse and you find it in the weirdest envs.
and it gave me a lot of confidence that he is actually not trying to do everything at once, but quite the opposite, nail to the death very specific problems.
I've tried everything in the Python world, with a good hundred of companies envs, and about a thousand people in trainings. Pyenv, poetry, pipenv, pdm, nix, pyflow, pdm, rye, you name it.
The number of ways they can fail is astonishing.
The uv team quickly identifies when there is friction, and fix it at astonishing speed. They just announced they took ownership of the WHOLE python-build-stand-alone project, and they contribute the improvement to it to cpython upstream.
Their dedication to a good doc and great error messages is quite amazing as well.
Specifically for Python, right now, uv is showing the most promises (and mise has an uv backend, btw) for bootstrapping.
They have carefully avoided 90% of the mistakes of all other tools, and I have a long list. They don't live in a bubble.
uv still has problems (like indy greg builds not having headers) and it's still below v1 so I can't recommend to use it yet. But I've been testing it in different contexts for months now, and it's doing exceptionally well.
I usually take a year of testing before recommending a tool, because I need to see it in action in Windows shops, in Unix shops, with beginners, with non coders, with startup, in a corporate settings, with grey beards, etc. Python versatility means the user base is extremely diverse and you find it in the weirdest envs.
I also interviewed Charlie Marsh:
https://www.bitecode.dev/p/charlie-marsh-on-astral-uv-and-th...
and it gave me a lot of confidence that he is actually not trying to do everything at once, but quite the opposite, nail to the death very specific problems.
I've tried everything in the Python world, with a good hundred of companies envs, and about a thousand people in trainings. Pyenv, poetry, pipenv, pdm, nix, pyflow, pdm, rye, you name it.
The number of ways they can fail is astonishing.
The uv team quickly identifies when there is friction, and fix it at astonishing speed. They just announced they took ownership of the WHOLE python-build-stand-alone project, and they contribute the improvement to it to cpython upstream.
Their dedication to a good doc and great error messages is quite amazing as well.
I'm impressed.