definitely not the real reason for a project like this to exist. Python package management can be nightmarish at times depending on what you’re doing. between barebones requirements.txt, Poetry, and the different condas there’s a ton of fragmentation, and none of them do everything you’d want in an ideal way. above and beyond speed, i think uv is another attempt at it. but it could just be another classic xkcd moment where now there’s just another standard to deal with
uv is a drop-in replacement for pip. There’s no extra standard. It’s pareto better. Honestly the Python community would do the world a favour if the deprecated pip and adopted uv as the official tool, but you can guess how likely that is…
as you might have guessed i haven’t really tried it, but i have been reading about it. that said i have used “drop in replacement” tools like this (we use pnpm at work), and a drop in replacement is not without quirks. they wouldn’t have made a different tool altogether if it was really a 1:1 replacement. just because the commands are the same doesn’t mean it behaves the same. i.e. i doubt one person on the team could be using uv while everyone else sticks to pip
they wouldn’t have made a different tool altogether if it was really a 1:1 replacement
Why not? It’s 10x faster.
I think it might have some other new features but you don’t need to use those.
i doubt one person on the team could be using uv while everyone else sticks to pip
This is exactly what we do at work. There’s no way I could convince everyone to switch to uv so I just switch between them based on an environment variable.
It even supports random stuff like pip install --config-settings editable_mode=compat --editable foo which is required for static tooling to work (e.g. Pyright).
definitely not the real reason for a project like this to exist. Python package management can be nightmarish at times depending on what you’re doing. between barebones
requirements.txt, Poetry, and the differentcondas there’s a ton of fragmentation, and none of them do everything you’d want in an ideal way. above and beyond speed, i thinkuvis another attempt at it. but it could just be another classic xkcd moment where now there’s just another standard to deal withuvis a drop-in replacement forpip. There’s no extra standard. It’s pareto better. Honestly the Python community would do the world a favour if the deprecated pip and adopted uv as the official tool, but you can guess how likely that is…as you might have guessed i haven’t really tried it, but i have been reading about it. that said i have used “drop in replacement” tools like this (we use
pnpmat work), and a drop in replacement is not without quirks. they wouldn’t have made a different tool altogether if it was really a 1:1 replacement. just because the commands are the same doesn’t mean it behaves the same. i.e. i doubt one person on the team could be usinguvwhile everyone else sticks topipWhy not? It’s 10x faster.
I think it might have some other new features but you don’t need to use those.
This is exactly what we do at work. There’s no way I could convince everyone to switch to
uvso I just switch between them based on an environment variable.It even supports random stuff like
pip install --config-settings editable_mode=compat --editable foowhich is required for static tooling to work (e.g. Pyright).