1.0 (November 10th, 2022)#
Released Nov 10th, 2022
103 pull requests since v0.20.1 (not all listed below)
This new release is the Long Term Stable (LTS) version 1.0. Most of the changes are in the package infrastructure. A number of improvements and bug corrections have been implemented since v0.20.1. Gammapy v1.0 adds support for the latest version 0.3 of gadf.
gammapy.data and gammapy.irf
Support for HAWC data has been improved. In particular, a
RecoPSFMaphas been added in IRF to support PSF in reco energy.
A reprojection method has been implemented on
Mapto allow for reprojection on a new
MapGeomobject. It supports different spatial geometries but requires identical non-spatial axes. See
The tutorial gallery now relies on Sphinx gallery. The tutorials are python scripts with specific syntax for the description cells. This simplifies the documentation build. This will make the history cleaner and tutorial code reviews easier. The download button is now moved at the end of the tutorial. Binder is now working again for tutorials.
The compliance with the astropy affiliated packages has been improved. In particular, tox is now used for testing and CI.
Numpy<=1.19 is no longer supported.
Bug fixes and improvements#
The DM annihilation spectral model
DarkMatterAnnihilationSpectralModelcan now be serialized to yaml.
The dataset name is now serialized with the Dataset as the
NAMEkeyword in the primary HDU.
peekmethod is now available for the
MapEvaluatorto help debugging issues with model evaluation on a
The interpolation scheme of the energy axis was incorrectly set to “linear” by default for the
Background2D. It is now set to “log”.
MapDatasetMakerto handle the DL3 format introduced in g.a.d.f. v0.3 for drifting instruments.
sample_coord()has been implemented to generate events from a region map.
integrate()now provides a generic integration method.
TemplatePhaseCurveTemporalModelhas been added to support pulsar-like lightcurves.
To allow for identical parameter names, the serialization of the covariance matrix does no longer export the parameter names as column headers but simply as the first entry in each row.
For consistency with the convention of
Estimatorclasses, which are always positve quantities, the sign of the value returned by
compute_errn()has been changed.
This list is incomplete. Small improvements and bug fixes are not listed here.
[#4119] simplification of np.array(set(labels)) (Mireia Nievas-Rosillo)
[#4115] Add code of conduct file (Axel Donath)
[#4113] Move binder configuration to gammapy-webpage (Axel Donath)
[#4112] Add pre commit hooks and black CI (Axel Donath)
[#4108] Add tests with HAWC data (Laura Olivera-Nieto)
[#4107] Implement peek methods for map evaluator and psf kernel (luca GIUNTI)
[#4106] Reactivate gammapy download command (Axel Donath)
[#4105] Fix WcsNDMap upsampling along axis (Quentin Remy)
[#4103] Activate binder for tutorials (Axel Donath)
[#4098] Fixed test failure after introducing new MAGIC RAD_MAX files (Cosimo Nigro)
[#4095] Filling of the glossary (Bruno Khélifi)
[#4093] Update Astropy package template (Axel Donath)
[#4089] Change sign of the value returned by CountsStatistic.compute_errn (Axel Donath)
[#4088] Add sample_coord for RegionNDMap (Régis Terrier)
[#4084] Adapt TemplateTemporalModel to use a RegionNDMap internally (Atreyee Sinha)
[#4083] Implement Observation.copy() and tests (Axel Donath)
[#4080] Use sphinx gallery for tutorials (Axel Donath)
[#4079] Update of the mailmap for the git push management (Bruno Khélifi)
[#4076] Allow for DRIFT mode observations in the MapDatasetMaker (Laura Olivera-Nieto)
[#4075] Validate nside parameter for HpxGeom (luca GIUNTI)
[#4073] Make spatial coordinates optional in RegionNDMap.interp_by_coord() (Axel Donath)
[#4071] Add tag on DM Annihilation spectral model (Régis Terrier)
[#4067] Fix bug on TemporalModel.sample_time() (Fabio PINTORE)
[#4058] Serialisation in the primary HDU of the Dataset name (Bruno Khélifi)
[#4054] Update temporal model docs (aaguasca)
[#4051] Using astropy Table indices on ObservationTable (Régis Terrier)
[#4044] Addition of a tutorial about the 1D analysis with the HLI (Bruno Khélifi)
[#4043] Colour blind friendly visualisations (Bruno Khélifi)
[#4037] Implement IRF.slice_by_idx() (Axel Donath)
[#4026] Fix TemplateSpatialModel overwrite (Quentin Remy)
[#4025] Add support for PSF in reco energy (Quentin Remy)
[#4024] Add HowTo for adding phase column (Atreyee Sinha)
[#4022] Introduce consistent .rename_axes and .rename API for maps (Quentin Remy)
[#4018] Computation of the WcsMap kernel at the nearest valid exposure (Bruno Khélifi)
[#4017] Introduce a phase curve model (Régis Terrier)
[#4015] Allow to stack mask_fit in Dataset.stack (Quentin Remy)
[#4014] Avoid unnecessary copy in Map.stack (Quentin Remy)
[#4013] Fix zeros errors in models created from 3HWC catalog (Quentin Remy)
[#4000] MNT: Raise error rather than silently proceed (Brigitta Sipőcz)
[#3956] Safe mask range on the 1D spectrum tutorial (Bruno Khélifi)
[#3950] PIG 23 - Gammapy Release Cycle and Version Numbering (Régis Terrier)
[#3925] Temporal model integration (Axel Donath)
[#3862] Add Map.reproject method (Quentin Remy)