Skip to content
Latchkey

uv vs Poetry: gerenciamento de projetos Python comparado

Ambos gerenciam um projeto, resolvem dependências e escrevem um lockfile; o uv é mais rápido e mais novo, o Poetry é o padrão maduro e amplamente documentado.

O uv e o Poetry vão além de instalações brutas: eles modelam um projeto, travam todo o grafo de dependências e gerenciam ambientes virtuais. O uv (Rust) otimiza para velocidade; o Poetry tem anos de adoção, plugins e familiaridade de ecossistema.

uvPoetry
LinguagemRustPython
Lockfileuv.lockpoetry.lock
Velocidade de resolução/instalaçãoMuito rápidoMais lento, especialmente em grafos grandes
Empacotamento/publicaçãouv build / uv publishpoetry build / poetry publish
Maturidade & docsMais novo, evoluindo rápidoMaduro, ecossistema amplo

Onde o uv ganha

Em grafos de dependências grandes o uv resolve e instala muito mais rápido, o que se acumula a cada run de CI. Uma única ferramenta cobre instalar, travar, executar e buildar. O fluxo baseado em pyproject é familiar para usuários de Poetry, facilitando a migração.

Onde o Poetry ganha

O Poetry tem anos de uso em produção, documentação extensa, um ecossistema de plugins e comportamento previsível que muitos times já padronizam. Se seu time, suas ferramentas ou seus templates de CI pressupõem Poetry, a troca pode não valer o esforço. O comportamento do resolvedor do Poetry é bem compreendido e testado em campo.

Em CI

Faça commit do lockfile (uv.lock ou poetry.lock) e faça cache pelo seu hash. uv sync e poetry install --no-root ambos dão instalações determinísticas. A principal diferença prática que você sentirá nos pipelines é o tempo de instalação em relógio de parede.

O veredito

Escolha o uv por velocidade e um único toolchain rápido, especialmente em projetos grandes ou pipelines movimentados; fique com o Poetry quando sua maturidade, ecossistema e suas convenções existentes superarem o ganho de velocidade. Ambos produzem builds reproduzíveis e guiados por lockfile.

Guias relacionados