Рет қаралды 5,831
Nessa live vamos discutir um pouco sobre a estrutura do arquivo pyproject.toml e sobre sistemas de build, como usar o pyproject.toml com pip e as ferramentas que já suportam o padrão.
Vamos viajar um pouco pela história do empacotamento para entender toda a problemática envolvida.
-------------------
O canal é mantido por uma iniciativa de financiamento coletivo:
Apoia-se: apoia.se/lived...
picpay: @dunossauro
Chave pix: pix.dunossauro@gmail.com
Meus contatos e redes: dunossauro.com/
-------------------
Código e Slides: github.com/dun...
Telegram da live: t.me/livepython
Temas das próximas lives: github.com/dun...
--------------------
Referências
PEPs:
PEP 440 - Version Identification and Dependency Specification: peps.python.or...
PEP 427 - The Wheel Binary Package Format 1.0: peps.python.or...
PEP 517 - A build-system independent format for source trees: peps.python.or...
PEP 518 - Specifying Minimum Build System Requirements for Python Projects: peps.python.or...
PEP 660 - Editable installs for pyproject.toml based builds (wheel based): peps.python.or...
PEP 631 - Dependency specification in pyproject.toml based on PEP 508: peps.python.or...
PEP 621 - Storing project metadata in pyproject.toml: peps.python.or...
PEP 643 - Metadata for Package Source Distributions: peps.python.or...
PEP 680 - tomllib: Support for Parsing TOML in the Standard Library: peps.python.or...
Documentação:
PyPA - Packaging History: www.pypa.io/en...
PyPA - Wheel vs Egg: packaging.pyth...
PyPA - Platform compatibility tags: packaging.pyth...
PyPA - pip vs easy_install: packaging.pyth...
PyPA - Virtualenv:vvirtualenv.pyp...
Hatch FAQ: hatch.pypa.io/...
Buildsystems no pyproject.toml: pip.pypa.io/en...
Remoção do setup.py do pip: pip.pypa.io/en...
Especificação corrente do pyproject.toml: packaging.pyth...
Black - What on Earth is a pyproject.toml file?: black.readthed...
Especificação do formato toml: toml.io/pt/v1.0.0
Build: build.pypa.io/...
Blogs:
Brett Cannon - What the heck is pyproject.toml?: snarky.ca/what...
Brett Cannon - Clarifying PEP 518 (a.k.a. pyproject.toml): snarky.ca/clar...
Donald Stufft - setup.py vs requirements.txt: caremad.io/pos...
Martin Thomas - Python Requirements: martin-thoma.c...
The Invent with Python Blog - A Curriculum for Python Packaging: inventwithpyth...
Wiki
Python - SIGs: www.python.org...
PEAK - The Quick Guide to Python Eggs: peak.telecommun...
Wikipedia - History of Python: en.wikipedia.o...
Discuss - How should a lockfile PEP (665 successor) look like?: discuss.python...
Discuss - Where the name “Wheel” comes from?: discuss.python...
Vídeos:
Dustin Ingram - Inside the Cheeseshop: How Python Packaging Works: • Inside the Cheeseshop:...
Ernest W. Durbin III - Running Vintage Software: PyPI's Aging Codebase : • Running Vintage Softwa...
Links citados:
Vaults of Parnassus: web.archive.or...
PyPI: pypi.org/
Setuptools: setuptools.rea...
Distultils: docs.python.or...
Flit: flit.pypa.io/e...
Poetry: python-poetry....
Hatch: hatch.pypa.io/