Packaging has become a sore point within the python community for some time, and the scipy community in particular. Bento is an alternative packaging system to distutils/distribute/setuptools that attempts to solve most issues encountered by people building scientific software: better coexistence with other languages, better customization and build reliability.
This tutorial will first describe the rationale for bento and its main features, and then will go through several examples to illustrate bento advantages:
- describing package metadata
- automatic convertion from setup.py to bento
- integration with PyPi, virtualenv and pip
- using a 3rd-party build tool for parallel compilation and reliable partial builds
- advanced features with NumPy
This tutorial will also distill good practices for packaging your software in general such as version handling, pypi, documentation handling.
David Cournapeau is currently working as a scientific software engineer at Enthought Ltd in Cambridge, UK. He was formerly working for Silveregg, Japan, a company specialized in web-recommendation in the Japanese market.