Usando TestPyPI#
Test PyPI
é uma instância separada do Python Package Index (PyPI) que permite que você experimente as ferramentas de distribuição e o processo sem se preocupar em afetar o índice real. O TestPyPI está hospedado em test.pypi.org
Registrando sua conta#
Como o TestPyPI tem um banco de dados separado do PyPI real, você precisará de uma conta de usuário separada especificamente para o TestPyPI. Vá para https://test.pypi.org/account/register/ para registrar sua conta.
Nota
O banco de dados do TestPyPI pode ser apagado periodicamente, portanto, não é incomum que contas de usuário sejam excluídas.
Usando TestPyPI com Twine#
Você pode enviar suas distribuições para TestPyPI usando twine especificando o sinalizador --repository
:
twine upload --repository testpypi dist/*
Você pode ver se o seu pacote foi enviado com sucesso navegando para a URL https://test.pypi.org/project/<projetoexemplo>
onde projetoexemplo
é o nome do seu projeto que você enviou. O seu projeto pode demorar um ou dois minutos para aparecer no site.
Usando TestPyPI com pip#
Você pode dizer ao pip para baixar pacotes do TestPyPI, em vez do PyPI, especificando o sinalizador --index-url
:
python3 -m pip install --index-url https://test.pypi.org/simple/ your-package
py -m pip install --index-url https://test.pypi.org/simple/ your-package
Se você quiser permitir que pip também baixe outros pacotes do PyPI, você pode especificar --extra-index-url
para apontar para PyPI. Isso é útil quando o pacote que você está testando tem dependências:
python3 -m pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ your-package
py -m pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ your-package
Configurando TestPyPI no .pypirc
#
Se você quiser evitar ser solicitado a informar seu nome de usuário e senha toda vez, você pode configurar o TestPyPI em seu $HOME/.pypirc
:
[testpypi]
username = __token__
password = <your TestPyPI API Token>
Para mais detalhes, veja a especificação do .pypirc
.