Publikování balíčku

Developing Python Packages

James Fulton

Climate informatics researcher

PyPI

Python Package Index

  • pip instaluje balíčky odtud
  • Kdokoli může nahrát balíček
  • Svůj balíček nahrajte, jakmile může být užitečný
1 https://pypi.org/
Developing Python Packages

Distribuce

  • Distribuční balíček – připravená verze balíčku k instalaci.
  • Zdrojová distribuce – distribuční balíček tvořený převážně zdrojovým kódem.
  • Wheel distribuce – zpracovaný distribuční balíček pro rychlejší instalaci.
Developing Python Packages

Jak sestavit distribuce

python setup.py sdist bdist_wheel

  • sdist = zdrojová distribuce
  • bdist_wheel = wheel distribuce
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
Developing Python Packages

Jak zveřejnit svůj balíček

Nahrání distribucí na PyPI

twine upload dist/*

Nahrání distribucí na 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
Developing Python Packages

Jak ostatní nainstalují váš balíček

Instalace z PyPI

pip install mysklearn

Instalace z TestPyPI

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

Pojďme si procvičit!

Developing Python Packages

Preparing Video For Download...