Packaging

Min toolset

  • pytest + CI

  • black

  • mypy

  • sphinx

  • venv

Bleeding edge packaging

  1. https://cjolowicz.github.io/posts/hypermodern-python-01-setup/

  2. https://github.com/TezRomacH/python-package-template

  3. https://twitter.com/medecau/status/1261565430168268801 (two parts)

First two are via @dsunderhood and @Al_Grigor

packaging.python.org

https://python-poetry.org/docs/cli/ https://pipenv.pypa.io/en/latest/ https://github.com/jazzband/pip-tools https://github.com/David-OConnor/pyflow https://setuptools.readthedocs.io/en/latest/

Answers

https://stackoverflow.com/questions/14399534/reference-requirements-txt-for-the-install-requires-kwarg-in-setuptools-setup-py https://github.com/spyder-ide/spyder/wiki/Working-with-packages-and-environments-in-Spyder

CC

https://github.com/cookiecutter/cookiecutter https://github.com/audreyr/cookiecutter-pypackage

Pains

https://dx13.co.uk/articles/2020/01/02/python-packaging-in-2020/ https://www.bernat.tech/growing-pain/ https://www.bernat.tech/pep-517-and-python-packaging/

Tutorials

https://packaging.python.org/tutorials/packaging-projects/#packaging-your-project

Other

https://twitter.com/dsunderhood/status/1258478748271288320