Publicarea pachetului

Dezvoltarea pachetelor Python

James Fulton

Climate informatics researcher

PyPI

Python Package Index

  • pip instalează pachete de aici
  • Oricine poate încărca pachete
  • Publicați pachetul imediat ce poate fi util
1 https://pypi.org/
Dezvoltarea pachetelor Python

Distribuții

  • Pachet de distribuție - o versiune arhivată a pachetului, gata de instalare.
  • Distribuție sursă - un pachet de distribuție alcătuit în principal din codul sursă.
  • Distribuție wheel - un pachet de distribuție procesat pentru o instalare mai rapidă.
Dezvoltarea pachetelor Python

Cum se construiesc distribuțiile

python setup.py sdist bdist_wheel

  • sdist = distribuție sursă
  • bdist_wheel = distribuție 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
Dezvoltarea pachetelor Python

Publicarea pachetului

Încărcați distribuțiile pe PyPI

twine upload dist/*

Încărcați distribuțiile pe 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
Dezvoltarea pachetelor Python

Cum pot alții să instaleze pachetul

Instalare din PyPI

pip install mysklearn

Instalare din TestPyPI

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

Să exersăm!

Dezvoltarea pachetelor Python

Preparing Video For Download...