O MAIOR PROBLEMA DO PYTHON FINALMENTE RESOLVIDO

preview_player
Показать описание
Adoro Python e trabalho com esta tecnologia já tem 20 anos, mas sempre teve uma coisa na linguagem que não cheirava bem e agora finalmente o problema está resolvido.

A ferramenta UV promete ser o Cargo (da linguagem #rust) para o #python e resolver todos os problemas de gestão de projetos e dependências.

O UV é até 100x mais rápido que o pip para resolução de dependências e instalação de pacotes e além disso também gerencia ambiente virtuais e a própria instalação do Python

Cursos de Python com Bruno Rocha na LINUXtips

Seja membro deste canal e ganhe benefícios:

Videos mais assistidos do CodeShow:

Coisas que não devemos fazer com Python com @rochacbruno

Aprenda Rust: Ownership & Borrowing com @rochacbruno

Plano de Carreira em Dados com o @teomewhy

Quarkus e Java com o @CaravanaCloud

Acompanhe a série one-minute Python com a @bug_elseif nos shorts

0:00 O maior problema do Python
3:55 O Cargo do Python
6:33 Senta que lá vem a história
9:10 Instalação
10:25 Inicialização de Projeto
12:20 UVX
14:20 Executando ferramentas
16:03 Versões do Python
17:30 PIP Interface
18:23 pyproject
19:25 Inline Script Metadata
24:30 Outras funcionalidades
25:15 Workspaces
26:40 Fin
Рекомендации по теме
Комментарии
Автор

Confesso que, pelo título, achei que o assunto seria GIL. hahahaha
Eu tenho usado o UV no dia a dia, mas estava usando como substituto do pip-tools, não sabia que fazia tanta coisa.
Excelente vídeo Bruno, valeu!

Автор

Muito interessante. Eu como iniciante, sempre fico confuso e tentando o melhor caminho para iniciar um projeto e gerenciar.

fragmendan
Автор

Dependências e problemas de gestão de projetos é uma questão discutida e em algum grau dado alguma solução em qualquer linguagem. A questão é o tamanho do projeto e as relações de dependências com outros projetos. O Java é ótimo para gerir dependências. Em projetos isolados (mesmo que grandes) é excelente !! No entato, quando vc começa cruzar isso com servidores de aplicação e bibliotecas "feitas em casa"... Aí a coisa realmente complica. Eu defendo muito a implementação do tipo *NIX que eh ter projetos menores, que tenha um minino de implementações bem feitas, para facilitar integração com outros sistemas em qualquer linguagem. Essa ferramenta (UV) vou colocar na minha caixa de ferramentas para usar. Achei muito interessante. Muito Obrigado pelo vídeo e parabéns pelo trabalho.

spedison
Автор

Bem interessante meu querido Bruno,

5:18 não vejo tanto problema, porque a gente pode criar alias para isso. Sobre o UV não conhecia, estou distante do mundo do python faz tempo, mas digo que você é um cara que vale apena para pra escutar. Obrigado por passar conhecimento

marcuxyz
Автор

Fantastico, parabens pelo video. Pelo titulo pensei que ia falar sobre o compilador jit experimental do Python

carlosmarciosfreitas
Автор

Quem sofre com resolver dependência no python, não queira chegar perto de Java.

ruansantiago
Автор

Muito bom!
Quem tá acostumado em projetos em typescript/javascript, react, next e afins vai se sentir familiarizado...
Quem usa o bun (ou yarn) e viu o uv add [ . . . ], com certeza lembrou do bun add [ . . . ] yarn add [ . . . ] ou o próprio npm i [ . . .]
Ou mudar de versão usando o nvm use node [versão] (ou algo assim, não lembro agora... hehehehehe)
Essas ferramentas são extremamente úteis na hora de desenvolver. Outras linguagens tbm tem as suas, como ele mesmo falou do Rust com o cargo. Então que bom que o Python agora pode contar com algo assim tbm.
Uma dica pra quem usa o Windows, eh que o UV está disponível via scoop... Dá um scoop install uv e seja feliz! Mas pode baixar via winget tbm se preferir, conforme a doc lá fala.
Muito bom o vídeo, cara. Bem didático. Excelente dica! Ganhou um inscrito! 😄👍

gustavosiqueira
Автор

lembro de alguns anos atrás ver vídeos seus (não achei eles =/) onde você resolvia issues do Dynaconf. Acho um conteúdo muito interessante para poder ver como é o processo de manutenção em projeto relativamente grande. Adoraria ver mais

natan
Автор

Muito bom o vídeo. Muito obrigado.
Gostei do conteúdo e do formato com o código ao seu lado.
Parabéns meu jovem. Já me inscrevi em seu canal

jeffborges
Автор

Achei top essa ferramenta. Obrigado por compartilhar!

wilsonf
Автор

Bruno, como sempre EXCELENTE conteudo e MUITO didatico. Parabens.

mcscunha
Автор

Tudo que vc falou é verdade, mesmo assim para criar imagens Docker com Python é outro B.O grande, sem falar da complexidade de tantas dependências e configurações que é necessário fazer e dependendo do projeto isso fica pior, isso tudo resulta em builds muito complexos e inflados que gera imagens absurdamente grandes, eu troquei o Python pelo Go em 2018 e justamente por essa bagunça, no Go tudo isso é mais simples.

Outro dia pegue um projeto que tinha aproximadamente 2.6 GB o tamanho da imagem Docker e mesmo fazendo multi-stage build ainda ficou enorme, troquei por Go e pasme a imagens ficou com menos de 200MB uma redução de mais ou menos uns 2000%.

Transformaram o Python em um híbrido filho de NodeJS + Java ficou muito ruim de gerenciar projetos Python hoje em dia.

FAELP
Автор

Ótimo vídeo... Seguia usando só o ruff como formater, não fazia idea dos últimos desenvolvimentos (nem do uv nem do lsp)... Fiquei curioso pra usar e queria passar de poetry pra uv, mas pelo que vi, fazer essa transição parece um processo bem manual... Espero que consigam achar melhores maneiras pra fazer transições e tornar mais flexível pra quem quer migrar...

garcialn
Автор

eu que pensei que só existia o pip para gerencia de pacotes no pythom agora só usar UV coisa boa obrigado por essa perola

samuelpessoa
Автор

Bruno, como sempre EXCELENTE conteúdo e MUITO didático. Realmente ótimo.

E como você abriu o espaço para perguntas, lá vai a minha..

O `uv` também incorpora um gerenciador de versão padrão "Versionamento Semantico", equivalente ao bumpversion ou aos poetry version?

ricardobrito
Автор

Eu não sei se é uma boa ideia a médio prazo concentrar tanto poder e funcionalidade na mão de uma única empresa. Eu acho legal essa ferramentas novas, mas fico com um pé atrás.

henriquedeandrade
Автор

Muito bom, tava faltando isso mesmo em python

etni_dev
Автор

Sentindo falta de mais vídeos seu de Rust.

littleghoost
Автор

Se eu estiver usando o UV como gerenciador de pacotes e projetos no Python, ele pode interferir nas funcionalidades da minha IDE, como as sugestões exibidas em um menu suspenso durante a digitação e as informações exibidas ao passar o mouse sobre funções e classes? Considerando que o Python instalado na minha máquina é o que configurei dentro do UV, isso pode afetar a experiência dentro da IDE?

matheusamon
Автор

gostei muito dessa solução, mas qual seria o diferencial dessa ferramenta, ao poetry? vejo o mesmo potencial, e já esta estabilizada no mercado

Wigdor-fligdor