4 ms·
uv. https://docs.astral.sh/uv/ https://docs.astral.sh/uv/
by makeworld 1y ago
uv.
https://docs.astral.sh/uv/ https://docs.astral.sh/uv/
- hsbauauvhabzb 1y agoIt’s hard to call that standard, it’s just the latest hn rust craze idolisation.
- sgarland 1y agoSure, but it’s demonstrably better than Poetry, which was the best until uv. If uv isn’t a standard, it’s because not enough people have tried it. It is obscenely good at its job.
- cozzyd 1y agostandard You keep using that word, I don't think it means what you think it means.
- bigiain 1y ago"Prepare to die."
- nurettin 1y agoFalse dichotomy. Been using pipenv for 8 years. At first it was a bit too slow, but at this moment it gets the job done.
- slightwinder 1y agouv is young, unstable and still lacking in details. It has multiple updates per month, nearly every week there are significant enhancements and bug fixes. It's not mature enough for being a standard yet, even though, what it already offers is excellent. But let it grow, change needs time.
- unsnap_biceps 1y agouv is an excellent piece of software regardless of the language used to write it. Really, if you do python, it's worth giving it a try, especially script mode.
- hsbauauvhabzb 1y agoSure but it’s quality or your/my opinion doesn’t make it ‘standard’ even if it will be some day in the future.
- wiseowise 1y agoNo, it’s not. Everywhere I see, uv is adopted.
- arcanemachiner 1y agoWe're like a year into the uv hype cycle. It needs enough time to make sure it solves the issues of its predecessors. So what if uv is everywhere you look? So were Poetry, pipenv, and so on. Give it time.
- wiseowise 1y agoTried all of them, dropped all of them. Sticked with uv, I’ll take my chances.
- timeon 1y agoI'm using uv but in corporate places I'm seeing just Conda.
- Ygg2 1y agoYou forgot to update your HN craze list. Zig is chic, Rust is out.
- zbentley 1y agoEh, I’m not so sure. We didn’t see adoption nearly this fast for poetry, pipenv, or conda (or hatch or PDM, but I never saw those as even reaching critical mass in the first place). Those tools got pretty popular, but it took a long time and most folks found them to have a lot of tradeoffs (miles better than Python’s first party tooling, but still). I’m not seeing that with “uv”. Other than concerns about Astral’s stewardship model (which could be valid!), I’m not seeing widespread “it works but is hard to use” dissatisfaction with the to the way I do with, say, poetry. Couple that with uv durably solving the need for pyenv/asdf/mise by removing the pain of local interpreter compilation entirely, and I do think that adds up to uv being fundamentally different in popularity or approach compared to prior tools. Is that “different” the same as “better”? Time will tell. As to being written in Rust? Shrug. A ton of shops for whom uv has been transformative don’t even know or care what language it’s written in. Being Rust provides, in my opinion, two benefits: a) avoiding chicken-and-egg problems by writing the tool for managing a programming language environment in a different language that is b) not bash.
- zahlman 1y ago> avoiding chicken-and-egg problems by writing the tool for managing a programming language environment in a different language I've heard this a lot, but I don't really understand the use case. It seems that people want to do development in Python, want to install and manage third-party Python packages, and know how to use command-line tools, but somehow they don't already have Python installed and would find it challenging to install directly? Building from source on Linux is a standard "get dev packages from the system package manager; configure, make and install" procedure that I've done many times (yes, putting it beside the system Python could break things, but you can trivially set an alternate install prefix, and anyway the system Python will usually be a version that meets the basic needs of most developers). Installing on Windows is a standard Windows installer experience. Aside from that, people seem to imagine "chicken-and-egg" scenarios with pip making itself available in the environment. But this is a thoroughly (if inefficiently) solved problem. First off, for almost three years now pip has been able to install cross-environment (albeit with an ugly hack; I detail some of this in https://zahlman.github.io/posts/2025/01/07/python-packaging-2/ https://zahlman.github.io/posts/2025/01/07/python-packaging-...). Second, the standard library `venv` defaults to bootstrapping pip into new environments — taking advantage of the fact that pre-built Python packages are zip archives, and that Python has a protocol for running code from zip archives, which the pip package implements. The real bootstrapping issue I've heard about is https://github.com/pypa/packaging-problems/issues/342 https://github.com/pypa/packaging-problems/issues/342 , but this affects very few people — basically, Linux distro maintainers who want to "build" an entire Python toolchain "from source" even though it's all Python code that the runtime could bytecode-compile on demand anyway.
- rossant 1y agoYes. Try uv and never look back.
- burnt-resistor 1y agouv for project management and pipx for user-/system-wide tool installation.
- makeworld 1y agouv handles that too with "uv tool".
- burnt-resistor 1y agoBut does it create completely isolated, updatable tools possessing all of pipx functionality?
- makeworld 1y agoYep!
- fuzztester 1y agoWhat is Astral's business model?