- Desempenho ou compatibilidade com Python não são o diferencial do uv. O uv segue as PEPs e é recomendável como gerenciador de pacotes para Python. Porém, existe outro recurso ainda mais surpreendente.
- Ao fazer scripting ad-hoc em Python 3.12, às vezes é preciso adicionar dependências como o Pandas. O método comum é o seguinte:
- executar
pip install pandas e modificar o ambiente global, ou
- criar um ambiente virtual, executar
pip install pandas, ativar o ambiente virtual e então rodar o Python.
- Se for necessária outra versão do Python, é preciso usar o
pyenv para instalar e definir a versão localmente. No pior caso:
pyenv install 3.12
pyenv local 3.12
python -m venv .venv
source .venv/bin/activate
pip install pandas
python
- Com o uv, isso é possível com um único comando:
uv run --python 3.12 --with pandas python
- É fácil de lembrar e não deixa rastros. Boa diversão com seus scripts!
5 comentários
Ainda uso
poetry, mas já está na hora de começar a migrar. Pelo visto, também vai ser adeus aovirtualenv wrapper.Parece que finalmente chegou a hora de largar o
pipde vez.Estou usando o uv com bastante satisfação em praticamente tudo, exceto pelo fato de que, toda vez que faço
init, ele traz junto um monte de coisas desnecessárias.O recurso matador do Uv é facilitar a criação de ambientes ad-hoc na hora
Comentários do Hacker News
Há quem goste muito do gerenciador de pacotes uv e gostaria que ele se tornasse o padrão da comunidade. É uma ferramenta especialmente recomendável para novos usuários
O uv oferece suporte a dependências inline de scripts do PEP 723, permitindo um uso mais limpo
Como desenvolvedor NodeJS, é surpreendente que o problema de configuração de ambiente do Python ainda não tenha sido resolvido. Node também não é perfeito, mas não há preocupação com modificar o ambiente global
Não é necessário ativar o virtualenv, e é possível criar diretamente um ambiente virtual sem configurar o interpretador com pyenv
Há quem considere incômodo que várias funções estejam agrupadas em uma única ferramenta no uv. Ativar o venv e executar programas várias vezes pode ser mais conveniente
O uv inclui o comando uvx, que permite executar scripts Python sem instalação manual
uvx --from 'huggingface_hub[cli]' huggingface-cliHá quem goste do uv e queira experimentá-lo em breve, mas diga não ter entendido o ponto principal do artigo. Também é possível usar pyenv e poetry para obter dependências locais
Quando há outras dependências binárias, usar Nix com virtualenv + pip-tools pode ser uma escolha melhor
Há quem diga que primeiro é preciso ativar o ambiente virtual no "caminho correto" e depois instalar o pandas