Publicar tu paquete

Desarrollo de paquetes en Python

James Fulton

Climate informatics researcher

PyPI

Python Package Index

  • pip instala paquetes desde aquí
  • Cualquiera puede subir paquetes
  • Sube tu paquete en cuanto pueda ser útil
1 https://pypi.org/
Desarrollo de paquetes en Python

Distribuciones

  • Paquete de distribución: versión empaquetada de tu paquete lista para instalar.
  • Distribución de código fuente: paquete de distribución que es sobre todo tu código.
  • Distribución wheel: paquete de distribución procesado para instalarse más rápido.
Desarrollo de paquetes en Python

Cómo crear distribuciones

python setup.py sdist bdist_wheel

  • sdist = distribución de código fuente
  • bdist_wheel = distribución wheel
mysklearn/
|-- mysklearn
|-- setup.py
|-- requirements.txt
|-- LICENSE
|-- README.md

|-- dist <---
| |-- mysklearn-0.1.0-py3-none-any.whl
| |-- mysklearn-0.1.0.tar.gz
|-- build |-- mysklearn.egg-info
Desarrollo de paquetes en Python

Cómo dar a conocer tu paquete

Sube tus distribuciones a PyPI

twine upload dist/*

Sube tus distribuciones a TestPyPI

twine upload -r testpypi dist/*
mysklearn/
|-- mysklearn
|-- setup.py
|-- requirements.txt
|-- LICENSE
|-- README.md
|-- dist
|   |-- mysklearn-0.1.0-py3-none-any.whl
|   |-- mysklearn-0.1.0.tar.gz
|-- build
|-- mysklearn.egg-info
Desarrollo de paquetes en Python

Cómo otras personas pueden instalar tu paquete

Instalar el paquete desde PyPI

pip install mysklearn

Instalar el paquete desde TestPyPI

pip install --index-url         https://test.pypi.org/simple 
            --extra-index-url   https://pypi.org/simple
            mysklearn
Desarrollo de paquetes en Python

¡Vamos a practicar!

Desarrollo de paquetes en Python

Preparing Video For Download...