Skip to content

Commit 16aa474

Browse files
authored
Merge pull request #2856 from cta-observatory/prepare-0.27
Prepare 0.27
2 parents 7590019 + 3f8c7e9 commit 16aa474

25 files changed

+129
-70
lines changed

.mailmap

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ Maximilian Linhoff <maximilian.linhoff@cta-observatory.org> <maximilian.linhoff@
3333
Michele Peresano <peresano.michele@gmail.com> Michele Peresano <michele.peresano@cea.fr>
3434

3535
Mykhailo Dalchenko <mykhailo.dalchenko@cern.ch> <mykhailo.dalchenko@cta-consortium.org>
36+
Mykhailo Dalchenko <mykhailo.dalchenko@cern.ch> <mexanick@users.noreply.github.com>
3637

3738
Noah Biederbeck <noah.biederbeck@tu-dortmund.de> Noah Biederbeck <nbiederbeck@tutanota.com>
3839

@@ -87,6 +88,8 @@ Tomas Bylund <tomas.bylund@cea.fr> <tobychev@live.com>
8788

8889
Georg Schwefer <georg.schwefer@mpi-hd.mpg.de>
8990

91+
Georgios Voutsinas <voutsina@cern.ch> <Georgios>
92+
9093
Clara Escanuela Nieves <clara.escanuela@mpi-hd.mpg.de>
9194
<clara.escanuela@mpi-hd.mpg.de> <53437218+clara-escanuela@users.noreply.github.com>
9295

AUTHORS

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,29 @@
1-
Karl Kosack <karl.kosack@cea.fr>
21
Maximilian Linhoff <maximilian.linhoff@cta-observatory.org>
2+
Karl Kosack <karl.kosack@cea.fr>
33
Jason Watson <jason.watson@desy.de>
44
Daniel Parsons <dparsons@lfs2.mpi-hd.mpg.de>
55
Jean Jacquemier <jacquem@lapp.in2p3.fr>
66
Lukas Beiske <lukas.beiske@tu-dortmund.de>
7+
Tjark Miener <tjark.miener4692@googlemail.com>
78
Tino Michael <tino.michael@cea.fr>
89
Tomas Bylund <tomas.bylund@cea.fr>
910
Christoph Toennis <christoph.toennis1988@gmail.com>
11+
Leonid Burmistrov <leonid.burmistrov@unige.ch>
1012
Lukas Nickel <lukas.nickel@tu-dortmund.de>
1113
Jonas Hackfeld <jonas.hackfeld@ruhr-uni-bochum.de>
1214
Noah Biederbeck <noah.biederbeck@tu-dortmund.de>
13-
Tjark Miener <tjark.miener4692@googlemail.com>
1415
Georg Schwefer <georg.schwefer@mpi-hd.mpg.de>
15-
Leonid Burmistrov <leonid.burmistrov@unige.ch>
16+
Mykhailo Dalchenko <mykhailo.dalchenko@cern.ch>
1617
Alison Mitchell <alison.mitchell@mpi-hd.mpg.de>
1718
Dominik Neise <neised@phys.ethz.ch>
1819
Michele Peresano <peresano.michele@gmail.com>
19-
Mykhailo Dalchenko <mykhailo.dalchenko@cern.ch>
2020
Christoph Deil <Deil.Christoph@gmail.com>
2121
Justus Zorn <justus.zorn@desy.de>
2222
Anno Knierim <anno.knierim@tu-dortmund.de>
2323
Stefan Fröse <stefan.froese@udo.edu>
2424
Rune Michael Dominik <rune.dominik@tu-dortmund.de>
2525
Samuel Timothy Spencer <sojourner92@gmail.com>
26+
Georgios Voutsinas <voutsina@cern.ch>
2627
Raquel de los Reyes <reyes@mpi-hd.mpg.de>
2728
Franca Cassol <cassol@cppm.in2p3.fr>
2829
Clara Escanuela Nieves <clara.escanuela@mpi-hd.mpg.de>

CHANGES.rst

Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,119 @@
1+
ctapipe v0.27.0 (2025-10-10)
2+
============================
3+
4+
This release contains a major breaking change and introduction of a new plugin interface,
5+
both concerned with how monitoring data is handled in ctapipe.
6+
7+
The existing data structures have been reworked and a new ``MonitoringSource`` Interface
8+
and plugin entry point are now defined.
9+
10+
See below for details and other smaller new features and bug fixes.
11+
12+
13+
API Changes
14+
-----------
15+
16+
- Update definition of the ``ctapipe.containers.EventType`` enum
17+
to match an updated definition in the CTAO R1 and DL0 data models.
18+
19+
``SKY_PEDESTAL=2`` is changed to the generic ``PEDESTAL``,
20+
which is expected from most cameras in real data.
21+
22+
New types added are ``SKY_PEDESTAL=5`` and ``RANDOM_MONO=18``.
23+
24+
These types were previously assigned at the subarray event level
25+
but in fact are per telescope event in the data model.
26+
A new field ``event_type`` was added to the ``TelescopeTriggerContainer``
27+
and will be filled by the ``EventSource``-implementations in ctapipe. [`#2769 <https://github.com/cta-observatory/ctapipe/pull/2769>`__]
28+
29+
- Refactor old containers (breaking changes) and implement calibpipe-datapipe interface using a new ``MonitoringSource()`` mechanism.
30+
31+
* Remove containers ``DL1CameraCalibrationContainer``, ``FlatFieldContainer``, ``PedestalContainer``, ``PixelStatusContainer``, and ``WaveformCalibrationContainer``
32+
* Add containers ``CameraCalibrationContainer``, ``MonitoringTelescopeContainer``, ``ChunkStatisticsContainer``, ``PixelStatisticsContainer``, and ``ArrayPointingContainer``
33+
* Modify containers ``MonitoringContainer``, ``MonitoringCameraContainer``, ``PointingContainer``, ``TelescopePointingContainer``, and ``StatisticsContainer``,
34+
* Move pointing tree of ``ArrayEventContainer`` into the monitoring tree.
35+
* Remove calibration tree of ``ArrayEventContainer``. Information is retrieved from the ``monitoring.tel[tel_id].camera.coefficients`` tree.
36+
* Implement ``MonitoringSource()`` to handle different monitoring data sources
37+
* Implement the monitoring sources ``HDF5MonitoringSource`` that handles HDF5 file input
38+
* Implement Table I/O for camera calibration coefficients following the agreed HDF5 table naming and hierarchy
39+
* Remove ``ctapipe.calib.camera.flatfield`` and ``ctapipe.calib.camera.pedestal`` modules. Functionality is implemented in the ``ctapipe.monitoring`` module. [`#2802 <https://github.com/cta-observatory/ctapipe/pull/2802>`__]
40+
41+
- Remove the option ``DataWriter.write_index_tables`` along with its alias
42+
in ``ctapipe-process --write-index-tables``.
43+
The option seems to corrupt output files for large data sizes, is not used
44+
in ctapipe itself and was not tested. [`#2853 <https://github.com/cta-observatory/ctapipe/pull/2853>`__]
45+
46+
47+
Bug Fixes
48+
---------
49+
50+
- Fix image conversion to cartesian in case geometry units
51+
are not in meters. [`#2779 <https://github.com/cta-observatory/ctapipe/pull/2779>`__]
52+
53+
- Raise a clear error message in the ``DispReconstructor``
54+
in case of non-supported coordinate frames for the pointing
55+
directions instead of silently assuming AltAz. [`#2785 <https://github.com/cta-observatory/ctapipe/pull/2785>`__]
56+
57+
- Avoid astropy warnings in ``ctapipe.utils.astro.get_bright_stars``. [`#2801 <https://github.com/cta-observatory/ctapipe/pull/2801>`__]
58+
59+
- In the muon intensity fitting class filters out non-physical solutions for chord vs phi function. [`#2803 <https://github.com/cta-observatory/ctapipe/pull/2803>`__]
60+
61+
- Fix HDF5EventSource not properly reading telescope-wise DL2 fields written by ``ctapipe-apply-models``. [`#2824 <https://github.com/cta-observatory/ctapipe/pull/2824>`__]
62+
63+
- Fix misleading error messages if a non-existing file is passed
64+
via the command-line to a Tool that has another configuration option
65+
that uses ``Path(default_value=None, allow_none=False)``.
66+
67+
This pattern is now deprecated as it results in these hard to understand
68+
error messages due to behavior deep in traitlets.
69+
70+
A warning will be raised if traitlets are defined like this and
71+
all ctapipe tools have been adapted to explicitly check
72+
for None if a ``Path`` is required. [`#2826 <https://github.com/cta-observatory/ctapipe/pull/2826>`__]
73+
74+
- Return the number of events used to compute the statistics in SigmaClippingAggregator. [`#2841 <https://github.com/cta-observatory/ctapipe/pull/2841>`__]
75+
76+
- Fixed bug in `ctapipe.core.Tool.get_current_config` where ``Tools`` containing lists of
77+
``Components`` did not get registered, and thus their configs did not end up in the
78+
provenance log. [`#2851 <https://github.com/cta-observatory/ctapipe/pull/2851>`__]
79+
80+
81+
New Features
82+
------------
83+
84+
- Add short-form alternatives to the cli aliases of ``ctapipe-optimize-event-selection``. [`#2770 <https://github.com/cta-observatory/ctapipe/pull/2770>`__]
85+
86+
- Use the HDF5Merger to add the observation block and scheduling block info
87+
to the DL1 files produced by ctapipe-calculate-pixel-statistics tool. [`#2776 <https://github.com/cta-observatory/ctapipe/pull/2776>`__]
88+
89+
- Enable ``ctapipe-merge`` to be used on camera calibration data and pixel statistics aggregation. [`#2787 <https://github.com/cta-observatory/ctapipe/pull/2787>`__]
90+
91+
- Generalise the DL2 table processing implemented in IRF tools in order to be used by other usecases that ingest, filter and merge DL2 tables.
92+
The module was moved from IRF to IO. [`#2791 <https://github.com/cta-observatory/ctapipe/pull/2791>`__]
93+
94+
- Add new cli tool ``ctapipe-store-astropy-cache`` to download and store
95+
astropy data needed for coordinate transformations. [`#2823 <https://github.com/cta-observatory/ctapipe/pull/2823>`__]
96+
97+
- ``ctapipe.io.read_table`` and ``ctapipe.io.write_table`` now support custom column metadata. [`#2824 <https://github.com/cta-observatory/ctapipe/pull/2824>`__]
98+
99+
- Add common names of stars to table output of ``ctapipe.utils.astro.get_bright_stars``. [`#2827 <https://github.com/cta-observatory/ctapipe/pull/2827>`__]
100+
101+
- Add support for disabling numba caching via ``CTAPIPE_DISABLE_NUMBA_CACHE=1`` environment variable.
102+
See https://github.com/numba/numba/issues/10128 for why this might be needed. [`#2836 <https://github.com/cta-observatory/ctapipe/pull/2836>`__]
103+
104+
105+
Maintenance
106+
-----------
107+
108+
- - fixed confusing (and incorrect) debug log message in download.py
109+
- removed all references to ``ctapipe_resources`` in the code and docs, since
110+
that module is no longer supported. Updated documentation to mention the
111+
remote test data server when applicable. [`#2782 <https://github.com/cta-observatory/ctapipe/pull/2782>`__]
112+
113+
- Updated the developer environment in environment.yml to be in sync with what is in pyproject.toml. [`#2849 <https://github.com/cta-observatory/ctapipe/pull/2849>`__]
114+
115+
116+
1117
ctapipe v0.26.0 (2025-06-05)
2118
============================
3119

docs/_static/switcher.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,11 @@
99
"version": "stable",
1010
"url": "https://ctapipe.readthedocs.io/en/stable/"
1111
},
12+
{
13+
"name": "v0.27.0",
14+
"version": "v0.27.0",
15+
"url": "https://ctapipe.readthedocs.io/en/v0.27.0/"
16+
},
1217
{
1318
"name": "v0.26.0",
1419
"version": "v0.26.0",

docs/changes/2769.api.rst

Lines changed: 0 additions & 12 deletions
This file was deleted.

docs/changes/2770.feature.rst

Lines changed: 0 additions & 1 deletion
This file was deleted.

docs/changes/2776.feature.rst

Lines changed: 0 additions & 2 deletions
This file was deleted.

docs/changes/2779.bugfix.rst

Lines changed: 0 additions & 2 deletions
This file was deleted.

docs/changes/2782.maintenance.rst

Lines changed: 0 additions & 4 deletions
This file was deleted.

docs/changes/2785.bugfix.rst

Lines changed: 0 additions & 3 deletions
This file was deleted.

0 commit comments

Comments
 (0)