From 52e5cd3baa4f5358d0b219ebc547371c0bd2776a Mon Sep 17 00:00:00 2001
From: Thomas Kluyver <thomas@kluyver.me.uk>
Date: Wed, 13 Dec 2023 20:32:56 +0000
Subject: [PATCH] Fix module details for CalibrationData.from_report()

---
 src/cal_tools/calcat_interface2.py | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/cal_tools/calcat_interface2.py b/src/cal_tools/calcat_interface2.py
index 6e37c59e3..445dd1581 100644
--- a/src/cal_tools/calcat_interface2.py
+++ b/src/cal_tools/calcat_interface2.py
@@ -448,15 +448,15 @@ class CalibrationData(Mapping):
         res = client.get("calibration_constant_versions", params)
 
         d = {}
-        aggregators = set()
+        pdus = set()
 
         for ccv in res:
-            aggr = ccv["physical_detector_unit"]["karabo_da"]
-            aggregators.add(aggr)
+            pdus.add(ccv["physical_detector_unit"])
             cal_type = calibration_name(ccv["calibration_constant"]["calibration_id"])
+            aggr = ccv["physical_detector_unit"]["karabo_da"]
             d.setdefault(cal_type, {})[aggr] = SingleConstantVersion.from_response(ccv)
 
-        return cls(d, sorted(aggregators))
+        return cls(d, sorted(pdus, key=lambda d: d["karabo_da"]))
 
     def __getitem__(self, key) -> ModulesConstantVersions:
         return self.constant_groups[key]
-- 
GitLab