Bento is a packaging tool solution for python softwares, targeted as an alternative to distutils, setuptools, distribute, etc.... Bento philosophy is reproducibility, extensibility and simplicity (in that order).
Bento is under constant development. The main implemented features are
- Declarative description of your package. Metadata and package content are described in a simple format.
- Flexible installation scheme: you can install any file anywhere.
- Layered internal architecture: core functionalities, command line interface are clearly separated: bento is designed as a library from the ground-up.
- Hackable and extensible: bento is designed to be extensible: commands are not hardly coupled, and new ones can be inserted between existing ones without the need for monkey-patching.
- Scale down: a core principle of bento is to make software easier to package, and avoid too many choices for packages with simple needs.
- Scale up: on the other hand, bento is designed for complex packages. Bento is already capable to build numpy and scipy with less code than distutils.
- Distutils Compatibility Layer: bento can convert an existing distutils package into the bento format. Bento packages can be installed with tools which normally expect a setup.py (pip, easy_install, etc...).