Recomendações de ferramentas¶
Se você está familiarizado com o pacote e a instalação do Python e só deseja saber quais ferramentas são recomendadas atualmente, aqui está.
Gerenciamento de dependências de aplicações¶
Use pip de uma maneira segura para instalar um aplicativo Python e suas dependências durante a implantação.
Use virtualenv ou venv para isolar dependências específicas da aplicação de uma instalação compartilhada do Python. 4
Use pip-tools, Pipenv, ou poetry para gerar as dependências específicas da aplicação totalmente especificadas, ao desenvolver aplicações Python.
Recomendações de ferramentas de instalação¶
Use pip para instalar pacotes do Python a partir do PyPI. 1 2 Dependendo de como pip é instalado, você também pode precisar instalar o wheel para obter o benefício do armazenamento em cache do wheel. 3
Use virtualenv ou venv para isolar dependências específicas do projeto de uma instalação compartilhada do Python. 4
Se você estiver procurando por gerenciamento de pilhas de software multiplataforma totalmente integradas, considere:
Recomendações de ferramentas de empacotamento¶
Use setuptools para definir projetos. 5 6
Use construir para criar Distribuições Fontes e wheels.
Se você tem extensões binárias e deseja distribuir wheels para várias plataformas, use cibuildwheel como parte de sua configuração de CI para construir wheels distribuíveis.
Migração da plataforma de publicação¶
A implementação do Python Package Index original (anteriormente hospedada em pypi.python.org) foi eliminada em favor de uma implementação atualizada hospedada em pypi.org.
Veja Migrando para PyPI.org para mais informações sobre o status da migração, e quais configurações alterar em seus clientes.
- 1
Existem alguns casos em que você pode escolher usar
easy_install
(do setuptools), por exemplo se você precisar instalar a partir de Eggs (que pip não oferece suporte). Para uma análise detalhada, consulte pip vs easy_install.- 2
A aceitação da PEP 453 significa que pip estará disponível por padrão na maioria das instalações do Python 3.4 ou posterior. Veja a seção de motivos da PEP 453 para saber por que pip foi escolhido.
- 3
get-pip.py e virtualenv instalam wheel, enquanto ensurepip e venv não instalam atualmente. Além disso, o pacote comum “python-pip” que é encontrado em várias distros do Linux, não depende do “python-wheel” atualmente.
- 4(1,2)
A partir do Python 3.4,
venv `` criará ambientes virtualenv com ``pip
instalado, tornando-o uma alternativa igual a virtualenv. No entanto, usar virtualenv ainda será recomendado para usuários que precisam de consistência entre versões.- 5
Embora você possa usar
distutils
puro para muitos projetos, ele não oferece suporta à definição de dependências em outros projetos e não possui vários utilitários de conveniência para preencher automaticamente os metadados de distribuição fornecidos pelosetuptools
. Estando fora da biblioteca padrão,setuptools
também oferece um conjunto de recursos mais consistente em diferentes versões do Python e (ao contrário dedistutils
), versões recentes dosetuptools
oferecem suporte a todos os campos de metadados modernos descritos em Especificações de metadados principais.Mesmo para projetos que escolhem usar
distutils
, quando o pip instala tais projetos diretamente da fonte (ao invés de instalar de um arquivo wheel pré-construído), ele irá, na verdade, construir seu projeto usando setuptools.- 6
distribute (um fork do setuptools) foi mesclado no setuptools em junho de 2013, tornando assim setuptools a escolha padrão para empacotamento.