Publier votre package

Développer des packages Python

James Fulton

Climate informatics researcher

PyPI

Python Package Index

  • pip installe les packages depuis ce site
  • Tout le monde peut y téléverser des packages
  • Téléversez votre package dès qu'il peut être utile
1 https://pypi.org/
Développer des packages Python

Distributions

  • Distribution : une version empaquetée, prête à installer.
  • Distribution source : une distribution qui reprend surtout votre code source.
  • Distribution Wheel : une distribution précompilée, plus rapide à installer.
Développer des packages Python

Créer des distributions

python setup.py sdist bdist_wheel

  • sdist = distribution source
  • bdist_wheel = distribution 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
Développer des packages Python

Diffuser votre package

Téléversez vos distributions sur PyPI

twine upload dist/*

Téléversez vos distributions sur 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
Développer des packages Python

Comment d'autres peuvent installer votre package

Installer depuis PyPI

pip install mysklearn

Installer depuis TestPyPI

pip install --index-url         https://test.pypi.org/simple 
            --extra-index-url   https://pypi.org/simple
            mysklearn
Développer des packages Python

Passons à la pratique !

Développer des packages Python

Preparing Video For Download...