Publique seu primeiro pacote Python no PyPI

Processo passo a passo de criação e publicação do seu primeiro pacote Python no PyPI

Neste tutorial, vamos aprender como desenvolver um pacote python e publicá-lo no PyPI . Vamos criar um pacote chamado number-utility , que simplifica a manipulação de números e várias operações em números. Vamos usar o Git como um VCS para este projeto e hospedá-lo no GitHub .

Vejamos as tarefas que devem ser concluídas neste processo.

  1. Criando a estrutura de pastas do projeto
  2. Criando o arquivo setup.py
  3. Criando o(s) Módulo(s)
  4. Escrevendo testes e realizando validação
  5. Criando compilações e arquivos de distribuição
  6. Escolhendo uma licença e fornecendo um arquivo README
  7. Publicando no repositório PyPI

Primeiro de tudo, vamos olhar para a estrutura de pastas do projeto. Crie uma pasta com o nome number_utility . Inicialize um repositório git vazio em seu local executando o seguinte comando no terminal:

git init

Em seguida, crie um arquivo .gitignore. Vá até gitignore.io e procure por Python e copie o conteúdo gerado para este arquivo .gitignore. Crie dois arquivos chamados setup.py e test_number_utility.py. Crie uma subpasta chamada src dentro da pasta raiz (number_utility) e crie um novo arquivo python chamado number_utility.py. A estrutura de pastas do projeto ficaria assim:

Estrutura de pastas do projeto

Não se preocupe com os arquivos como LICENSE e MANIFEST.in por enquanto. Vamos analisá-los na penúltima etapa do processo. Agora que a estrutura de pastas do projeto está pronta, vamos ver o arquivo setup.py.

Criando o arquivo setup.py

O setup.py é um arquivo python que indica que o módulo/pacote foi empacotado e distribuído. Isso permite que você instale facilmente pacotes python. Vamos definir certas propriedades e parâmetros usando o pacote setuptools. O setup.py do nosso projeto ficaria assim:

Você pode notar que configuramos um parâmetro extras_require e definimos algumas dependências. Essas dependências são necessárias apenas em um ambiente de desenvolvimento. Agora que o setup.py está pronto, vamos ver como criar o módulo.

Criando o módulo

Vá para number_utility.py . Este é o arquivo onde vamos implementar as funcionalidades. Conforme destacado anteriormente, o objetivo deste pacote é ajudar na manipulação de números e realizar operações em números . Vamos implementar funções como reverse_num(), sum_of_digits(), is_prime(), generate_primes(), get_factors() etc. Essas funções não estão presentes como incorporadas em python. Na verdade, o propósito de criar um pacote é adicionar funcionalidades que faltam . O arquivo number_utility.py ficaria assim:

Escrevendo testes e realizando validação

Antes de prosseguir para testar o funcionamento do pacote, você precisa certificar-se de instalar o pacote localmente em sua máquina. Além disso, certifique-se de instalar todas as dependências dev (mencionadas no setup.py). Para isso, execute o seguinte comando no terminal:

pip install -e .[dev]

Em seguida, vá para o arquivo test_number_utility.py . Vamos começar a escrever alguns testes para o módulo.

Para executar o teste, execute o comando no terminal:

py.test

Depois de executar os testes, você obteria uma saída como esta se os testes fossem bem-sucedidos.

Saída após executar os testes

Este seria um ótimo momento para você enviar seu projeto para o GitHub. Crie um arquivo README.md no GitHub. Além disso, escolha um modelo de licença apropriado e crie seu arquivo de LICENÇA também. Puxe essas alterações para o seu local.

gi adicionar.

git commit -m “Concluído com o teste”

git push

Em seguida, certifique-se de fazer pull das alterações remotas em sua máquina local antes de prosseguir.

git pull

Agora, vamos prosseguir com os próximos passos.

Criando compilações e arquivos de distribuição

Agora que o pacote está pronto e testado, o próximo passo é criar os arquivos de distribuição. Execute o seguinte comando para criar a distribuição de origem .

python3 setup.py sdist

Depois de executar esse comando, você verá a saída conforme mostrado abaixo.

Criando distribuição de origem

Vamos testar a distribuição fonte gerada usando o seguinte comando no terminal:

tar tzf dist/number_utility-0.0.3.tar.gz

Após a execução do comando acima, você notará que os arquivos LICENSE e test_number_utility.py estão ausentes . Para adicionar esses arquivos ausentes, precisamos usar um pacote chamado check-manifest . Execute o seguinte conjunto de comandos no terminal:

pip install check-manifest

check-manifest — criar

git add MANIFEST.in

Execute o comando tar novamente para verificar se os arquivos ausentes foram adicionados. Em seguida, precisamos criar a compilação final do pacote. Execute o seguinte comando no terminal:

python3 setup.py bdist_wheel sdist

Verifique se as distribuições são criadas listando os arquivos presentes na pasta dist e observe também uma pasta build sendo criada. Execute o seguinte comando para verificar o mesmo.

ls dist/

Publicando no repositório PyPI

O pacote está pronto para ser publicado no PyPI. Para fazer isso, precisamos fazer uso de barbante . Execute o seguinte comando no terminal:

pip instalar fio

Depois disso, certifique-se de criar uma conta no PyPI . Em seguida, execute o seguinte comando no terminal:

dist. de upload de fio/*

Ele pedirá seu nome de usuário e senha. E é isso. Seu pacote está ativo no PyPI!

Chegamos ao final deste tutorial. Se você estiver interessado, pode até querer contribuir para o repositório GitHub. O link para o mesmo está aqui . Além disso, dê uma olhada em um pacote, que será útil para entender e implementar estruturas de dados e algoritmos. O link para o mesmo está aqui .

Se você tiver alguma dúvida, poste na seção de comentários abaixo. Conecte-se comigo no LinkedIn . Além disso, se você quiser ver minha incrível coleção de aplicativos desenvolvidos, não se esqueça de conferir a Google Play Store .

Saiba mais sobre mim aqui .

Não se esqueça de seguir The Lean Programmer Publication para mais artigos como esse, e assine nossa newsletter tinyletter.com/TheLeanProgrammer

Suggested posts

Encontrar informações sobre nomes de domínio

Um trecho de Small, Sharp Software Tools por Brian P. Hogan

Encontrar informações sobre nomes de domínio

Quando você faz uma solicitação para facebook.com, seu computador procura o nome de domínio para traduzir esse nome de domínio em um endereço IP para que seu computador possa fazer essa conexão.

Como executar plugins ChatGPT gratuitamente usando Langchain

Como executar plugins ChatGPT gratuitamente usando Langchain

Você deve ter ouvido falar sobre todos os novos plug-ins poderosos do ChatGPT, como navegador, intérprete de código, etc. Mas há um problema, o acesso aos plug-ins é limitado a uma lista de espera e, portanto, muitos não têm acesso a ela.

Related posts

Financiando a remoção de carbono no FY24

A divisão das solicitações de apropriações da Carbon180 em todos os caminhos

Financiando a remoção de carbono no FY24

Por Alyson Lee, consultor administrativo de assuntos governamentais O processo de apropriações anuais do governo federal é fundamental para nossos esforços para financiar a remoção de dióxido de carbono (CDR). Todos os anos, a Carbon180 envia solicitações a vários escritórios do Congresso para ajudar a orientar para onde os dólares do próximo ano irão fluir.

O que torna um podcast influente?

O que torna um podcast influente?

Na semana passada, notei um comunicado de imprensa, enviado via PressGazette (um site de notícias da mídia britânica). O artigo anunciava que a Acast, a empresa de publicidade e hospedagem de podcast Scandi, lideraria um consórcio de "provavelmente os editores mais influentes" em podcasting.

"A Fossa das Marianas Revelada: Revelando as Terríveis Verdades Ocultas do Abismo"

"A Fossa das Marianas Revelada: Revelando as Terríveis Verdades Ocultas do Abismo"

Introdução:Bem-vindos, corajosos leitores, a uma jornada que nos levará às profundezas mais sombrias do nosso planeta. Neste blog, mergulhamos no mundo enigmático da Fossa das Marianas, revelando seus segredos ocultos e revelando as verdades arrepiantes que se escondem sob sua superfície.

Como Salvar o Planeta e Ganhar Dinheiro

Como Salvar o Planeta e Ganhar Dinheiro

Quantas vezes você jogou fora uma garrafa de plástico, uma jarra de vidro, uma lata de alumínio ou uma embalagem de energia verde sem pensar duas vezes? Quantas vezes você desejou receber algo em troca de reciclá-los? Se você for como a maioria das pessoas, a resposta provavelmente é muitas vezes. A reciclagem é muitas vezes vista como um aborrecimento, uma tarefa árdua ou um dever que não traz nenhum benefício imediato ou tangível.