[SciPy-dev] packaging bof notes
Fernando.Perez at colorado.edu
Fri Sep 23 00:21:41 CDT 2005
Thu Sep 22 21:57:50 MDT 2005
M. Knepley's build tools
- no support for versioning. Only latest version of anything is supported,
they don't even attempt to support multiple versions. But they do for a few
things like BLAS.
- 'Version numbers are just names'. No significant semantic content in there.
- Tests are done, as much as possible, for behavior.
- setup.py knows nothing about dependencies, this knowledge has to be given to
- Tools: a set of python files included with the PETSc distribution.
- Interface is simple: naming convention (configure).
- scipy.distutils: Michel Sanner's tools ported their tools to scipy, and it
worked for them.
- Could the PETSC config system be brought into scipy.distutils?
- MK's buildsys can ensure that libraries (atlas, fftw, etc) are actually
there, and will download/build them if needed.
M Sanner's questions
- These issues are not scipy-specific. Can these tools benefit other projects
without making scipy a dependency for them?
- single zip files w/python code and metadata (version, dependencies, scripts
to be unpacked, extension modules, ...)
An egg can be a complete package, or it can be a 'namespace package'. These
are logical containers, and the actual packages are packed in their own eggs.
- Package resources: library which can ask for specific versions, etc.
Two issues: installation and verification of correctness.
We can't prevent third-party libraries from making semantic changes across
versions, explicitly specified or not.
- support for subpackage building. Download all the source, but allow users
to build only what they need.
More information about the Scipy-dev