Make PyYAML a strict dependency of astropy
See original GitHub issueDescription
The yaml
library (provided by PyYAML) is central to the serialization functionality used for losslessly storing Table data to ECSV, FITS and HDF5 formats. The ECSV format in particular is seeing fairly wide usage, and is now supported in the StarLink java library STIL and TOPCAT. To this point we have accepted having yaml
as an optional dependency, but this means that it cannot be used in any required parts of astropy.
A recent example was to improve the storage of cosmological model parameters. This would nicely be done as an ECSV table, but the yaml
dependence was a stopper.
While we do not intend to go down a slippery slope of adding many dependencies, it seems like yaml
is justified and would enable future enhancements to astropy core using ECSV or YAML-based storage of data within the package itself.
From the Python packaging perspective this is a small package and should not measurably change the package footprint for a typical astropy installation.
Additional context
Issue Analytics
- State:
- Created 2 years ago
- Reactions:2
- Comments:13 (12 by maintainers)
Top GitHub Comments
@pllim - OK, maybe I got over-excited… I guess 5.0 would make sense.
👍 Also PyYAML is pretty commonly installed as a dependency of other packages.