One limitation I know of are the inability to detect stale packages.
Apart from „blazing fast“, which I‘m not convinced it really matters to me as I rarely touch the dependencies, what are the main reasons why uv is gaining traction?
One limitation I know of are the inability to detect stale packages.
Apart from „blazing fast“, which I‘m not convinced it really matters to me as I rarely touch the dependencies, what are the main reasons why uv is gaining traction?
No need to activate venvs and the almost inevitable Python pathing "murder mysteries". uv installs in venvs first, and only then someplace else (e.g., globally).
No more clunky typing `python -m pip install foo` even when you have activated your venv (or you think you have). `uv pip install foo` is nicer and easier to remember.
uv add will add new dependencies to your pyproject.toml so you don't have to.
uv can setup skeletons for new projects in a nice, modern way
For older projects, you can have uv to resolve dependencies as of a certain date. I imagine this is great for older projects, especially with numerous dependencies.
It might remove the need for pyenv or the need to rely on your system provided Python, since uv can install Python for your project.
Cross-platform lock files
I've just started looking in to uv, so maybe my list isn't complete/very good. Some down sides include, it's still green (has some bugs naturally and lacks some features) and some might not trust/like that it's VC backed.
Interesting. I imagine this is a selling point for corporate environments.