Remix.run Logo
rob 8 hours ago

Just a tiny project with over 100 million downloads every month, over 4 million every day. No big deal. Just a small shop, don't overstate its importance.

https://pypistats.org/packages/uv

FuckButtons 7 hours ago | parent | next [-]

Sure, but if tomorrow uv and ruff ceased to exist, we could all go back to any number of other solutions.

arw0n 4 hours ago | parent | next [-]

Ruff is nice, but not important, uv is one of the few things making the python ecosystem bearable. Python is a language for monkeys, and if you don't give monkeys good tools, they will forever entangle themselves and you. It is all garbage wrapped in garbage. At least let me deploy it without having to manually detangle all that garbage by version.

I'm done pretending this is a "right tools for the right job" kind of thing, there's wrong people in the right job, and they only know python. If no one self-writes code anymore anyway, at least use a language that isn't a clusterfuck of bad design decisions, and has 1 trillion lines of code in the collective memory of people who don't know what a stack is.

bodge5000 2 hours ago | parent | next [-]

> If no one self-writes code anymore anyway, at least use a language that isn't a clusterfuck of bad design decisions

I can get behind the idea that LLM's probably don't need a language designed for humans if humans arent writing it, but the rest of this is just daft. Pythons popularity isn't just pure luck, in fact its only been in recent years that the tooling has caught up to the point where its as easy to setup as it is to write, which should really tell you something if people persevered with it anyway.

I'm sorry your favourite language doesnt have the recognition it so rightfully deserves, but reducing python to just "stupid language for stupid people" is, well, stupid

sitkack 41 minutes ago | parent [-]

Python is the blub language now.

tasuki 2 hours ago | parent | prev | next [-]

Ahaha, I feel this comment.

I used to do backend development in superior languages, and sometimes do hobby frontend in superior languages, but my work is Python now. And it kind of has to be Python: we do machine learning, and I work with GDAL and PDAL and all these other weird libraries and everything has Python bindings! I search for "coherent point drift" and of course there's a Python library.

The superior languages I mentioned... perhaps they have like a library for JSON encoding and decoding. You need anything else? Great, now you're a library author and maintainer!

aprdm 2 hours ago | parent | prev | next [-]

Python existed for years before uv with a huge ecosystem, and will continue to do so after/if it dies

theptip 4 hours ago | parent | prev | next [-]

I agree uv is great but let’s not get carried away here. Poetry is good, pip was fine for many use-cases after they added native lock files.

PaulHoule 3 hours ago | parent | next [-]

if you are working on one tiny project on your machine that pips in four packages you probably think pip was OK.

Circa 2017 I was working on systems that were complex enough that pip couldn't build them and after I got to the bottom of it I knew it not my fault but it was the fault of pip.

I built a system which could build usable environments out of pre-built wheels and sketched out the design of a system that was roughly 'uv but written in Python' but saw two problems: (1) a Python dependent system can be destroyed by people messing with Python environments, like my experience is that my poetry gets trashed every six months or so and (2) there was just no awareness by the 'one tiny project on your machine that pips in four packages' people that there was a correctness problem at all and everybody else was blaming themselves for a problem and didn't have a clear understanding of what was wrong with pip or what a correct model for managing python dependencies is (short answer: see maven) or that a 100% correct model was even possible and that we'd have to always settle for a 97% model. The politics looked intractable so I gave up.

Now written in rust, uv evaded the bootstrap problem and it dealt with the adoption problem by targeting 'speed' as people would see the value in that even if they didn't see the value in 'correctness'. My system would have been faster than pip because it would have kept a cache, but uv is faster still.

Affric 38 minutes ago | parent [-]

Well said.

I have used them all and UV is the only one that actually solves the problem.

It’s insane that people would suggest that Python can go back.

rtpg 2 hours ago | parent | prev [-]

Poetry and friends are so bad that many people continued just using pip -r requirements.txt despite knowing about this other stuff

Poetry having users isn’t the metric for success. pip having way less users is.

KaiserPro an hour ago | parent | prev | next [-]

Ok, what am I missing, I've used python for many many years. What does UV give us over pip + venv + pyenv?

(I'm not doing this to be a dick, I genuinely want to know what the use case is)

andyferris an hour ago | parent | next [-]

Everything “just works” and is fast - and that’s basically it.

You can run a script with a one liner and it will automatically get you the same python and venv and everything as whoever distributed the python code, in milliseconds if the packages are already cached on your local computer.

Very easy to get going without even knowing what a venv or pypi or anything is.

If you are already an expert you get “faster simpler tooling” and if you are a complete beginner it’s “easy peasy lemon squeezy”.

Eridrus an hour ago | parent | prev [-]

It's not horrifically slow.

antonvs an hour ago | parent | prev [-]

> making the python ecosystem bearable

You should really qualify that statement, it implies that the Python ecosystem is bearable.

tomrod 7 hours ago | parent | prev | next [-]

Maybe you could. I would stare longingly into the void, wondering if I can ever work another python project after having experienced uv, ruff, and ty.

Such an outcome would make me wonder regarding the wisdom of "It is better to have love and lost than to have never loved at all."

signal11 6 hours ago | parent | next [-]

I was using poetry pretty happily before uv came along. I’d probably go back.

Note that uv is fast because — yes, Rust, but also because it doesn’t have to handle a lot of legacy that pip does[1], and some smart language independent design choices.

If uv became unavailable, it’d suck but the world would move on.

[1] https://nesbitt.io/2025/12/26/how-uv-got-so-fast.html

theLiminator 6 hours ago | parent [-]

Maybe I could give up uv, but giving up ruff would suck.

crdrost 5 hours ago | parent [-]

This is just the weirdest thread.

Like, the whole point of open source is that this thread is not a thing. The whole point is "if this software is taken on by a malevolent dictator for life, we'll just fork it and keep going with our own thing." Or like if I'm evaluating whether to open-source stuff at a startup, the question is "if this startup fails to get funding and we have to close up shop, do I want the team to still have access to these tools at my next gig?" -- there are other reasons it might be in the company's interests, like getting free feature development or hiring better devs, but that's the main reason it'd be in the employees' best interests to want to contribute to an open-source legacy rather than keep everything proprietary.

asa400 4 hours ago | parent [-]

The leadership and product direction work are at least as hard as the code work. Astral/uv has absolutely proven this, otherwise Python wouldn't be a boneyard for build tools.

Projects - including forks - fail all the time because the leadership/product direction on a project goes missing despite the tech still being viable, which is why people are concerned about these people being locked up inside OpenAI. Successfully forking is much easier said than done.

PaulHoule 3 hours ago | parent [-]

I had a lot of trouble convincing people that a correct Python package manager was even possible. uv proved it was possible and won people over with speed.

I had a sketched out design for a correct package manager in 2018 but when I talked to people about it I couldn't get any interest in it. I think the brilliant idea that uv had that I missed was that it can't be written in Python because if is written in Python developers are going to corrupt its environment sooner or later and you lose your correctness.

I think that now that people are used to uv it won't be that hard to develop a competitor and get people to switch.

giancarlostoro 6 hours ago | parent | prev | next [-]

It is an MIT licensed project, someone will absolutely fork it.

WesolyKubeczek 6 hours ago | parent [-]

You seem to be underestestimating the laziness of the people, and overestimating their resolve. Angry forks usually don't last, angst doesn't prevent maintenance burnouts.

giancarlostoro 5 hours ago | parent | next [-]

You underestimate the value that something like uv and company bring to the ecosystem. Given enough time I could have seen it replacing some core utilities, now that its owned by OpenAI I don't see that happening, unless OpenAI "donates" the project but keeps the devs on a payroll.

5 hours ago | parent | prev | next [-]
[deleted]
jitl 3 hours ago | parent | prev [-]

clicking "fork" in github is pretty easy

FreakLegion 3 hours ago | parent | prev | next [-]

Ruff is performant but finds about half the issues Pylint does (see https://github.com/astral-sh/ruff/issues/970). Ty is quantitatively the worst of the well-known type checkers (see https://news.ycombinator.com/item?id=47398023). Uv is Astral's only winner.

deadbabe 6 hours ago | parent | prev [-]

Maybe consider something other than python.

tomrod 3 hours ago | parent | next [-]

Always choose the best tool for the job.

Then import that tool and and check if __name__ == "__main__"

scuff3d 4 hours ago | parent | prev [-]

Good luck with that. I haven't been successful at convincing anyone to move away from it. I'm so fucking sick of writing Python at work lol

linsomniac 43 minutes ago | parent | prev | next [-]

>Sure, but if tomorrow uv and ruff ceased to exist, we could all go back to any number of other solutions.

Or, more relevant to this conversion: If they closed source tomorrow, the community could fork the current version.

MidnightRider39 3 hours ago | parent | prev | next [-]

Personally I would stop using Python again. uv is the one thing that made it bearable.

giancarlostoro 6 hours ago | parent | prev | next [-]

While I hope it never comes to that, all the code is MIT licensed, I would assume everyone would make the sensible decision for fork it.

alsetmusic 5 hours ago | parent | prev | next [-]

I see Apache and MIT license files in their GitHub. What's to prevent the community from forking and continuing development if the licenses change?

eviks 5 hours ago | parent [-]

The same things that prevented "community" from building the tool in the first place

PaulHoule 3 hours ago | parent | next [-]

i think the main problem was that people didn't believe that pip was broken, or didn't think there was any value in a 100% correct package manager over a 97% correct package manager (e.g. misread "worse is better")

I had the problem basically understood in 2018 and I am still pissed that everybody wanted to keep taking their chances with pip just like they like to gamble with agent coders today.

Now that people know a decent package manager is possible in Python I think there is going to be no problem getting people to maintain one.

pxc 43 minutes ago | parent [-]

Idk how anyone could sustain the impression that pip was not broken unless they had basically never used anything else (including Linux package managers) long enough to have even a basic understanding of it.

And that's a big part of what's so frustrating about Python generally: it seems to be a language used by lots of people who've never used anything else and have an attitude like "why would I ever try anything else"?

Python has a culture where nominal values of user-friendliness, pragmatism, and simplicity often turn into plain old philistinism.

zem 4 hours ago | parent | prev | next [-]

that makes zero sense to me. developing something like ruff from scratch takes a lot of things happening - someone having the idea, the time to develop it from scratch in their free time, or the money to do it as a job, and perhaps the need to find collaborators if it's too large a project for one person. but now ruff is there, there's no need to build it from scratch. if I wanted to build a python linter or formatter I would simply fork ruff and build on top of it. as others have said in this subthread, that's the whole point of open source!

johnisgood 5 hours ago | parent | prev [-]

Cannot we at one point consider the tool to be "done"? I mean, what is there to constantly change and improve? Genuinely curious. It sounds like a tool that can be finished. Can it not be?

influx 4 hours ago | parent [-]

You’d be surprised how many features the Python runtime adds each release. It’s not trivial for tooling to keep up with language changes.

crypto137 an hour ago | parent | prev | next [-]

UV is so much nicer than the other options.

wiseowise 4 hours ago | parent | prev | next [-]

I would just ditch Python, like I did 8 years ago.

sdevonoes 3 hours ago | parent | prev | next [-]

I wish that were also true for the case of Claude/Codex/etc

crimsoneer 7 hours ago | parent | prev | next [-]

Eurgh, I do not want to ever touch Poetry or pyenv again, thank you very much.

skywhopper 5 hours ago | parent | prev [-]

I mean, if you believe the hype on this website, Claude Code could build a perfect clone of uv in a few hours using only the documentation.

johnisgood 5 hours ago | parent | prev | next [-]

I do feel like it is overstated, and the number of downloads is not a good metric at all. There are npm packages with many millions of downloads, too.

wombatpm 3 hours ago | parent [-]

You can take my padleft function from my cold dead hands, but it will live forever in example code!

joelthelion 5 hours ago | parent | prev | next [-]

That says more about the sad state of modern CI pipelines than anything about uv's popularity.

Not disputing that it's a great and widely used tool, BTW.

throwaway63467 7 hours ago | parent | prev | next [-]

The “requests” package gets downloaded one billion times every month, should that be a multi billion dollar VC company as well? It’s a package manager and other neat tooling, it’s great but it’s hardly the essence of what makes Python awesome, it’s one of the many things that makes this ecosystem flourish. If OpenAI would enshittify it people would just fork or move on, that’s all I’m saying, it’s not in any way a single point of failure for the Python ecosystem.

druml 7 hours ago | parent [-]

> the essence of what makes Python awesome

This is not the point of uv or any good package manager. The point is what prevents Python to suck. For a long time package management had been horrible in Python compared what you could see in other languages.

skywhopper 5 hours ago | parent | prev | next [-]

I mean, these sorts of numbers speak to the mind-bogglingly inefficient CI workflows we as an industry have built. I’d be surprised if there were 4 million people in the world who actually know what ‘uv’ is.

LtWorf 4 hours ago | parent | prev [-]

It's not difficult to download something yourself 4 million times every day to look popular :)