-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Demark behavioural differences between plans and stubs, move orphaned plans into dodal. #793
base: main
Are you sure you want to change the base?
Conversation
7ab3c64
to
019b6ed
Compare
src/dodal/plans/scanspec.py
Outdated
), | ||
], | ||
spec: Annotated[ | ||
Spec[Movable], # type: ignore |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@coretl @callumforrester do you have any idea why this is currently required? Previously we had a Spec[str] in blueapi and this did not cause issues- here in dodal, it seems we cannot have a Spec[str] or Spec[Movable].
"__getitem__" method not defined on type "type"Pylance[reportIndexIssue](https://github.com/microsoft/pyright/blob/main/docs/configuration.md#reportIndexIssue)
This is an issue in Pylance in the IDE and also in the type-checking step of the CI job.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was due to the discriminated_union decorator's type hinting not being adequate.
This change is therefore blocked until ScanSpec 0.7.3 can be released, which is blocked until time is spent to handle dataclasses.
afaaddf
to
eb7ca4f
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #793 +/- ##
==========================================
+ Coverage 95.20% 95.22% +0.01%
==========================================
Files 120 125 +5
Lines 4985 5043 +58
==========================================
+ Hits 4746 4802 +56
- Misses 239 241 +2 ☔ View full report in Codecov by Sentry. |
d4e5902
to
27c8fe0
Compare
7d49d20
to
8129594
Compare
fddc20d
to
037fe3e
Compare
Bluesky distinguishes between plans: complete experimental proceedures, which open and close data collection runs, which may be part of a larger plan that collect data multiple times, but that might also be run alone to collect data, and plan_stubs: which do not create & complete data collection runs and are either isolated behaviours or building blocks for plans.
In order to make it clearer when a MsgGenerator can be safely used without considering the enclosing run, when it is required to manage a run and when running a procedure will create data documents, I think we should adopt this standard.
This change also adds the count and spec_scan plan previously from dls_bluesky_core, as remove this as a requirement for blueapi is long overdue and this is the last remnants of that module.
count
is a basic collection of a set of devices, equivalent to Mapping GDA's StaticScan.spec_scan
is analogous to GDA'smscan
command, constructing a generic N-dimensional trajectory for scanning.Checks for reviewer
dodal connect ${BEAMLINE}