| ▲ | andy99 5 hours ago | ||||||||||||||||
I remain baffled about these posts getting excited about uv’s speed. I’d like to see a real poll but I personally can’t imagine people listing speed as one of the their top ten concerns about python package managers. What are the common use cases where the delay due to package installation is at all material? Edit to add: I use python daily | |||||||||||||||||
| ▲ | techbruv 4 hours ago | parent | next [-] | ||||||||||||||||
At a previous job, I recall updating a dependency via poetry would take on the order of ~5-30m. God forbid after 30 minutes something didn’t resolve and you had to wait another 30 minutes to see if the change you made fixed the problem. Was not an enjoyable experience. uv has been a delight to use | |||||||||||||||||
| |||||||||||||||||
| ▲ | thraxil 5 hours ago | parent | prev | next [-] | ||||||||||||||||
Working heavily in Python for the last 20 years, it absolutely was a big deal. `pip install` has been a significant percentage of the deploy time on pretty much every app I've ever deployed and I've spent countless hours setting up various caching techniques trying to speed it up. | |||||||||||||||||
| ▲ | stavros 5 hours ago | parent | prev | next [-] | ||||||||||||||||
I can run `uvx sometool` without fear because I know that it'll take a few seconds to create a venv, download all the dependencies, and run the tool. uv's speed has literally changed how I work with Python. | |||||||||||||||||
| |||||||||||||||||
| ▲ | gordonhart 5 hours ago | parent | prev | next [-] | ||||||||||||||||
`poetry install` on my dayjob’s monolith took about 2 minutes, `uv sync` takes a few seconds. Getting 2 minutes back on every CI job adds up to a lot of time saved | |||||||||||||||||
| ▲ | rsyring 5 hours ago | parent | prev | next [-] | ||||||||||||||||
As a multi decade Python user, uv's speed is "life changing". It's a huge devx improvement. We lived with what came before, but now that I have it, I would never want to go back and it's really annoying to work on projects now that aren't using it. | |||||||||||||||||
| ▲ | recov 5 hours ago | parent | prev | next [-] | ||||||||||||||||
Docker builds are a big one, at least at my company. Any tool that reduces wait time is worth using, and uv is an amazing tool that removes that wait time. I take it you might not use python much as it solves almost every pain point, and is fast which feels rare. | |||||||||||||||||
| ▲ | optionalsquid an hour ago | parent | prev | next [-] | ||||||||||||||||
Speed is one of the main reasons why I keep recommending uv to people I work with, and why I initially adopted it: Setting up a venv and installing requirements became so much faster. Replacing pipx and `uv run` for single-file scripts with external dependencies, were additional reasons. With nox adding uv support, it also became much easier and much faster to test across multiple versions of Python | |||||||||||||||||
| ▲ | VorpalWay 4 hours ago | parent | prev | next [-] | ||||||||||||||||
CI: I changed a pipeline at work from pip and pipx to uv, it saved 3 minutes on a 7 minute pipeline. Given how oversubscribed our runners are, anything saving time is a big help. It is also really nice when working interactivly to have snappy tools that don't take you out of the flow more than absolutely more than necessary. But then I'm quite sensitive to this, I'm one of those people who turn off all GUI animations because they waste my time and make the system feel slow. | |||||||||||||||||
| ▲ | zahlman 3 hours ago | parent | prev | next [-] | ||||||||||||||||
It's not just about delays being "material"; waiting on the order of seconds for a venv creation (and knowing that this is because of pip bootstrapping itself, when it should just be able to install cross-environment instead of having to wait until 2022 for an ugly, limited hack to support that) is annoying. But small efficiencies do matter; see e.g. https://danluu.com/productivity-velocity/. | |||||||||||||||||
| ▲ | pseudosavant 4 hours ago | parent | prev | next [-] | ||||||||||||||||
I avoided Python for years, especially because of package and environment management. Python is now my go to for projects since discovering uv, PEP 723 metadata, and LLMs’ ability to write Python. | |||||||||||||||||
| ▲ | SatvikBeri 5 hours ago | parent | prev | next [-] | ||||||||||||||||
Setting up a new dev instance took 2+ hours with pip at my work. Switching to uv dropped the Python portion down to <1 minute, and the overall setup to 20 minutes. A similar, but less drastic speedup applied to docker images. | |||||||||||||||||
| ▲ | blibble an hour ago | parent | prev | next [-] | ||||||||||||||||
conda can take an hour to tell you your desired packages are unsatisifiable saying that, other than the solver, most of what uv does is always going to be IO bound | |||||||||||||||||
| ▲ | patrick91 4 hours ago | parent | prev | next [-] | ||||||||||||||||
for me it's being able to do `uv run whatever` and always know I have the correct dependencies (also switching python version is so fast) | |||||||||||||||||
| ▲ | pants2 5 hours ago | parent | prev | next [-] | ||||||||||||||||
The biggest benefit is in CI environments and Docker images and the like where all packages can get reinstalled on every run. | |||||||||||||||||
| ▲ | toenail 5 hours ago | parent | prev | next [-] | ||||||||||||||||
The speed is nice, but I switched because uv supports "pip compile" from pip-tools, and it is better at resolving dependencies. Also pip-tools uses (used?) internal pip methods and breaks frequently because of that, uv doesn't. | |||||||||||||||||
| ▲ | ExoticPearTree 3 hours ago | parent | prev | next [-] | ||||||||||||||||
Build jobs where you have a lot of dependencies. Those GHA minutes go brrrr. | |||||||||||||||||
| ▲ | IshKebab 4 hours ago | parent | prev | next [-] | ||||||||||||||||
Do you still remain baffled after the many replies that people actually do like their tooling to be not dog slow like pip is? | |||||||||||||||||
| ▲ | adammarples 4 hours ago | parent | prev [-] | ||||||||||||||||
It's annoying. Do you use poetry? Pipenv? It's annoying. | |||||||||||||||||