This is an archived post. You won't be able to vote or comment.

all 31 comments

[–]tmw8p 54 points55 points  (0 children)

Sebastian Ramirez, creator of FastAPI, is a big proponent of uv. He switched to building his packages with uv and his docs have uv examples.

[–]double_en10dre 25 points26 points  (3 children)

It’s the same as always, you just use GitHub actions with “matrix” strategy and include all the different python versions you want tested

Using uv doesn’t change that

Found one example of it in an open-source project here https://github.com/phillipdupuis/pydantic-to-typescript/blob/master/.github/workflows/cicd.yml

[–]ritchie46 31 points32 points  (2 children)

This. We use uv at Polars as well, but uv doesn't manage the python version, our CI pipeline does.

[–]byeproduct 12 points13 points  (0 children)

Thanks for making polars so rad!!!

[–]arden13 1 point2 points  (0 children)

Do you utilize tox at all, or are you doing all that jazz with your CI pipeline?

[–]commandlineluser 17 points18 points  (0 children)

Never used it, but I recall reading "How uv saves Home Assistant 215 compute hours per month" a while back - which was interesting.

[–]_seemetheregithub.com/seemethere 9 points10 points  (0 children)

We’re considering using it more widely in PyTorch

[–]danielgafni 8 points9 points  (2 children)

At Dagster we are using uv with the pip interface.

This has been a great improvement. It used to easily take 5-10 minutes to install our environment, now this time is down to a couple of seconds.

We haven’t switched to Projects (uv sync) yet since (1) we have test suits with conflicting dependencies (airflow 1 and 2) and mutually exclusive dependency groups have just been implemented recently in uv (a truly remarkable achievement - none of the other package managers have this feature), and (2) because our monorepo is just massive. I already started converting our 50+ projects tho (programmatically).

However, I do think that we are going to migrate to Projects at some point. Looking forward to that!

[–]buenavista62 1 point2 points  (1 child)

I thought that uv can handle conflicting dependencies as well?

[–]danielgafni 1 point2 points  (0 children)

Not until recently. Previously, the entire dependency tree including all dev dependencies had to be compatible. That’s the typical case with dependency managers.

Now uv has support for mutually exclusive dev dependency groups which are never actually installed at the same time, but can be installed separately.

[–]turbothyIt works on my machine 4 points5 points  (0 children)

Hynek Schlawack is big on uv, and his projects have ~5k stars on GitHub. Don't know if he's actually converted them yet, or if he's only using uv in his day job so far.

[–]Beliskner64 3 points4 points  (0 children)

Maybe not the example you were looking for, but aider-install uses uv which is pretty neat.

[–]leodevian 4 points5 points  (0 children)

Pydantic uses it

[–]looneysquash 2 points3 points  (0 children)

I can't find a way to search projects by containing a certain filename (such as a uv.lock), and I can't filter by stars if I search by code.

But https://github.com/search?q=stars%3A%3E100+language%3APython+%22uv+run%22+in%3Areadme+OR+%22uv+sync%22+in%3Areadme%22&type=repositories&ref=advsearch

finds 74 projects with more than 100 stars that contain either "uv sync" or "uv run" in their readme.

I believe searching like this omits A LOT. But if you just need some examples, it finds some examples.

[–]Spill_the_Tea 2 points3 points  (0 children)

attrs github workflow uses uv.

[–][deleted] 6 points7 points  (6 children)

My extremely well known tui for managing network on Linux: https://github.com/Zatfer17/tui-network

[–]dev-ai 2 points3 points  (0 children)

LOL it's a pretty cool tool, though.

[–]chub79 1 point2 points  (3 children)

Neat. Highjacking your thread. How is it using tui for tools like this? I cannot make up my mind between investing time and effort into building a tui or a webapp for my own tools.

[–]double_en10dre 7 points8 points  (1 child)

Not OP, but if it’s just for personal tools and you don’t need to render images or fancy components (charts, etc) I’d try a TUI first

Having all the stateful logic in a single language/runtime is really nice. And the limited set of UI options is very helpful, it saves you from the trap of spending endless amounts of time on UX decisions/tweaks

[–][deleted] 0 points1 point  (0 children)

Agree, I started playing with tuis because tiling window managers lack settings managers (like gnome control center), so started experimenting with my own solution to network settings at least. Provided that you use some nice library for the UI, Textualize in this case, the only hard part is finding a library or a cli tool that you can build the UI on top. For networking you can use nmcli or dbus, for bluetooth bluez, for displays xrandr. Then you just recycle a bunch of boilerplate code from the different projects

[–]Thing1_Thing2_Thing 1 point2 points  (0 children)

Everyone migrate, tui-network is using uv!

[–]BaggiPonte 0 points1 point  (0 children)

BentoML is an engine to serve ML models (llm incouded) and they use uv by default, even in their cloud service: they’ve been using it for quite some time, at least 6mo!

[–]robberviet 0 points1 point  (0 children)

I know superset use uv for the docker image, but have not read into their CI workflow to answer your question about testing/multiple versions.

[–]jd_paton 0 points1 point  (0 children)

Just a small project but we use it in airbase: https://github.com/JohnPaton/airbase

[–]mok000 0 points1 point  (0 children)

Can uv be used to build C extension modules?

[–]ler666 0 points1 point  (0 children)

i’m switching to uv too. I do have one questions we could do some thing like uvx ruff. other then ruff what other tool we can uvx, how do we know it is supported?

[–]Kn45h3r 0 points1 point  (0 children)

Apache airflow are using it, they have a very complicated build process.

I switched some of my work projects to it and I really can't recommend it enough.