Je package publiceren

Python-pakketten ontwikkelen

James Fulton

Climate informatics researcher

PyPI

Python Package Index

  • pip installeert packages hiervandaan
  • Iedereen kan packages uploaden
  • Upload jouw package zodra het nuttig is
1 https://pypi.org/
Python-pakketten ontwikkelen

Distributies

  • Distribution package: een gebundelde, installeerbare versie.
  • Source distribution: distributie met vooral je broncode.
  • Wheel distribution: distributie die is verwerkt voor snellere installatie.
Python-pakketten ontwikkelen

Distributies bouwen

python setup.py sdist bdist_wheel

  • sdist = source distribution
  • bdist_wheel = wheel distribution
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
Python-pakketten ontwikkelen

Je package beschikbaar maken

Upload je distributies naar PyPI

twine upload dist/*

Upload je distributies naar 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
Python-pakketten ontwikkelen

Hoe anderen jouw package kunnen installeren

Installeer vanaf PyPI

pip install mysklearn

Installeer vanaf TestPyPI

pip install --index-url         https://test.pypi.org/simple 
            --extra-index-url   https://pypi.org/simple
            mysklearn
Python-pakketten ontwikkelen

Laten we oefenen!

Python-pakketten ontwikkelen

Preparing Video For Download...