Python Package Index

O Python Package Index, abreviado como PyPI e também conhecido como Cheese Shop (uma referência ao esboço "Cheese Shop" do Monty Python's Flying Circus),[1][2] é o repositório de software oficial de terceiros para Python.[3] É análogo ao CPAN, o repositório para Perl.[4] Alguns gerenciadores de pacotes, incluindo o pip, usam o PyPI como a fonte padrão para os pacotes e suas dependências.[5][6] Mais de 113.000 pacotes Python podem ser acessados por meio do PyPI.[7]

O PyPI, primariamente, hospeda pacotes Python na forma de arquivos chamados sdists (source distributions, em português, distribuições de fonte) ou "wheels" (rodas) pré-compiladas.[8]

O PyPI, como um índice, permite que os usuários pesquisem pacotes por palavras-chave ou por filtros em seus metadados, como licença de software livre ou compatibilidade com o POSIX.[9] Uma única entrada no PyPI é capaz de armazenar, além de apenas um pacote e seus metadados, versões anteriores do pacote, rodas pré-compiladas (por exemplo, contendo DLLs no Windows), bem como diferentes formas para diferentes sistemas operacionais e versões do Python.

História editar

O módulo Python Python Distribution Utilities (distutils), em portuguÊs Utilitários de Distribuição do Python, foi adicionado pela primeira vez à biblioteca padrão do Python na versão 1.6.1, em setembro de 2000, e na versão 2.0, em outubro de 2000, nove anos após a primeira versão em fevereiro de 1991, com o comando objetivo de simplificar o processo de instalação de pacotes Python de terceiros.[10][11]

No entanto, o distutils forneceu apenas as ferramentas para empacotar o código Python, e nada mais. Ele foi capaz de coletar e distribuir metadados, mas não os utilizou para outros fins.[12] O Python ainda não possuía um catálogo centralizado de pacotes na Internet. A PEP 241, uma proposta para padronizar metadados para índices, foi finalizado em março de 2001.[13] Uma proposta para criar um catálogo centralizado abrangente, hospedado no domínio python.org, foi finalizada posteriormente em novembro de 2002.[3][12]

Em 16 de abril de 2018, todo o tráfego do PyPI começou a ser atendido por uma plataforma de site mais moderna: Warehouse. O site herdado foi desativado no final daquele mês.[14][15] Todos os pacotes existentes foram migrados para a nova plataforma e seus históricos preservados.[16]

Referências editar

  1. Lutz 2006, p. 8.
  2. Ramalho 2015, p. 742.
  3. a b Hylton, Jeremy (24 de setembro de 2003). «Python Package Index Tutorial». Jeremy Hylton. Consultado em 22 de abril de 2012. Arquivado do original em 23 de abril de 2012 
  4. Barry 2010, p. 36.
  5. «Usage». pip 1.1.post1 documentation. The pip developers. Arquivado do original em 23 de abril de 2012 
  6. «PyPI mirrors». Python Package Index. Python Software Foundation. Consultado em 22 de abril de 2012. Arquivado do original em 23 de abril de 2012 
  7. «PyPI - the Python Package Index». Python Package Index. Python Software Foundation. Consultado em 18 de agosto de 2016 
  8. «PEP 427 -- The Wheel Binary Package Format 1.0». Python Software Foundation. 15 de fevereiro de 2013. Consultado em 28 de outubro de 2017 
  9. «Browse : Python Package Index». Python Software Foundation. Consultado em 2 de agosto de 2016 
  10. «Python 1.6.1». Python Software Foundation. Consultado em 24 de abril de 2012 
  11. «What's New in Python 2.0». Python Software Foundation. Consultado em 2 de agosto de 2016 
  12. a b «PEP 301 -- Package Index and Metadata for Distutils». Python Software Foundation. 24 de outubro de 2002. Consultado em 3 de junho de 2012 
  13. «PEP 241 -- Metadata for Python Software Packages». Python Software Foundation. 19 de outubro de 2001. Consultado em 18 de agosto de 2016 
  14. «Welcome to Warehouse's documentation!» 
  15. «Python Insider: New PyPI launched, legacy PyPI shutting down April 30». Python Software Foundation. 16 de abril de 2018. Consultado em 1º de junho de 2018 
  16. «A new package index for Python». LWN.net. Consultado em 1º de junho de 2018 

Bibliografia editar

  • Barry, Paul (2010). Head First Python. [S.l.]: O'Reilly Media, Inc. ISBN 978-1-4493-8267-4 
  • Alchin, Marty (2010). Pro Python. [S.l.]: Apress. ISBN 978-1-4302-2757-1 
  • Hussain, Zahid (2011). «Proceedings of the Fall 2010 Future SOC Lab Day». Universitätsverlag Potsdam. Technische Berichte des Hasso-Plattner-Instituts für Softwaresystemtechnik an der Universität Potsdam (42). ISBN 978-3-86956-114-1 
  • Martelli, Alex (2006). Python in a Nutshell. [S.l.]: O'Reilly Media, Inc. ISBN 9780596100469 
  • Lutz, Mark (2006). Programming Python. 10 3 ed. [S.l.]: O'Reilly Media, Inc. ISBN 9780596009250 
  • Ramalho, Luciano (2015). Fluent Python. [S.l.]: O'Reilly Media, Inc. ISBN 9781491946268 

Ligações externas editar

  Este artigo sobre programação de computadores é um esboço. Você pode ajudar a Wikipédia expandindo-o.