Skip to content

Commit 68bf1c1

Browse files
committed
docs: update changelog
1 parent 8fd0e7e commit 68bf1c1

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

docs/reference/changelog.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,39 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
Dates are specified in the format `DD-MM-YYYY`.
99

10+
## [0.9.0] - 27-02-2026
11+
12+
### Added
13+
- Migrated code from `redsun-mimir` to here
14+
- In particular the whole plan specification and action system
15+
- Some things still require additional tests, although have been empirically tested in `redsun-mimir`
16+
- `DeviceSequenceEdit`: new `ValueWidget` subclass rendering `Sequence[PDevice]` and `Set[PDevice]`
17+
parameters as a checkbox list with a live selection count label.
18+
- `PlanWidget.device_widgets`: exposes device parameter widgets for external validation.
19+
- `PlanWidget.params_widget`: single `QWidget` wrapping the Devices and Parameters group boxes;
20+
disabled atomically during plan execution so all inputs lock without affecting run/stop/pause buttons.
21+
- `Set[PDevice]` / `AbstractSet[PDevice]` annotation support in plan spec: `isdeviceset` predicate
22+
and `_handle_device_set` handler; `resolve_arguments` coerces to `set()` for set-typed params.
23+
- `HasWriter` protocol expressing the ability of a device to encapsulate a writer.
24+
- `SessionPathProvider` with automatic run-number increment, replacing `AutoIncrementFileProvider`.
25+
- Metadata registry on `Writer`; metadata collected at `prepare` time is written immediately after
26+
stream open.
27+
- `clear_sources` mechanism for presenters to explicitly clear writer sources after a plan finishes.
28+
- `group` parameter on path providers for sub-group addressing within a Zarr store.
29+
30+
### Changed
31+
- Storage layer migrated to per-device `Writer` instances identified by URI (singleton via `get()`).
32+
- Device preparation migrated from `StorageInfo`/`StorageConfig` dict-based API to `PrepareInfo`.
33+
- `make_writer` signature updated to `(uri, mimetype)`.
34+
- Shareable plan-spec and widget infrastructure migrated from redsun-mimir into the SDK.
35+
- `create_plan_widget` now splits device and scalar parameters into separate "Devices" and
36+
"Parameters" group boxes.
37+
- Widget factory predicates now match on annotation shape rather than `choices is not None`;
38+
empty-choices case produces a valid empty widget instead of raising `RuntimeError`.
39+
- `_try_factory_entry` now only swallows predicate errors; factory crashes propagate immediately.
40+
- `is_device_set` removed from `ParamDescription`; set coercion derived from annotation directly
41+
via `isdeviceset(p.annotation)`, symmetric with how `isdevicesequence` was already handled.
42+
1043
## [0.8.2] - 23-02-2026
1144

1245
### Changed
@@ -183,6 +216,7 @@ Dates are specified in the format `DD-MM-YYYY`.
183216

184217
- Initial release on PyPI
185218

219+
[0.9.0]: https://github.com/redsun-acquisition/redsun/compare/v0.8.2...v0.9.0
186220
[0.8.2]: https://github.com/redsun-acquisition/redsun/compare/v0.8.0...v0.8.2
187221
[0.8.0]: https://github.com/redsun-acquisition/redsun/compare/v0.7.2...v0.8.0
188222
[0.7.2]: https://github.com/redsun-acquisition/redsun/compare/v0.7.0...v0.7.2

0 commit comments

Comments
 (0)