- Develop setup.py and other distribution-related files
- Test distribution; should pass all distribution tests
- Register project with the Python Package Index (PyPI)
- Upload distribution(s) to PyPI
python setup.py sdistdoes not raise an exception- all expected files are included in the distribution tarball
python setup.py testworks in install environment- acceptance tests pass in install environment
python setup.py installproduces expected footprint insite-packages- easy_install works
pip install python-pptxworks
- manual
- easy_install
- pip
- setup.py
- MANIFEST.in
- setup.cfg
... some notions about who uses these and for what ...
- naive end-user
In order to enable a new capability in my computing environment As a naive end-user I would like installation to "just work" and not scare me with error messages that don't indicate a real problem.
In order to verify a new installation As a python developer I want to be able to easily run the test suite without having to invest in any additional discovery or configuration.
- The Hitchhiker’s Guide to Packaging
- Writing a Package in Python by Tarek Ziadé is an extract from his PACKT book Expert Python Programming and while being somewhat dated, contains some useful tidbits.
- Ian Bicking's blog post Python's Makefile discusses how to write
extensions to setup.py, for perhaps a command like
coveragethat would automatically runnosetests --with-coverage. - tox documentation
- virtualenv documentation
- How To Package Your Python Code
- Python Packaging: Hate, hate, hate everywhere
- Building and Distributing Packages with setuptools
- A guide to Python packaging
- Python Packaging by Tarek Ziade