Migrando para PyPI.org#
- Status da página:
Obsoleto
pypi.org é a nova versão reescrita do PyPI que substituiu a base de código legada do PyPI. É a versão padrão do PyPI que se espera que as pessoas usem. Estas são as ferramentas e processos que as pessoas precisarão para interagir com o PyPI .org
.
Publicando lançamentos#
pypi.org
é a plataforma padrão para envio em setembro de 2016.
Os envios por meio de pypi.python.org
foram desativados em 3 de julho de 2017. Desde 13 de abril de 2018, pypi.org
é a URL do PyPI.
A maneira recomendada de migrar para PyPI.org para enviar é garantir que você esteja usando uma versão nova o suficiente de sua ferramenta de envio.
As configurações de envio padrão mudaram para pypi.org
nas seguintes versões:
twine
1.8.0setuptools
27.0.0Python 2.7.13 (atualização de
distutils
)Python 3.4.6 (atualização de
distutils
)Python 3.5.3 (atualização de
distutils
)Python 3.6.0 (atualização de
distutils
)
Além de garantir que você esteja em uma versão nova o suficiente da ferramenta para que o padrão da ferramenta seja alterado, você também deve se certificar de que não configurou a ferramenta para substituir sua URL de envio padrão. Normalmente, isso é configurado em um arquivo localizado em $HOME/.pypirc
. Se você vir um arquivo como:
[distutils]
index-servers =
pypi
[pypi]
repository = https://pypi.python.org/pypi
username = <your PyPI username>
password = <your PyPI username>
Em seguida, simplesmente exclua a linha começando com repository
e você usará a URL padrão da sua ferramenta de envio.
Se por algum motivo você não puder atualizar a versão de sua ferramenta para uma versão que usa o padrão PyPI.org, então você pode editar $HOME/.pypirc
e incluir a linha repository:
, mas use o valor https://upload.pypi.org/legacy/
em vez disso:
[distutils]
index-servers =
pypi
[pypi]
repository = https://upload.pypi.org/legacy/
username = <your PyPI username>
password = <your PyPI password>
(legacy
nesta URL refere-se ao fato de que esta é a emulação da implementação do novo servidor para a API de envio da implementação do servidor legado.)
Para mais detalhes, veja a especificação do .pypirc
.
Registrando nomes pacotes e metadados#
O pré-registro explícito de nomes de pacotes com o comando setup.py register
antes do primeiro envio não é mais necessário e não é mais suportado pela emulação de API de envio legado no PyPI.org.
Como resultado, a tentativa de registro explícito após alternar para o uso de PyPI.org para envios gerará a seguinte mensagem de erro:
Server response (410): This API is no longer supported, instead simply upload the file.
A solução é pular a etapa de registro e prosseguir diretamente para o envio dos artefatos.
Usando TestPyPI#
O TestPyPI legado (testpypi.python.org) não está mais disponível; use test.pypi.org em vez disso. Se você usar o TestPyPI, você deve atualizar seu $HOME/.pypirc
para lidar com o novo local do TestPyPI, substituindo https://testpypi.python.org/pypi
por https://test.pypi.org/legacy/
, por exemplo:
[distutils]
index-servers=
pypi
testpypi
[testpypi]
repository = https://test.pypi.org/legacy/
username = <your TestPyPI username>
password = <your TestPyPI password>
Para mais detalhes, veja a especificação do .pypirc
.
Registrando novas contas de usuário#
A fim de ajudar a mitigar ataques de spam contra PyPI, o registro de novo usuário por meio de pypi.python.org
foi desativado em 20 de fevereiro de 2018. Novos registros de usuários em pypi.org
estão abertos.
Navegando pelos pacotes#
Embora pypi.python.org
ainda possa ser usado em links de outras documentações do PyPA, etc, a interface padrão para navegar pelos pacotes é pypi.org
. O domínio pypi.python.org agora redireciona para pypi.org e pode ser desativado em algum momento no futuro.
Baixando pacotes#
pypi.org
é o host padrão para download de pacotes.
Gerenciando pacotes e lançamentos publicados#
pypi.org
fornece uma interface totalmente funcional para usuários autenticados gerenciarem seus pacotes publicados e lançamentos.