mx-bluesky 1.5.10__tar.gz → 1.5.12__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (623) hide show
  1. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.copier-answers.yml +3 -1
  2. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.devcontainer/devcontainer.json +2 -2
  3. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/CONTRIBUTING.md +1 -1
  4. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/ISSUE_TEMPLATE/bug_report.md +1 -1
  5. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/actions/install_requirements/action.yml +2 -1
  6. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/dependabot.yml +7 -5
  7. mx_bluesky-1.5.12/.github/release.yml +44 -0
  8. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/workflows/_container.yml +47 -25
  9. mx_bluesky-1.5.12/.github/workflows/_debug_container.yml +49 -0
  10. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/workflows/_docs.yml +1 -0
  11. mx_bluesky-1.5.12/.github/workflows/_label.yml +19 -0
  12. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/workflows/_release.yml +1 -1
  13. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/workflows/_test.yml +1 -1
  14. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/workflows/ci.yml +29 -15
  15. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.pre-commit-config.yaml +2 -2
  16. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.vscode/extensions.json +2 -1
  17. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.vscode/launch.json +1 -1
  18. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.vscode/mx-bluesky.code-workspace +1 -1
  19. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.vscode/settings.json +32 -0
  20. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/Dockerfile +25 -2
  21. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/Dockerfile.blueapi +6 -4
  22. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/Dockerfile.hyperion +6 -4
  23. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/PKG-INFO +9 -7
  24. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/conftest.py +3 -0
  25. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/explanations/callback_and_run_logic.rst +2 -4
  26. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/how-to/create-a-release.rst +3 -2
  27. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/how-to/deploy-a-release.rst +12 -1
  28. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/serial-crystallography-on-i24/how-to/pmac-docs.rst +1 -1
  29. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/user/hyperion/configuration.rst +3 -0
  30. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/pyproject.toml +27 -14
  31. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/_version.py +3 -3
  32. mx_bluesky-1.5.12/src/mx_bluesky/beamlines/aithre_lasershaping/experiment_plans/robot_load_plan.py +198 -0
  33. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/aithre_lasershaping/goniometer_controls.py +2 -2
  34. mx_bluesky-1.5.12/src/mx_bluesky/beamlines/aithre_lasershaping/parameters/constants.py +17 -0
  35. mx_bluesky-1.5.12/src/mx_bluesky/beamlines/aithre_lasershaping/parameters/robot_load_parameters.py +13 -0
  36. mx_bluesky-1.5.12/src/mx_bluesky/beamlines/aithre_lasershaping/pin_tip_centring.py +31 -0
  37. mx_bluesky-1.5.12/src/mx_bluesky/beamlines/aithre_lasershaping/robot_load.py +80 -0
  38. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i02_1/parameters/gridscan.py +1 -1
  39. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i04/__init__.py +6 -2
  40. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i04/callbacks/murko_callback.py +27 -12
  41. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i04/experiment_plans/i04_grid_detect_then_xray_centre_plan.py +94 -20
  42. mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i04/external_interaction/config_server.py +15 -0
  43. mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i04/oav_centering_plans/oav_imaging.py +115 -0
  44. mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i04/parameters/constants.py +21 -0
  45. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i04/redis_to_murko_forwarder.py +24 -1
  46. mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i04/thawing_plan.py +250 -0
  47. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/jungfrau_commissioning/experiment_plans/do_darks.py +55 -10
  48. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/jungfrau_commissioning/plan_stubs/do_external_acquisition.py +1 -1
  49. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/jungfrau_commissioning/plan_stubs/plan_utils.py +1 -1
  50. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/__init__.py +7 -5
  51. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/dcid.py +6 -7
  52. mx_bluesky-1.5.10/src/mx_bluesky/beamlines/i24/serial/extruder/i24ssx_Extruder_Collect_py3v2.py → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i24/serial/extruder/i24ssx_extruder_collect_py3v2.py +70 -37
  53. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/CustomChip_py3v1.edl +11 -11
  54. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DetStage.edl +3 -3
  55. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DiamondChipI24-py3v1.edl +142 -142
  56. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/MappingLite-oxford_py3v1.edl +135 -135
  57. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/PMAC_Command.edl +8 -8
  58. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/pumpprobe-py3v1.edl +13 -13
  59. mx_bluesky-1.5.10/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Collect_py3v1.py → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_chip_collect_py3v1.py +12 -9
  60. mx_bluesky-1.5.10/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Manager_py3v1.py → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_chip_manager_py3v1.py +81 -78
  61. mx_bluesky-1.5.10/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_StartUp_py3v1.py → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_chip_startup_py3v1.py +3 -3
  62. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_moveonclick.py +33 -33
  63. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/log.py +11 -11
  64. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/cs/cs_maker.json +3 -3
  65. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/parameters/utils.py +5 -5
  66. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/ca.py +0 -12
  67. mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i24/serial/setup_beamline/pv.py +180 -0
  68. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/pv_abstract.py +5 -5
  69. mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_beamline.py +220 -0
  70. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_detector.py +3 -3
  71. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_zebra_plans.py +4 -4
  72. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/web_gui_plans/general_plans.py +103 -16
  73. mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i24/serial/web_gui_plans/oav_plans.py +64 -0
  74. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/write_nexus.py +4 -4
  75. mx_bluesky-1.5.12/src/mx_bluesky/common/device_setup_plans/gonio.py +28 -0
  76. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/device_setup_plans/manipulate_sample.py +8 -1
  77. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/device_setup_plans/robot_load_unload.py +1 -1
  78. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/device_setup_plans/setup_oav.py +8 -0
  79. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/device_setup_plans/setup_zebra_and_shutter.py +0 -5
  80. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/device_setup_plans/xbpm_feedback.py +8 -1
  81. mx_bluesky-1.5.12/src/mx_bluesky/common/experiment_plans/beamstop_check.py +229 -0
  82. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/experiment_plans/common_flyscan_xray_centre_plan.py +8 -6
  83. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/experiment_plans/common_grid_detect_then_xray_centre_plan.py +2 -2
  84. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/experiment_plans/inner_plans/do_fgs.py +1 -1
  85. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/experiment_plans/inner_plans/read_hardware.py +7 -4
  86. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/experiment_plans/inner_plans/write_sample_status.py +2 -2
  87. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/experiment_plans/oav_snapshot_plan.py +1 -2
  88. {mx_bluesky-1.5.10/src/mx_bluesky/hyperion → mx_bluesky-1.5.12/src/mx_bluesky/common}/experiment_plans/pin_tip_centring_plan.py +23 -24
  89. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/callbacks/common/grid_detection_callback.py +5 -0
  90. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/callbacks/common/ispyb_callback_base.py +13 -15
  91. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/callbacks/common/ispyb_mapping.py +3 -5
  92. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/callbacks/common/plan_reactive_callback.py +1 -1
  93. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/callbacks/common/zocalo_callback.py +2 -2
  94. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/callbacks/sample_handling/sample_handling_callback.py +3 -3
  95. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/ispyb_callback.py +12 -10
  96. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/nexus_callback.py +2 -2
  97. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/config_server.py +4 -4
  98. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/ispyb/data_model.py +11 -4
  99. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/ispyb/exp_eye_store.py +163 -4
  100. mx_bluesky-1.5.12/src/mx_bluesky/common/external_interaction/ispyb/ispyb_store.py +214 -0
  101. mx_bluesky-1.5.12/src/mx_bluesky/common/external_interaction/ispyb/ispyb_utils.py +13 -0
  102. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/nexus/nexus_utils.py +2 -2
  103. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/nexus/write_nexus.py +3 -3
  104. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/parameters/components.py +1 -0
  105. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/parameters/constants.py +4 -3
  106. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/parameters/device_composites.py +4 -2
  107. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/parameters/gridscan.py +2 -2
  108. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/utils/exceptions.py +24 -7
  109. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/utils/log.py +13 -4
  110. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/utils/tracing.py +5 -5
  111. mx_bluesky-1.5.12/src/mx_bluesky/common/utils/utils.py +90 -0
  112. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/__main__.py +6 -16
  113. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/baton_handler.py +38 -14
  114. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/device_setup_plans/utils.py +1 -1
  115. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/experiment_plans/experiment_registry.py +1 -1
  116. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/experiment_plans/hyperion_flyscan_xray_centre_plan.py +15 -13
  117. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/experiment_plans/load_centre_collect_full_plan.py +2 -2
  118. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/experiment_plans/optimise_attenuation_plan.py +9 -9
  119. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/experiment_plans/pin_centre_then_xray_centre_plan.py +7 -8
  120. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/experiment_plans/robot_load_and_change_energy.py +3 -10
  121. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/experiment_plans/robot_load_then_centre_plan.py +4 -2
  122. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/experiment_plans/rotation_scan_plan.py +10 -4
  123. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/experiment_plans/set_energy_plan.py +2 -2
  124. mx_bluesky-1.5.12/src/mx_bluesky/hyperion/experiment_plans/udc_default_state.py +160 -0
  125. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/external_interaction/agamemnon.py +3 -3
  126. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/external_interaction/callbacks/__main__.py +2 -2
  127. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_callback.py +3 -3
  128. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_mapping.py +1 -0
  129. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/nexus_callback.py +3 -6
  130. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/external_interaction/config_server.py +5 -5
  131. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/parameters/constants.py +11 -4
  132. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/parameters/device_composites.py +2 -2
  133. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/parameters/gridscan.py +4 -4
  134. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/parameters/robot_load.py +1 -9
  135. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/plan_runner.py +6 -6
  136. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/runner.py +10 -8
  137. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/jupyter_example.ipynb +3 -3
  138. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky.egg-info/PKG-INFO +9 -7
  139. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky.egg-info/SOURCES.txt +35 -11
  140. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky.egg-info/requires.txt +7 -6
  141. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/conftest.py +132 -211
  142. mx_bluesky-1.5.12/tests/expeye_helpers.py +151 -0
  143. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/system_tests/common/device_setup_plans/test_robot_load_unload.py +4 -4
  144. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/system_tests/conftest.py +22 -9
  145. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/system_tests/hyperion/external_interaction/alerting/test_log_based_alerts.py +3 -3
  146. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/system_tests/hyperion/external_interaction/callbacks/test_external_callbacks.py +18 -21
  147. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/system_tests/hyperion/external_interaction/conftest.py +35 -36
  148. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/system_tests/hyperion/external_interaction/test_baton_handler_soak.py +16 -5
  149. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/system_tests/hyperion/external_interaction/test_exp_eye_dev.py +3 -3
  150. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/system_tests/hyperion/external_interaction/test_ispyb_dev_connection.py +19 -21
  151. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/system_tests/hyperion/external_interaction/test_load_centre_collect_full_plan.py +96 -116
  152. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/system_tests/hyperion/external_interaction/test_nexgen.py +3 -3
  153. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/system_tests/hyperion/external_interaction/test_zocalo_system.py +3 -3
  154. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/system_tests/hyperion/test_main_udc.py +1 -1
  155. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_domain_properties +5 -0
  156. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_domain_properties_with_no_gpu +4 -0
  157. mx_bluesky-1.5.12/tests/unit_tests/beamlines/aithre_lasershaping/test_aithre_pin_tip_centre.py +41 -0
  158. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/aithre_lasershaping/test_beamline_safe.py +2 -3
  159. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/aithre_lasershaping/test_check_goniometer_performance.py +1 -2
  160. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/aithre_lasershaping/test_goniometer_controls.py +13 -19
  161. mx_bluesky-1.5.12/tests/unit_tests/beamlines/aithre_lasershaping/test_robot_load.py +282 -0
  162. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i04/callbacks/test_murko_callback.py +107 -37
  163. mx_bluesky-1.5.12/tests/unit_tests/beamlines/i04/conftest.py +12 -0
  164. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i04/test_i04_grid_detect_then_xray_centre_plan.py +157 -38
  165. mx_bluesky-1.5.12/tests/unit_tests/beamlines/i04/test_oav_imaging.py +253 -0
  166. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i04/test_redis_to_murko_forwarder.py +26 -1
  167. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i04/test_thawing.py +182 -91
  168. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i23/test_serial.py +8 -11
  169. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/jungfrau_commissioning/experiment_plans/test_do_darks.py +70 -12
  170. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/jungfrau_commissioning/plan_stubs/test_do_external_acquisition.py +5 -5
  171. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/jungfrau_commissioning/plan_stubs/test_do_internal_acquisition.py +4 -4
  172. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/jungfrau_commissioning/plan_stubs/test_plan_utils.py +3 -5
  173. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/conftest.py +18 -34
  174. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/extruder/test_extruder_collect.py +61 -54
  175. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_chip_manager.py +102 -80
  176. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_chip_startup.py +1 -1
  177. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_ft_collect.py +77 -63
  178. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_moveonclick.py +14 -12
  179. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_setup_beamline.py +26 -34
  180. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_setup_detector.py +5 -5
  181. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_zebra_plans.py +27 -23
  182. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/test_dcid.py +7 -4
  183. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/test_log.py +8 -8
  184. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/test_write_nexus.py +6 -4
  185. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/web_gui/test_general_plans.py +114 -29
  186. mx_bluesky-1.5.12/tests/unit_tests/beamlines/i24/serial/web_gui/test_oav_plans.py +87 -0
  187. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/device_setup_plans/test_robot_load_unload.py +28 -17
  188. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/device_setup_plans/test_setup_panda.py +2 -2
  189. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/device_setup_plans/test_setup_zebra_and_shutter.py +10 -8
  190. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/device_setup_plans/test_xbpm_feedback.py +37 -15
  191. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/experiment_plans/inner_plans/test_do_fgs.py +5 -6
  192. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/experiment_plans/inner_plans/test_read_hardware.py +6 -5
  193. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/experiment_plans/inner_plans/test_write_sample_status.py +6 -6
  194. mx_bluesky-1.5.12/tests/unit_tests/common/experiment_plans/test_beamstop_check.py +439 -0
  195. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/experiment_plans/test_common_flyscan_xray_centre_plan.py +98 -65
  196. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/experiment_plans/test_common_grid_detect_then_xray_centre_plan.py +10 -10
  197. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/experiment_plans/test_grid_detection_plan.py +28 -20
  198. {mx_bluesky-1.5.10/tests/unit_tests/hyperion → mx_bluesky-1.5.12/tests/unit_tests/common}/experiment_plans/test_pin_tip_centring.py +128 -114
  199. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/callbacks/common/test_abstract_event.py +3 -3
  200. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/callbacks/common/test_snapshot_callback.py +10 -11
  201. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/callbacks/ispyb/conftest.py +4 -2
  202. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_expeye_interaction.py +5 -5
  203. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_gridscan_ispyb_store_3d.py +241 -326
  204. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_rotation_ispyb_store.py +137 -171
  205. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/callbacks/sample_handling/test_sample_handling_callback.py +32 -32
  206. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/callbacks/test_plan_reactive_callback.py +16 -16
  207. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/callbacks/test_zocalo_handler.py +36 -32
  208. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/conftest.py +3 -3
  209. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/test_config_server.py +14 -11
  210. mx_bluesky-1.5.12/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_callback.py +452 -0
  211. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_handler.py +34 -34
  212. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/xray_centre/test_nexus_handler.py +27 -19
  213. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/parameters/test_constants.py +6 -0
  214. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/preprocessors/test_preprocessors.py +5 -5
  215. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/utils/test_log.py +23 -23
  216. mx_bluesky-1.5.12/tests/unit_tests/common/utils/test_utils.py +49 -0
  217. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/conftest.py +80 -32
  218. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/conftest.py +3 -1
  219. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/device_setup_plans/test_dcm_pitch_roll_mirror_adjuster.py +5 -5
  220. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/device_setup_plans/test_manipulate_sample.py +5 -5
  221. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/device_setup_plans/test_setup_oav.py +2 -2
  222. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/device_setup_plans/test_setup_panda.py +9 -7
  223. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/device_setup_plans/test_utils.py +13 -13
  224. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/device_setup_plans/test_zebra_setup.py +2 -2
  225. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/experiment_plans/conftest.py +9 -5
  226. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/experiment_plans/test_hyperion_flyscan_xray_centre_plan.py +9 -13
  227. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/experiment_plans/test_hyperion_grid_detect_then_xray_centre_plan.py +10 -10
  228. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/experiment_plans/test_load_centre_collect_full_plan.py +11 -8
  229. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/experiment_plans/test_optimise_attenuation_plan.py +18 -21
  230. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/experiment_plans/test_pin_centre_then_xray_centre_plan.py +4 -4
  231. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/experiment_plans/test_robot_load_and_change_energy.py +20 -21
  232. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/experiment_plans/test_robot_load_then_centre.py +12 -7
  233. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/experiment_plans/test_rotation_scan_plan.py +125 -89
  234. mx_bluesky-1.5.12/tests/unit_tests/hyperion/experiment_plans/test_udc_default_state.py +346 -0
  235. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/external_interaction/callbacks/conftest.py +14 -1
  236. mx_bluesky-1.5.12/tests/unit_tests/hyperion/external_interaction/callbacks/robot_load/__init__.py +0 -0
  237. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/external_interaction/callbacks/robot_load/test_robot_load_ispyb_callback.py +21 -19
  238. mx_bluesky-1.5.12/tests/unit_tests/hyperion/external_interaction/callbacks/rotation/__init__.py +0 -0
  239. mx_bluesky-1.5.12/tests/unit_tests/hyperion/external_interaction/callbacks/rotation/test_ispyb_callback.py +283 -0
  240. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/external_interaction/callbacks/test_alert_on_container_change.py +12 -13
  241. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/external_interaction/callbacks/test_rotation_callbacks.py +13 -13
  242. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/external_interaction/conftest.py +2 -2
  243. mx_bluesky-1.5.12/tests/unit_tests/hyperion/external_interaction/nexus/__init__.py +0 -0
  244. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/external_interaction/nexus/test_compare_nexus_to_gda_exhaustively.py +7 -11
  245. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/external_interaction/nexus/test_write_nexus.py +2 -2
  246. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/external_interaction/test_write_rotation_nexus.py +7 -6
  247. mx_bluesky-1.5.12/tests/unit_tests/hyperion/parameters/__init__.py +0 -0
  248. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/parameters/test_parameter_model.py +4 -4
  249. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/test_baton_handler.py +92 -30
  250. mx_bluesky-1.5.12/tests/unit_tests/hyperion/test_exceptions.py +31 -0
  251. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/test_main_system.py +17 -17
  252. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/test_runner.py +4 -4
  253. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/test_utils.py +4 -4
  254. mx_bluesky-1.5.12/tests/unit_tests/hyperion/utils/__init__.py +0 -0
  255. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/utils/test_context.py +2 -2
  256. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/deploy/deploy_mx_bluesky.py +1 -1
  257. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/deploy/deploy_mx_bluesky_app_to_k8s.sh +2 -2
  258. mx_bluesky-1.5.10/.github/workflows/_check.yml +0 -27
  259. mx_bluesky-1.5.10/src/mx_bluesky/beamlines/i04/thawing_plan.py +0 -255
  260. mx_bluesky-1.5.10/src/mx_bluesky/beamlines/i24/serial/setup_beamline/pv.py +0 -392
  261. mx_bluesky-1.5.10/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_beamline.py +0 -441
  262. mx_bluesky-1.5.10/src/mx_bluesky/common/experiment_plans/inner_plans/udc_default_state.py +0 -65
  263. mx_bluesky-1.5.10/src/mx_bluesky/common/external_interaction/callbacks/common/logging_callback.py +0 -29
  264. mx_bluesky-1.5.10/src/mx_bluesky/common/external_interaction/ispyb/ispyb_store.py +0 -305
  265. mx_bluesky-1.5.10/src/mx_bluesky/common/external_interaction/ispyb/ispyb_utils.py +0 -27
  266. mx_bluesky-1.5.10/src/mx_bluesky/common/utils/utils.py +0 -42
  267. mx_bluesky-1.5.10/src/mx_bluesky/hyperion/device_setup_plans/smargon.py +0 -25
  268. mx_bluesky-1.5.10/tests/unit_tests/common/experiment_plans/inner_plans/test_udc_default_state.py +0 -149
  269. mx_bluesky-1.5.10/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_callback.py +0 -477
  270. mx_bluesky-1.5.10/tests/unit_tests/hyperion/external_interaction/callbacks/rotation/test_ispyb_callback.py +0 -301
  271. mx_bluesky-1.5.10/tests/unit_tests/hyperion/test_exceptions.py +0 -26
  272. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.coveragerc +0 -0
  273. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.devcontainer/Dockerfile +0 -0
  274. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.dockerignore +0 -0
  275. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/CODEOWNERS +0 -0
  276. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/ISSUE_TEMPLATE/issue.md +0 -0
  277. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/actions/verify-nexus/Dockerfile +0 -0
  278. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/actions/verify-nexus/action.yml +0 -0
  279. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/actions/verify-nexus/entrypoint.sh +0 -0
  280. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/pages/index.html +0 -0
  281. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/pages/make_switcher.py +0 -0
  282. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/workflows/_dist.yml +0 -0
  283. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/workflows/_helm.yml +0 -0
  284. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/workflows/_pypi.yml +0 -0
  285. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/workflows/_tox.yml +0 -0
  286. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.github/workflows/periodic.yml +0 -0
  287. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.gitignore +0 -0
  288. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.vscode/mx-bluesky-dev-container.code-workspace +0 -0
  289. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.vscode/mxb-with-core-dependencies.code-workspace +0 -0
  290. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/.vscode/tasks.json +0 -0
  291. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/LICENSE +0 -0
  292. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/README.rst +0 -0
  293. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/catalog-info.yaml +0 -0
  294. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/codecov.yml +0 -0
  295. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/_api.rst +0 -0
  296. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/_templates/custom-module-template.rst +0 -0
  297. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/conf.py +0 -0
  298. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/code-map/grid_detect_then_xray_centre.drawio.png +0 -0
  299. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/code-map/grid_detect_xrc.rst +0 -0
  300. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/code-map/index.rst +0 -0
  301. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/explanations/containerised_mx_bluesky.rst +0 -0
  302. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/explanations/decisions/0001-record-architecture-decisions.rst +0 -0
  303. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/explanations/decisions/0002-repository-structure.rst +0 -0
  304. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/explanations/decisions/0003-python-version-support.rst +0 -0
  305. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/explanations/decisions.rst +0 -0
  306. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/how-to/contribute.rst +0 -0
  307. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/how-to/dev-ops/build-docs.rst +0 -0
  308. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/how-to/dev-ops/dev-ops.rst +0 -0
  309. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/how-to/dev-ops/lint.rst +0 -0
  310. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/how-to/dev-ops/run-tests.rst +0 -0
  311. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/how-to/dev-ops/update-tools.rst +0 -0
  312. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/how-to/get-started.md +0 -0
  313. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/index.rst +0 -0
  314. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/reference/standards.rst +0 -0
  315. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/general/tutorials/profile-tests.rst +0 -0
  316. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/hyperion/deploying-hyperion.rst +0 -0
  317. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/hyperion/how-to/update-panda-ioc.rst +0 -0
  318. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/hyperion/index.rst +0 -0
  319. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/hyperion/reference/baton.rst +0 -0
  320. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/hyperion/reference/coordinate-systems.puml +0 -0
  321. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/hyperion/reference/coordinate-systems.rst +0 -0
  322. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/hyperion/reference/gda-baton.puml +0 -0
  323. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/hyperion/reference/gridscan.puml +0 -0
  324. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/hyperion/reference/param-hierarchy.rst +0 -0
  325. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/hyperion/reference/readme.md +0 -0
  326. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/hyperion/system-tests.rst +0 -0
  327. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/index.rst +0 -0
  328. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/murko-integration/explanations/DrawioImages.rst +0 -0
  329. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/murko-integration/explanations/architecture.rst +0 -0
  330. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/murko-integration/images/Murko.drawio.png +0 -0
  331. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/murko-integration/index.rst +0 -0
  332. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/serial-crystallography-on-i24/explanations/decisions/0001-record-architecture-decisions.rst +0 -0
  333. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/serial-crystallography-on-i24/explanations/decisions.rst +0 -0
  334. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/serial-crystallography-on-i24/how-to/environment-setup.rst +0 -0
  335. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/serial-crystallography-on-i24/how-to/run-a-collection.rst +0 -0
  336. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/serial-crystallography-on-i24/index.rst +0 -0
  337. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/developer/serial-crystallography-on-i24/project-planning/roadmap.rst +0 -0
  338. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/images/176701633-b93bba62-b2e7-4740-a863-c6b388beb14f.png +0 -0
  339. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/images/207297611-f67dfc25-a3a5-4ade-a1e7-28b54a136fa6.png +0 -0
  340. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/images/417717258-afbd813c-8941-445c-9fdf-255c167453cf.png +0 -0
  341. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/images/dls-favicon.ico +0 -0
  342. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/images/dls-logo.svg +0 -0
  343. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/images/motor coordinate systems.odg +0 -0
  344. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/images/motor-coords-omega-0.svg +0 -0
  345. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/images/motor-coords-omega-alpha.svg +0 -0
  346. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/index.rst +0 -0
  347. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/user/hyperion/alerts.rst +0 -0
  348. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/user/hyperion/index.rst +0 -0
  349. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/user/hyperion/pvs.rst +0 -0
  350. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/user/hyperion/running.rst +0 -0
  351. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/docs/user/hyperion/troubleshooting.rst +0 -0
  352. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/helm/hyperion/Chart.yaml +0 -0
  353. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/helm/hyperion/templates/deployment.yaml +0 -0
  354. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/helm/hyperion/templates/ingress.yaml +0 -0
  355. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/helm/hyperion/templates/service.yaml +0 -0
  356. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/helm/hyperion/templates/zocalo-config.yaml +0 -0
  357. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/helm/hyperion/values.yaml +0 -0
  358. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/helm/mx-bluesky-blueapi/Chart.yaml +0 -0
  359. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/helm/mx-bluesky-blueapi/templates/zocalo-config.yaml +0 -0
  360. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/helm/mx-bluesky-blueapi/values.yaml +0 -0
  361. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/helm/redis-to-murko/Chart.yaml +0 -0
  362. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/helm/redis-to-murko/templates/deployment.yaml +0 -0
  363. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/helm/redis-to-murko/values.yaml +0 -0
  364. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/pull_request_template.md +0 -0
  365. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/run_hyperion.sh +0 -0
  366. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/run_hyperion_in_podman.sh +0 -0
  367. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/setup.cfg +0 -0
  368. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/__init__.py +0 -0
  369. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/__main__.py +0 -0
  370. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/__init__.py +0 -0
  371. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/aithre_lasershaping/__init__.py +0 -0
  372. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/aithre_lasershaping/beamline_safe.py +0 -0
  373. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/aithre_lasershaping/check_goniometer_performance.py +0 -0
  374. {mx_bluesky-1.5.10/src/mx_bluesky/beamlines/i02_1/parameters → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/aithre_lasershaping/experiment_plans}/__init__.py +0 -0
  375. {mx_bluesky-1.5.10/src/mx_bluesky/beamlines/i04/callbacks → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/aithre_lasershaping/parameters}/__init__.py +0 -0
  376. {mx_bluesky-1.5.10/src/mx_bluesky/beamlines/i04/experiment_plans → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i02_1/parameters}/__init__.py +0 -0
  377. {mx_bluesky-1.5.10/src/mx_bluesky/beamlines/i24 → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i04/callbacks}/__init__.py +0 -0
  378. {mx_bluesky-1.5.10/src/mx_bluesky/beamlines/i24/jungfrau_commissioning → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i04}/experiment_plans/__init__.py +0 -0
  379. {mx_bluesky-1.5.10/src/mx_bluesky/beamlines/i24/serial/extruder → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i04/external_interaction}/__init__.py +0 -0
  380. {mx_bluesky-1.5.10/src/mx_bluesky/beamlines/i24/serial/fixed_target → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i04/oav_centering_plans}/__init__.py +0 -0
  381. {mx_bluesky-1.5.10/src/mx_bluesky/beamlines/i24/serial/web_gui_plans → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i04/parameters}/__init__.py +0 -0
  382. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i23/__init__.py +0 -0
  383. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i23/serial.py +0 -0
  384. {mx_bluesky-1.5.10/src/mx_bluesky/common → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i24}/__init__.py +0 -0
  385. {mx_bluesky-1.5.10/src/mx_bluesky/common/device_setup_plans → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i24/jungfrau_commissioning/experiment_plans}/__init__.py +0 -0
  386. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/jungfrau_commissioning/plan_stubs/__init__.py +0 -0
  387. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/jungfrau_commissioning/plan_stubs/do_internal_acquisition.py +0 -0
  388. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/blueapi_config.yaml +0 -0
  389. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DetStage.edl +0 -0
  390. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DiamondExtruder-I24-py3v1.edl +0 -0
  391. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/microdrop_alignment.edl +0 -0
  392. {mx_bluesky-1.5.10/src/mx_bluesky/common/experiment_plans/inner_plans → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i24/serial/extruder}/__init__.py +0 -0
  393. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/ME14E-GeneralPurpose.edl +0 -0
  394. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/Shutter_Control.edl +0 -0
  395. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/microdrop_alignment.edl +0 -0
  396. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/nudgechip.edl +0 -0
  397. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/s1l.png +0 -0
  398. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/s2l.png +0 -0
  399. {mx_bluesky-1.5.10/src/mx_bluesky/common/external_interaction → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i24/serial/fixed_target}/__init__.py +0 -0
  400. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/fixed_target/ft_utils.py +0 -0
  401. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/parameters/__init__.py +0 -0
  402. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/parameters/constants.py +0 -0
  403. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/parameters/experiment_parameters.py +0 -0
  404. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/cs/motor_direction.txt +0 -0
  405. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/pvar_files/minichip-oxford.pvar +0 -0
  406. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/pvar_files/oxford.pvar +0 -0
  407. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/run_extruder.sh +0 -0
  408. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/run_fixed_target.sh +0 -0
  409. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/run_serial.py +0 -0
  410. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/run_ssx.sh +0 -0
  411. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/set_visit_directory.sh +0 -0
  412. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/__init__.py +0 -0
  413. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/beamlines/i24/serial/start_blueapi.sh +0 -0
  414. {mx_bluesky-1.5.10/src/mx_bluesky/common/external_interaction/callbacks/common → mx_bluesky-1.5.12/src/mx_bluesky/beamlines/i24/serial/web_gui_plans}/__init__.py +0 -0
  415. {mx_bluesky-1.5.10/src/mx_bluesky/common/external_interaction/callbacks/sample_handling → mx_bluesky-1.5.12/src/mx_bluesky/common}/__init__.py +0 -0
  416. {mx_bluesky-1.5.10/src/mx_bluesky/common/external_interaction/callbacks/xray_centre → mx_bluesky-1.5.12/src/mx_bluesky/common/device_setup_plans}/__init__.py +0 -0
  417. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/device_setup_plans/position_detector.py +0 -0
  418. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/device_setup_plans/setup_panda.py +0 -0
  419. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/device_setup_plans/utils.py +0 -0
  420. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/experiment_plans/__init__.py +0 -0
  421. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/experiment_plans/change_aperture_then_move_plan.py +0 -0
  422. {mx_bluesky-1.5.10/src/mx_bluesky/common/external_interaction/ispyb → mx_bluesky-1.5.12/src/mx_bluesky/common/experiment_plans/inner_plans}/__init__.py +0 -0
  423. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/experiment_plans/oav_grid_detection_plan.py +0 -0
  424. {mx_bluesky-1.5.10/src/mx_bluesky/common/external_interaction/nexus → mx_bluesky-1.5.12/src/mx_bluesky/common/external_interaction}/__init__.py +0 -0
  425. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/alerting/__init__.py +0 -0
  426. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/alerting/_service.py +0 -0
  427. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/alerting/log_based_service.py +0 -0
  428. {mx_bluesky-1.5.10/src/mx_bluesky/common/parameters → mx_bluesky-1.5.12/src/mx_bluesky/common/external_interaction/callbacks/common}/__init__.py +0 -0
  429. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/callbacks/common/abstract_event.py +0 -0
  430. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/callbacks/common/log_uid_tag_callback.py +0 -0
  431. {mx_bluesky-1.5.10/src/mx_bluesky/common/preprocessors → mx_bluesky-1.5.12/src/mx_bluesky/common/external_interaction/callbacks/sample_handling}/__init__.py +0 -0
  432. {mx_bluesky-1.5.10/src/mx_bluesky/common/protocols → mx_bluesky-1.5.12/src/mx_bluesky/common/external_interaction/callbacks/xray_centre}/__init__.py +0 -0
  433. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/ispyb_mapping.py +0 -0
  434. {mx_bluesky-1.5.10/src/mx_bluesky/common/utils → mx_bluesky-1.5.12/src/mx_bluesky/common/external_interaction/ispyb}/__init__.py +0 -0
  435. {mx_bluesky-1.5.10/src/mx_bluesky/hyperion/device_setup_plans → mx_bluesky-1.5.12/src/mx_bluesky/common/external_interaction/nexus}/__init__.py +0 -0
  436. {mx_bluesky-1.5.10/src/mx_bluesky/hyperion/external_interaction/alerting → mx_bluesky-1.5.12/src/mx_bluesky/common/parameters}/__init__.py +0 -0
  437. {mx_bluesky-1.5.10/src/mx_bluesky/hyperion/external_interaction/callbacks/robot_actions → mx_bluesky-1.5.12/src/mx_bluesky/common/preprocessors}/__init__.py +0 -0
  438. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/preprocessors/preprocessors.py +0 -0
  439. {mx_bluesky-1.5.10/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation → mx_bluesky-1.5.12/src/mx_bluesky/common/protocols}/__init__.py +0 -0
  440. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/protocols/protocols.py +0 -0
  441. {mx_bluesky-1.5.10/src/mx_bluesky/phase1_zebra/device_setup_plans → mx_bluesky-1.5.12/src/mx_bluesky/common/utils}/__init__.py +0 -0
  442. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/utils/context.py +0 -0
  443. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/common/xrc_result.py +0 -0
  444. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/definitions.py +0 -0
  445. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/__init__.py +0 -0
  446. {mx_bluesky-1.5.10/tests → mx_bluesky-1.5.12/src/mx_bluesky/hyperion/device_setup_plans}/__init__.py +0 -0
  447. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/device_setup_plans/dcm_pitch_roll_mirror_adjuster.py +0 -0
  448. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/device_setup_plans/setup_panda.py +0 -0
  449. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/device_setup_plans/setup_zebra.py +0 -0
  450. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/experiment_plans/__init__.py +0 -0
  451. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/experiment_plans/hyperion_grid_detect_then_xray_centre_plan.py +0 -0
  452. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/external_interaction/__init__.py +0 -0
  453. {mx_bluesky-1.5.10/tests/system_tests → mx_bluesky-1.5.12/src/mx_bluesky/hyperion/external_interaction/alerting}/__init__.py +0 -0
  454. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/external_interaction/alerting/constants.py +0 -0
  455. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/external_interaction/callbacks/__init__.py +0 -0
  456. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/external_interaction/callbacks/alert_on_container_change.py +0 -0
  457. {mx_bluesky-1.5.10/tests/system_tests/common/device_setup_plans → mx_bluesky-1.5.12/src/mx_bluesky/hyperion/external_interaction/callbacks/robot_actions}/__init__.py +0 -0
  458. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/external_interaction/callbacks/robot_actions/ispyb_callback.py +0 -0
  459. {mx_bluesky-1.5.10/tests/system_tests/hyperion → mx_bluesky-1.5.12/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation}/__init__.py +0 -0
  460. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/external_interaction/callbacks/snapshot_callback.py +0 -0
  461. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/parameters/__init__.py +0 -0
  462. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/parameters/cli.py +0 -0
  463. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/parameters/components.py +0 -0
  464. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/parameters/load_centre_collect.py +0 -0
  465. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/parameters/rotation.py +0 -0
  466. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/plan_runner_api.py +0 -0
  467. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/resources/panda/panda-gridscan.yaml +0 -0
  468. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/utils/__init__.py +0 -0
  469. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/hyperion/utils/context.py +0 -0
  470. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky/phase1_zebra/__init__.py +0 -0
  471. {mx_bluesky-1.5.10/tests/system_tests/hyperion/external_interaction → mx_bluesky-1.5.12/src/mx_bluesky/phase1_zebra/device_setup_plans}/__init__.py +0 -0
  472. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky.egg-info/dependency_links.txt +0 -0
  473. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky.egg-info/entry_points.txt +0 -0
  474. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/src/mx_bluesky.egg-info/top_level.txt +0 -0
  475. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/start_jupyter.sh +0 -0
  476. {mx_bluesky-1.5.10/tests/system_tests/hyperion/external_interaction/alerting → mx_bluesky-1.5.12/tests}/__init__.py +0 -0
  477. {mx_bluesky-1.5.10/tests/system_tests/hyperion/external_interaction/callbacks → mx_bluesky-1.5.12/tests/system_tests}/__init__.py +0 -0
  478. {mx_bluesky-1.5.10/tests/unit_tests → mx_bluesky-1.5.12/tests/system_tests/common/device_setup_plans}/__init__.py +0 -0
  479. {mx_bluesky-1.5.10/tests/unit_tests/beamlines → mx_bluesky-1.5.12/tests/system_tests/hyperion}/__init__.py +0 -0
  480. {mx_bluesky-1.5.10/tests/unit_tests/beamlines/aithre_lasershaping → mx_bluesky-1.5.12/tests/system_tests/hyperion/external_interaction}/__init__.py +0 -0
  481. {mx_bluesky-1.5.10/tests/unit_tests/beamlines/i04 → mx_bluesky-1.5.12/tests/system_tests/hyperion/external_interaction/alerting}/__init__.py +0 -0
  482. {mx_bluesky-1.5.10/tests/unit_tests/beamlines/i04 → mx_bluesky-1.5.12/tests/system_tests/hyperion/external_interaction}/callbacks/__init__.py +0 -0
  483. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/system_tests/hyperion/external_interaction/test_agamemnon.py +0 -0
  484. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/agamemnon/example_collect_multipin.json +0 -0
  485. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/agamemnon/example_native.json +0 -0
  486. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/agamemnon/example_wait.json +0 -0
  487. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/ispyb-test-credentials.cfg +0 -0
  488. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/nexus_files/README.md +0 -0
  489. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/nexus_files/fake_data.h5 +0 -0
  490. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/nexus_files/rotation/ins_8_5.nxs +0 -0
  491. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/nexus_files/rotation/ins_8_5_expected_output.txt +0 -0
  492. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/nexus_files/rotation/ins_8_5_meta.h5.gz +0 -0
  493. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5.nxs +0 -0
  494. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5_expected_output.txt +0 -0
  495. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5_meta.h5.gz +0 -0
  496. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/parameter_json_files/example_load_centre_collect_params.json +0 -0
  497. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/parameter_json_files/good_test_grid_with_edge_detect_parameters.json +0 -0
  498. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/parameter_json_files/good_test_load_centre_collect_params.json +0 -0
  499. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/parameter_json_files/good_test_load_centre_collect_params_multi_rotation.json +0 -0
  500. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/parameter_json_files/good_test_multi_rotation_scan_parameters.json +0 -0
  501. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/parameter_json_files/good_test_one_multi_rotation_scan_parameters.json +0 -0
  502. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/parameter_json_files/good_test_one_multi_rotation_scan_parameters_nomove.json +0 -0
  503. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/parameter_json_files/good_test_parameters.json +0 -0
  504. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/parameter_json_files/good_test_pin_centre_then_xray_centre_parameters.json +0 -0
  505. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/parameter_json_files/good_test_robot_load_and_centre_params.json +0 -0
  506. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/parameter_json_files/good_test_robot_load_params.json +0 -0
  507. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/parameter_json_files/good_test_rotation_scan_parameters.json +0 -0
  508. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/parameter_json_files/ispyb_gridscan_system_test_parameters.json +0 -0
  509. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/parameter_json_files/load_centre_collect_params_top_n_by_max_count.json +0 -0
  510. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/parameter_json_files/test_gridscan_param_defaults.json +0 -0
  511. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/parameter_json_files/test_oav_snapshot_params.json +0 -0
  512. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/rabbitmq-test-credentials.yml +0 -0
  513. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/scratch/README +0 -0
  514. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_OAVCentring.json +0 -0
  515. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_beamline_dcm_pitch_converter.txt +0 -0
  516. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_beamline_dcm_roll_converter.txt +0 -0
  517. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_beamline_parameters.txt +0 -0
  518. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_beamline_vfm_lat_converter.txt +0 -0
  519. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_config.cfg +0 -0
  520. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_daq_configuration/OAVCentring_hyperion.json +0 -0
  521. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_daq_configuration/display.configuration +0 -0
  522. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_daq_configuration/domain/beamlineParameters +0 -0
  523. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_daq_configuration/lookup/BeamLineEnergy_DCM_Pitch_converter.txt +0 -0
  524. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_daq_configuration/lookup/BeamLineEnergy_DCM_Roll_converter.txt +0 -0
  525. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_daq_configuration/lookup/BeamLine_Undulator_toGap.txt +0 -0
  526. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_daq_configuration/lookup/test_det_dist_converter.txt +0 -0
  527. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_det_dist_converter.txt +0 -0
  528. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_display.configuration +0 -0
  529. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_domain_properties_with_panda +0 -0
  530. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_images/generate_snapshot_input.png +0 -0
  531. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_images/generate_snapshot_output.png +0 -0
  532. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_images/ins_15_33_0.png +0 -0
  533. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_images/ins_15_33_90.png +0 -0
  534. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_images/ins_15_33_expected_0.png +0 -0
  535. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_images/ins_15_33_expected_270.png +0 -0
  536. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_images/thau_1_91_0.png +0 -0
  537. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_images/thau_1_91_90.png +0 -0
  538. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_images/thau_1_91_expected_0.png +0 -0
  539. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_images/thau_1_91_expected_270.png +0 -0
  540. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_jCameraManZoomLevels.xml +0 -0
  541. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_lookup_table.txt +0 -0
  542. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/test_mirror_focus.json +0 -0
  543. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/test_data/zocalo-test-configuration.yaml +0 -0
  544. {mx_bluesky-1.5.10/tests/unit_tests/beamlines/i23 → mx_bluesky-1.5.12/tests/unit_tests}/__init__.py +0 -0
  545. {mx_bluesky-1.5.10/tests/unit_tests/beamlines/i24 → mx_bluesky-1.5.12/tests/unit_tests/beamlines}/__init__.py +0 -0
  546. {mx_bluesky-1.5.10/tests/unit_tests/beamlines/i24/jungfrau_commissioning → mx_bluesky-1.5.12/tests/unit_tests/beamlines/aithre_lasershaping}/__init__.py +0 -0
  547. {mx_bluesky-1.5.10/tests/unit_tests/beamlines/i24/jungfrau_commissioning/experiment_plans → mx_bluesky-1.5.12/tests/unit_tests/beamlines/i04}/__init__.py +0 -0
  548. {mx_bluesky-1.5.10/tests/unit_tests/beamlines/i24/jungfrau_commissioning/plan_stubs → mx_bluesky-1.5.12/tests/unit_tests/beamlines/i04/callbacks}/__init__.py +0 -0
  549. {mx_bluesky-1.5.10/tests/unit_tests/beamlines/i24/serial → mx_bluesky-1.5.12/tests/unit_tests/beamlines/i23}/__init__.py +0 -0
  550. {mx_bluesky-1.5.10/tests/unit_tests/beamlines/i24/serial/extruder → mx_bluesky-1.5.12/tests/unit_tests/beamlines/i24}/__init__.py +0 -0
  551. {mx_bluesky-1.5.10/tests/unit_tests/beamlines/i24/serial/fixed_target → mx_bluesky-1.5.12/tests/unit_tests/beamlines/i24/jungfrau_commissioning}/__init__.py +0 -0
  552. {mx_bluesky-1.5.10/tests/unit_tests/beamlines/i24/serial/parameters → mx_bluesky-1.5.12/tests/unit_tests/beamlines/i24/jungfrau_commissioning/experiment_plans}/__init__.py +0 -0
  553. {mx_bluesky-1.5.10/tests/unit_tests/beamlines/i24/serial/setup_beamline → mx_bluesky-1.5.12/tests/unit_tests/beamlines/i24/jungfrau_commissioning/plan_stubs}/__init__.py +0 -0
  554. {mx_bluesky-1.5.10/tests/unit_tests/beamlines/i24/serial/web_gui → mx_bluesky-1.5.12/tests/unit_tests/beamlines/i24/serial}/__init__.py +0 -0
  555. {mx_bluesky-1.5.10/tests/unit_tests/common → mx_bluesky-1.5.12/tests/unit_tests/beamlines/i24/serial/extruder}/__init__.py +0 -0
  556. {mx_bluesky-1.5.10/tests/unit_tests/common/device_setup_plans → mx_bluesky-1.5.12/tests/unit_tests/beamlines/i24/serial/fixed_target}/__init__.py +0 -0
  557. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/fixed_target/conftest.py +0 -0
  558. {mx_bluesky-1.5.10/tests/unit_tests/common/experiment_plans → mx_bluesky-1.5.12/tests/unit_tests/beamlines/i24/serial/parameters}/__init__.py +0 -0
  559. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/parameters/test_parameter_model.py +0 -0
  560. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/parameters/test_utils.py +0 -0
  561. {mx_bluesky-1.5.10/tests/unit_tests/common/experiment_plans/inner_plans → mx_bluesky-1.5.12/tests/unit_tests/beamlines/i24/serial/setup_beamline}/__init__.py +0 -0
  562. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_pv_abstract.py +0 -0
  563. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/beamlines/i24/serial/test_run_serial.py +0 -0
  564. {mx_bluesky-1.5.10/tests/unit_tests/common/external_interaction → mx_bluesky-1.5.12/tests/unit_tests/beamlines/i24/serial/web_gui}/__init__.py +0 -0
  565. {mx_bluesky-1.5.10/tests/unit_tests/common/external_interaction/alerting → mx_bluesky-1.5.12/tests/unit_tests/common}/__init__.py +0 -0
  566. {mx_bluesky-1.5.10/tests/unit_tests/common/external_interaction/alerting/alerting → mx_bluesky-1.5.12/tests/unit_tests/common/device_setup_plans}/__init__.py +0 -0
  567. {mx_bluesky-1.5.10/tests/unit_tests/common/external_interaction/callbacks → mx_bluesky-1.5.12/tests/unit_tests/common/experiment_plans}/__init__.py +0 -0
  568. {mx_bluesky-1.5.10/tests/unit_tests/common/external_interaction/callbacks/common → mx_bluesky-1.5.12/tests/unit_tests/common/experiment_plans/inner_plans}/__init__.py +0 -0
  569. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/experiment_plans/test_change_aperture_then_move_plan.py +0 -0
  570. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/experiment_plans/test_oav_snapshot_plan.py +0 -0
  571. {mx_bluesky-1.5.10/tests/unit_tests/common/external_interaction/callbacks/ispyb → mx_bluesky-1.5.12/tests/unit_tests/common/external_interaction}/__init__.py +0 -0
  572. {mx_bluesky-1.5.10/tests/unit_tests/common/external_interaction/callbacks/sample_handling → mx_bluesky-1.5.12/tests/unit_tests/common/external_interaction/alerting}/__init__.py +0 -0
  573. {mx_bluesky-1.5.10/tests/unit_tests/common/external_interaction/nexus → mx_bluesky-1.5.12/tests/unit_tests/common/external_interaction/alerting/alerting}/__init__.py +0 -0
  574. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/alerting/alerting/test_alerting.py +0 -0
  575. {mx_bluesky-1.5.10/tests/unit_tests/common/parameters → mx_bluesky-1.5.12/tests/unit_tests/common/external_interaction/callbacks}/__init__.py +0 -0
  576. {mx_bluesky-1.5.10/tests/unit_tests/common/preprocessors → mx_bluesky-1.5.12/tests/unit_tests/common/external_interaction/callbacks/common}/__init__.py +0 -0
  577. {mx_bluesky-1.5.10/tests/unit_tests/common/utils → mx_bluesky-1.5.12/tests/unit_tests/common/external_interaction/callbacks/ispyb}/__init__.py +0 -0
  578. {mx_bluesky-1.5.10/tests/unit_tests/hyperion → mx_bluesky-1.5.12/tests/unit_tests/common/external_interaction/callbacks/sample_handling}/__init__.py +0 -0
  579. {mx_bluesky-1.5.10/tests/unit_tests/hyperion/device_setup_plans → mx_bluesky-1.5.12/tests/unit_tests/common/external_interaction/nexus}/__init__.py +0 -0
  580. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/nexus/test_nexus_utils.py +0 -0
  581. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/test_ispyb_utils.py +0 -0
  582. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/xray_centre/__init__.py +0 -0
  583. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_mapping.py +0 -0
  584. {mx_bluesky-1.5.10/tests/unit_tests/hyperion/experiment_plans → mx_bluesky-1.5.12/tests/unit_tests/common/parameters}/__init__.py +0 -0
  585. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/common/parameters/test_components.py +0 -0
  586. {mx_bluesky-1.5.10/tests/unit_tests/hyperion/experiment_plans/common → mx_bluesky-1.5.12/tests/unit_tests/common/preprocessors}/__init__.py +0 -0
  587. {mx_bluesky-1.5.10/tests/unit_tests/hyperion/external_interaction → mx_bluesky-1.5.12/tests/unit_tests/common/utils}/__init__.py +0 -0
  588. {mx_bluesky-1.5.10/tests/unit_tests/hyperion/external_interaction/callbacks → mx_bluesky-1.5.12/tests/unit_tests/hyperion}/__init__.py +0 -0
  589. {mx_bluesky-1.5.10/tests/unit_tests/hyperion/external_interaction/callbacks/robot_load → mx_bluesky-1.5.12/tests/unit_tests/hyperion/device_setup_plans}/__init__.py +0 -0
  590. {mx_bluesky-1.5.10/tests/unit_tests/hyperion/external_interaction/callbacks/rotation → mx_bluesky-1.5.12/tests/unit_tests/hyperion/experiment_plans}/__init__.py +0 -0
  591. {mx_bluesky-1.5.10/tests/unit_tests/hyperion/external_interaction/nexus → mx_bluesky-1.5.12/tests/unit_tests/hyperion/experiment_plans/common}/__init__.py +0 -0
  592. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/experiment_plans/common/test_flyscan_result.py +0 -0
  593. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/experiment_plans/test_experiment_registry.py +0 -0
  594. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/experiment_plans/test_set_energy_plan.py +0 -0
  595. {mx_bluesky-1.5.10/tests/unit_tests/hyperion/parameters → mx_bluesky-1.5.12/tests/unit_tests/hyperion/external_interaction}/__init__.py +0 -0
  596. {mx_bluesky-1.5.10/tests/unit_tests/hyperion/utils → mx_bluesky-1.5.12/tests/unit_tests/hyperion/external_interaction/callbacks}/__init__.py +0 -0
  597. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/external_interaction/callbacks/test_external_callbacks.py +0 -0
  598. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/external_interaction/test_agamemnon.py +0 -0
  599. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000001.h5 +0 -0
  600. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000002.h5 +0 -0
  601. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000003.h5 +0 -0
  602. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/test_plan_runner_api.py +0 -0
  603. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/hyperion/utils/test_callback_sim.py +0 -0
  604. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/t01.py +0 -0
  605. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/tests/unit_tests/test_cli.py +0 -0
  606. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/build_docker_image.sh +0 -0
  607. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/build_imginfo.sh +0 -0
  608. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/deploy/create_venv.py +0 -0
  609. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/deploy/deploy_edm_for_ssx.sh +0 -0
  610. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/deploy/test_deploy.py +0 -0
  611. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/dev_jaeger_container.sh +0 -0
  612. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/dls_dev_env.sh +0 -0
  613. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/docker/entrypoint.sh +0 -0
  614. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/docker/healthcheck.sh +0 -0
  615. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/docker/i03-compose.yml +0 -0
  616. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/generate_plantuml.py +0 -0
  617. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/graylog/Dockerfile +0 -0
  618. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/graylog/tcp_input.json +0 -0
  619. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/procserv_ioc_start.sh +0 -0
  620. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/request_baton.sh +0 -0
  621. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/run_imginfo.sh +0 -0
  622. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/setup_graylog.sh +0 -0
  623. {mx_bluesky-1.5.10 → mx_bluesky-1.5.12}/utility_scripts/strip_metafile.py +0 -0
@@ -1,5 +1,5 @@
1
1
  # Changes here will be overwritten by Copier
2
- _commit: 2.5.0
2
+ _commit: 4.3.0
3
3
  _src_path: gh:DiamondLightSource/python-copier-template
4
4
  author_email: dominic.oram@diamond.ac.uk
5
5
  author_name: Dominic Oram
@@ -9,10 +9,12 @@ component_type: library
9
9
  description: Bluesky tools for MX Beamlines at DLS
10
10
  distribution_name: mx-bluesky
11
11
  docker: true
12
+ docker_debug: true
12
13
  docs_type: sphinx
13
14
  git_platform: github.com
14
15
  github_org: DiamondLightSource
15
16
  package_name: mx_bluesky
16
17
  pypi: true
17
18
  repo_name: mx-bluesky
19
+ strict_typing: true
18
20
  type_checker: pyright
@@ -23,7 +23,8 @@
23
23
  "redhat.vscode-yaml",
24
24
  "ryanluker.vscode-coverage-gutters",
25
25
  "charliermarsh.ruff",
26
- "ms-azuretools.vscode-docker"
26
+ "ms-azuretools.vscode-docker",
27
+ "streetsidesoftware.code-spell-checker"
27
28
  ],
28
29
  "python.testing.pytestArgs": [
29
30
  "--cov=mx_bluesky",
@@ -53,7 +54,6 @@
53
54
  }
54
55
  },
55
56
  "features": {
56
- // Some default things like git config
57
57
  // add in eternal history and other bash features
58
58
  "ghcr.io/diamondlightsource/devcontainer-features/bash-config:1": {}
59
59
  },
@@ -73,4 +73,4 @@ It is recommended that developers use a [vscode devcontainer](https://code.visua
73
73
 
74
74
  This project was created using the [Diamond Light Source Copier Template](https://github.com/DiamondLightSource/python-copier-template) for Python projects.
75
75
 
76
- For more information on common tasks like setting up a developer environment, running the tests, and setting a pre-commit hook, see the template's [How-to guides](https://diamondlightsource.github.io/python-copier-template/2.5.0/how-to.html).
76
+ For more information on common tasks like setting up a developer environment, running the tests, and setting a pre-commit hook, see the template's [How-to guides](https://diamondlightsource.github.io/python-copier-template/4.3.0/how-to.html).
@@ -7,7 +7,7 @@ assignees: ''
7
7
 
8
8
  ---
9
9
 
10
- Describe the bug, including a clear and concise description of the expected behavior, the actual behavior and the context in which you encountered it (ideally include details of your environment).
10
+ Describe the bug, including a clear and concise description of the expected behaviour, the actual behavior and the context in which you encountered it (ideally include details of your environment).
11
11
 
12
12
  ## Steps To Reproduce
13
13
  Steps to reproduce the behavior:
@@ -15,7 +15,8 @@ runs:
15
15
  run: |
16
16
  PYTHON_VERSION="${{ inputs.python-version }}"
17
17
  if [ $PYTHON_VERSION == "dev" ]; then
18
- PYTHON_VERSION=$(sed -n "s/ARG PYTHON_VERSION=//p" Dockerfile)
18
+ # python version from Dockerfile, removing potential pinned sha
19
+ PYTHON_VERSION=$(sed -Ene "s/ARG PYTHON_VERSION=([0-9\.]+).*/\1/p" Dockerfile)
19
20
  fi
20
21
  echo "PYTHON_VERSION=$PYTHON_VERSION" >> "$GITHUB_ENV"
21
22
  shell: bash
@@ -1,8 +1,3 @@
1
- # To get started with Dependabot version updates, you'll need to specify which
2
- # package ecosystems to update and where the package manifests are located.
3
- # Please see the documentation for all configuration options:
4
- # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
5
-
6
1
  version: 2
7
2
  updates:
8
3
  - package-ecosystem: "github-actions"
@@ -13,6 +8,8 @@ updates:
13
8
  actions:
14
9
  patterns:
15
10
  - "*"
11
+ commit-message:
12
+ prefix: "chore"
16
13
 
17
14
  - package-ecosystem: "pip"
18
15
  directory: "/"
@@ -22,3 +19,8 @@ updates:
22
19
  dev-dependencies:
23
20
  patterns:
24
21
  - "*"
22
+ commit-message:
23
+ prefix: "chore"
24
+ ignore:
25
+ - dependency-name: "pyright"
26
+ versions: [ ">=1.1.407" ] # Until https://github.com/microsoft/pyright/issues/11060 is fixed
@@ -0,0 +1,44 @@
1
+ # .github/release.yml
2
+
3
+ changelog:
4
+ categories:
5
+ - title: Hyperion
6
+ labels:
7
+ - hyperion
8
+ - title: Jungfrau
9
+ labels:
10
+ - jungfrau
11
+ - title: Murko
12
+ labels:
13
+ - murko
14
+ - title: I03
15
+ labels:
16
+ - i03
17
+ - title: I04
18
+ labels:
19
+ - i04
20
+ - title: I04-1
21
+ labels:
22
+ - i04-1
23
+ - title: I23
24
+ labels:
25
+ - i23
26
+ - title: I24
27
+ labels:
28
+ - i24
29
+ - title: VMXm
30
+ labels:
31
+ - vmxm
32
+ - title: VMXi
33
+ labels:
34
+ - vmxi
35
+ - title: Documentation
36
+ labels:
37
+ - documentation
38
+ - title: Dev Experience / Refactors
39
+ labels:
40
+ - dev experience
41
+ - refactor
42
+ - title: Other Changes
43
+ labels:
44
+ - "*"
@@ -1,5 +1,9 @@
1
1
  on:
2
2
  workflow_call:
3
+ inputs:
4
+ publish:
5
+ type: boolean
6
+ description: If true, pushes image to container registry
3
7
 
4
8
  jobs:
5
9
  build:
@@ -24,6 +28,10 @@ jobs:
24
28
  username: ${{ github.actor }}
25
29
  password: ${{ secrets.GITHUB_TOKEN }}
26
30
 
31
+ ################################
32
+ # Hyperion Container Image Build
33
+ ################################
34
+
27
35
  - name: Build and export to Docker local cache
28
36
  uses: docker/build-push-action@v6
29
37
  env:
@@ -33,15 +41,6 @@ jobs:
33
41
  file: Dockerfile.hyperion
34
42
  load: true
35
43
 
36
- - name: Build and export Dockerfile.blueapi to local cache
37
- uses: docker/build-push-action@v6
38
- env:
39
- DOCKER_BUILD_RECORD_UPLOAD: false
40
- with:
41
- context: .
42
- file: Dockerfile.blueapi
43
- load: true
44
-
45
44
  - name: Create tags for publishing Hyperion image
46
45
  id: meta-hyperion
47
46
  uses: docker/metadata-action@v5
@@ -58,6 +57,45 @@ jobs:
58
57
  type=ref,event=tag
59
58
  type=raw,value=latest
60
59
 
60
+ - name: Push cached Hyperion image to container registry
61
+ if: inputs.publish && github.ref_type == 'tag'
62
+ uses: docker/build-push-action@v6
63
+ env:
64
+ DOCKER_BUILD_RECORD_UPLOAD: false
65
+ # This does not build the image again, it will find the image in the
66
+ # Docker cache and publish it
67
+ with:
68
+ context: .
69
+ file: Dockerfile.hyperion
70
+ push: true
71
+ tags: ${{ steps.meta-hyperion.outputs.tags }}
72
+ labels: ${{ steps.meta-hyperion.outputs.labels }}
73
+ # Set the annotations to make the description appear in the GH repo page
74
+ annotations: ${{ steps.meta-hyperion.outputs.annotations }}
75
+
76
+ - name: Check disk space before
77
+ run: df -h && docker buildx du
78
+
79
+ - name: Prune local image cache before next build
80
+ run: docker buildx prune -f
81
+
82
+ - name: Check disk space after
83
+ run: df -h && docker buildx du
84
+
85
+ ###############################
86
+ # BlueAPI Container Image Build
87
+ ###############################
88
+
89
+ - name: Build and export Dockerfile.blueapi to local cache
90
+ uses: docker/build-push-action@v6
91
+ env:
92
+ DOCKER_BUILD_RECORD_UPLOAD: false
93
+ with:
94
+ context: .
95
+ file: Dockerfile.blueapi
96
+ load: true
97
+
98
+
61
99
  - name: Create tags for publishing BlueAPI image
62
100
  id: meta-blueapi
63
101
  uses: docker/metadata-action@v5
@@ -74,22 +112,6 @@ jobs:
74
112
  type=ref,event=tag
75
113
  type=raw,value=latest
76
114
 
77
- - name: Push cached Hyperion image to container registry
78
- if: github.ref_type == 'tag'
79
- uses: docker/build-push-action@v6
80
- env:
81
- DOCKER_BUILD_RECORD_UPLOAD: false
82
- # This does not build the image again, it will find the image in the
83
- # Docker cache and publish it
84
- with:
85
- context: .
86
- file: Dockerfile.hyperion
87
- push: true
88
- tags: ${{ steps.meta-hyperion.outputs.tags }}
89
- labels: ${{ steps.meta-hyperion.outputs.labels }}
90
- # Set the annotations to make the description appear in the GH repo page
91
- annotations: ${{ steps.meta-hyperion.outputs.annotations }}
92
-
93
115
  - name: Push cached BlueAPI image to container registry
94
116
  if: github.ref_type == 'tag'
95
117
  uses: docker/build-push-action@v6
@@ -0,0 +1,49 @@
1
+ on:
2
+ workflow_call:
3
+ inputs:
4
+ publish:
5
+ type: boolean
6
+ description: If true, pushes image to container registry
7
+
8
+ jobs:
9
+ build:
10
+ runs-on: ubuntu-latest
11
+
12
+ steps:
13
+ - name: Checkout
14
+ uses: actions/checkout@v4
15
+ with:
16
+ # Need this to get version number from last tag
17
+ fetch-depth: 0
18
+
19
+ - name: Set up Docker Buildx
20
+ id: buildx
21
+ uses: docker/setup-buildx-action@v3
22
+
23
+ - name: Log in to GitHub Docker Registry
24
+ if: github.event_name != 'pull_request'
25
+ uses: docker/login-action@v3
26
+ with:
27
+ registry: ghcr.io
28
+ username: ${{ github.actor }}
29
+ password: ${{ secrets.GITHUB_TOKEN }}
30
+
31
+ - name: Create tags for publishing debug image
32
+ id: debug-meta
33
+ uses: docker/metadata-action@v5
34
+ with:
35
+ images: ghcr.io/${{ github.repository }}
36
+ tags: |
37
+ type=ref,event=tag,suffix=-debug
38
+ type=raw,value=latest-debug
39
+
40
+ - name: Build and publish debug image to container registry
41
+ if: github.ref_type == 'tag'
42
+ uses: docker/build-push-action@v6
43
+ env:
44
+ DOCKER_BUILD_RECORD_UPLOAD: false
45
+ with:
46
+ context: .
47
+ push: true
48
+ target: debug
49
+ tags: ${{ steps.debug-meta.outputs.tags }}
@@ -1,6 +1,7 @@
1
1
  on:
2
2
  workflow_call:
3
3
 
4
+
4
5
  jobs:
5
6
  build:
6
7
  runs-on: ubuntu-latest
@@ -0,0 +1,19 @@
1
+ on:
2
+ workflow_call:
3
+
4
+ jobs:
5
+ label:
6
+ runs-on: ubuntu-latest
7
+ permissions:
8
+ issues: write
9
+ pull-requests: write
10
+ steps:
11
+ - uses: mheap/github-action-required-labels@v5
12
+ with:
13
+ labels: |
14
+ .*
15
+ use_regex: true
16
+ mode: minimum
17
+ count: 1
18
+ add_comment: true
19
+ message: "Please add a label to this PR. This helps with generating helpful release notes."
@@ -23,7 +23,7 @@ jobs:
23
23
  - name: Create GitHub Release
24
24
  # We pin to the SHA, not the tag, for security reasons.
25
25
  # https://docs.github.com/en/actions/learn-github-actions/security-hardening-for-github-actions#using-third-party-actions
26
- uses: softprops/action-gh-release@e7a8f85e1c67a31e6ed99a94b41bd0b71bbee6b8 # v2.0.9
26
+ uses: softprops/action-gh-release@da05d552573ad5aba039eaac05058a918a7bf631 # v2.2.2
27
27
  with:
28
28
  prerelease: ${{ contains(github.ref_name, 'a') || contains(github.ref_name, 'b') || contains(github.ref_name, 'rc') }}
29
29
  files: "*"
@@ -56,7 +56,7 @@ jobs:
56
56
  run: tox -e tests -- -m "not dlstbx" --timeout=2 --cov=mx_bluesky --cov-report term --cov-report xml:cov.xml
57
57
 
58
58
  - name: Upload coverage to Codecov
59
- uses: codecov/codecov-action@v4
59
+ uses: codecov/codecov-action@v5
60
60
  with:
61
61
  name: ${{ inputs.python-version }}/${{ inputs.runs-on }}
62
62
  files: cov.xml
@@ -2,26 +2,32 @@ name: CI
2
2
 
3
3
  on:
4
4
  push:
5
+ branches:
6
+ - main
7
+ tags:
8
+ - '*'
5
9
  pull_request:
6
10
 
7
11
  jobs:
8
- check:
9
- uses: ./.github/workflows/_check.yml
12
+
13
+ require-label:
14
+ if: github.event_name == 'pull_request'
15
+ uses: ./.github/workflows/_label.yml
10
16
 
11
17
  lint:
12
- needs: check
13
- if: needs.check.outputs.branch-pr == ''
14
18
  uses: ./.github/workflows/_tox.yml
15
19
  with:
16
20
  tox: pre-commit,type-checking
17
21
 
18
22
  test:
19
- needs: check
20
- if: needs.check.outputs.branch-pr == ''
21
23
  strategy:
22
24
  matrix:
23
25
  runs-on: ["ubuntu-latest"] # can add windows-latest, macos-latest
24
- python-version: ["3.11", "3.12"]
26
+ python-version: ["3.11", "3.12", "3.13"]
27
+ include:
28
+ # Include one that runs in the dev environment
29
+ - runs-on: "ubuntu-latest"
30
+ python-version: "dev"
25
31
  fail-fast: false
26
32
  uses: ./.github/workflows/_test.yml
27
33
  with:
@@ -31,9 +37,20 @@ jobs:
31
37
  CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
32
38
 
33
39
  container:
34
- needs: check
35
- if: needs.check.outputs.branch-pr == ''
40
+ needs: test
41
+ if: always()
36
42
  uses: ./.github/workflows/_container.yml
43
+ with:
44
+ publish: ${{ needs.test.result == 'success' }}
45
+ permissions:
46
+ contents: read
47
+ packages: write
48
+
49
+ debug_container:
50
+ needs: [container, test]
51
+ uses: ./.github/workflows/_debug_container.yml
52
+ with:
53
+ publish: ${{ needs.test.result == 'success' }}
37
54
  permissions:
38
55
  contents: read
39
56
  packages: write
@@ -47,25 +64,22 @@ jobs:
47
64
  packages: write
48
65
 
49
66
  docs:
50
- needs: check
51
- if: needs.check.outputs.branch-pr == ''
52
67
  uses: ./.github/workflows/_docs.yml
53
68
 
69
+
54
70
  dist:
55
- needs: check
56
- if: needs.check.outputs.branch-pr == ''
57
71
  uses: ./.github/workflows/_dist.yml
58
72
 
59
73
  pypi:
74
+ needs: [dist, test]
60
75
  if: github.ref_type == 'tag'
61
- needs: dist
62
76
  uses: ./.github/workflows/_pypi.yml
63
77
  permissions:
64
78
  id-token: write
65
79
 
66
80
  release:
81
+ needs: [dist, test, docs]
67
82
  if: github.ref_type == 'tag'
68
- needs: [dist, docs]
69
83
  uses: ./.github/workflows/_release.yml
70
84
  permissions:
71
85
  contents: write
@@ -1,6 +1,6 @@
1
1
  repos:
2
2
  - repo: https://github.com/pre-commit/pre-commit-hooks
3
- rev: v4.5.0
3
+ rev: v5.0.0
4
4
  hooks:
5
5
  - id: check-added-large-files
6
6
  args: ["--maxkb=500"]
@@ -15,7 +15,7 @@ repos:
15
15
  - id: ruff
16
16
  name: lint with ruff
17
17
  language: system
18
- entry: ruff check --force-exclude
18
+ entry: ruff check --force-exclude --fix
19
19
  types: [python]
20
20
  require_serial: true
21
21
 
@@ -5,6 +5,7 @@
5
5
  "tamasfe.even-better-toml",
6
6
  "redhat.vscode-yaml",
7
7
  "ryanluker.vscode-coverage-gutters",
8
- "charliermarsh.Ruff"
8
+ "charliermarsh.Ruff",
9
+ "streetsidesoftware.code-spell-checker"
9
10
  ]
10
11
  }
@@ -17,7 +17,7 @@
17
17
  "env": {
18
18
  // Enable break on exception when debugging tests (see: tests/conftest.py)
19
19
  "PYTEST_RAISE": "1",
20
- "PYTEST_ADDOPTS": "--no-cov"
20
+ "PYTEST_ADDOPTS": "--no-cov" // Needed for debugger - see https://code.visualstudio.com/docs/python/testing#_pytest-configuration-settings
21
21
  },
22
22
  }
23
23
  ]
@@ -18,6 +18,6 @@
18
18
  ],
19
19
  "python.analysis.autoImportCompletions": true,
20
20
  "terminal.integrated.gpuAcceleration": "off",
21
- "esbonio.sphinx.confDir": ""
21
+ "esbonio.sphinx.confDir": "",
22
22
  }
23
23
  }
@@ -24,4 +24,36 @@
24
24
  },
25
25
  "terminal.integrated.gpuAcceleration": "off",
26
26
  "python.analysis.typeCheckingMode": "basic",
27
+ "cSpell.words": [
28
+ "aperturescatterguard",
29
+ "beamline",
30
+ "beamlines",
31
+ "beamsize",
32
+ "beamstop",
33
+ "blueapi",
34
+ "caget",
35
+ "cryostream",
36
+ "deadtime",
37
+ "dodal",
38
+ "eiger",
39
+ "Expeye",
40
+ "fastcs",
41
+ "flyscan",
42
+ "gonio",
43
+ "gridscan",
44
+ "mrad",
45
+ "murko",
46
+ "ophyd",
47
+ "pmac",
48
+ "readback",
49
+ "scanspec",
50
+ "scatterguard",
51
+ "smargon",
52
+ "thawer",
53
+ "topup",
54
+ "Transfocator",
55
+ "undulator",
56
+ "xbpm",
57
+ "xspress"
58
+ ],
27
59
  }
@@ -17,10 +17,33 @@ ENV PATH=/venv/bin:$PATH
17
17
 
18
18
  # The build stage installs the context into the venv
19
19
  FROM developer AS build
20
- COPY . /context
21
- WORKDIR /context
20
+ # Requires buildkit 0.17.0
21
+ COPY --chmod=o+wrX . /workspaces/mx-bluesky
22
+ WORKDIR /workspaces/mx-bluesky
22
23
  RUN touch dev-requirements.txt && pip install -c dev-requirements.txt .
23
24
 
25
+
26
+ FROM build AS debug
27
+
28
+
29
+ # Set origin to use ssh
30
+ RUN git remote set-url origin git@github.com:DiamondLightSource/mx-bluesky.git
31
+
32
+
33
+ # For this pod to understand finding user information from LDAP
34
+ RUN apt update
35
+ RUN DEBIAN_FRONTEND=noninteractive apt install libnss-ldapd -y
36
+ RUN sed -i 's/files/ldap files/g' /etc/nsswitch.conf
37
+
38
+ # Make editable and debuggable
39
+ RUN pip install debugpy
40
+ RUN pip install -e .
41
+
42
+ # Alternate entrypoint to allow devcontainer to attach
43
+ ENTRYPOINT [ "/bin/bash", "-c", "--" ]
44
+ CMD [ "while true; do sleep 30; done;" ]
45
+
46
+
24
47
  # The runtime stage copies the built venv into a slim runtime container
25
48
  FROM python:${PYTHON_VERSION}-slim AS runtime
26
49
  # Add apt-get system dependecies for runtime here if needed
@@ -5,11 +5,13 @@ FROM ghcr.io/diamondlightsource/blueapi:1.0.0-rc.2
5
5
 
6
6
  ARG DEBIAN_FRONTEND=noninteractive
7
7
 
8
- RUN apt update -y && apt upgrade -y
9
- # Needed for python cv2 dependency
10
- RUN apt install -y libgl1 libglib2.0-0
8
+ # Need:
9
+ # libgl, libglib2.0 for python cv2 dependency
10
+ RUN apt update -y && \
11
+ apt upgrade -y && \
12
+ apt install -y libgl1 libglib2.0-0
11
13
 
12
- RUN /venv/bin/pip install mx-bluesky
14
+ RUN /venv/bin/pip install --no-cache-dir --no-compile mx-bluesky
13
15
 
14
16
  # Needed so that Blueapi's setup-scratch stage has permission to modify dependencies installed
15
17
  # in the above pip installation
@@ -2,11 +2,13 @@ FROM python:3.11 AS build
2
2
 
3
3
  ARG DEBIAN_FRONTEND=noninteractive
4
4
 
5
- RUN apt update -y && apt upgrade -y
6
- # Needed for python cv2 dependency
7
- RUN apt install -y libgl1 libglib2.0-0
5
+ # Need:
6
+ # libgl, libglib2.0 for python cv2 dependency
7
+ RUN apt update -y && \
8
+ apt upgrade -y && \
9
+ apt install -y libgl1 libglib2.0-0
8
10
 
9
- RUN pip install setuptools_scm
11
+ RUN pip install --no-cache-dir --no-compile setuptools_scm
10
12
 
11
13
  # Copy the pyproject.toml and install dependencies for better caching when developing
12
14
  # & rerunning deployment scripts
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mx-bluesky
3
- Version: 1.5.10
3
+ Version: 1.5.12
4
4
  Summary: Bluesky tools for MX Beamlines at DLS
5
5
  Author-email: Dominic Oram <dominic.oram@diamond.ac.uk>
6
6
  License: Apache License
@@ -210,6 +210,7 @@ Classifier: Development Status :: 3 - Alpha
210
210
  Classifier: License :: OSI Approved :: Apache Software License
211
211
  Classifier: Programming Language :: Python :: 3.11
212
212
  Classifier: Programming Language :: Python :: 3.12
213
+ Classifier: Programming Language :: Python :: 3.13
213
214
  Requires-Python: >=3.11
214
215
  Description-Content-Type: text/x-rst
215
216
  License-File: LICENSE
@@ -217,11 +218,10 @@ Requires-Dist: annotated_types
217
218
  Requires-Dist: caproto
218
219
  Requires-Dist: fastapi[all]
219
220
  Requires-Dist: flask-restful
220
- Requires-Dist: ispyb
221
221
  Requires-Dist: jupyterlab
222
222
  Requires-Dist: matplotlib
223
223
  Requires-Dist: nexgen>=0.11.0
224
- Requires-Dist: numpy==2.2.6
224
+ Requires-Dist: numpy>=2.3.5
225
225
  Requires-Dist: opencv-python
226
226
  Requires-Dist: opentelemetry-distro
227
227
  Requires-Dist: opentelemetry-exporter-otlp
@@ -237,17 +237,18 @@ Requires-Dist: deepdiff
237
237
  Requires-Dist: matplotlib
238
238
  Requires-Dist: cachetools
239
239
  Requires-Dist: daq-config-server>=v1.0.0-rc.2
240
- Requires-Dist: blueapi>=1.5.0
240
+ Requires-Dist: blueapi>=1.6.3
241
241
  Requires-Dist: ophyd>=1.10.5
242
- Requires-Dist: ophyd-async>=0.10.0a2
242
+ Requires-Dist: ophyd-async>=0.14.0
243
243
  Requires-Dist: bluesky>=1.14.6
244
- Requires-Dist: dls-dodal==1.63.0
244
+ Requires-Dist: dls-dodal==1.66.0
245
245
  Provides-Extra: dev
246
246
  Requires-Dist: black; extra == "dev"
247
247
  Requires-Dist: build; extra == "dev"
248
248
  Requires-Dist: diff-cover; extra == "dev"
249
249
  Requires-Dist: GitPython; extra == "dev"
250
250
  Requires-Dist: import-linter; extra == "dev"
251
+ Requires-Dist: ispyb; extra == "dev"
251
252
  Requires-Dist: ipython; extra == "dev"
252
253
  Requires-Dist: mypy; extra == "dev"
253
254
  Requires-Dist: myst-parser; extra == "dev"
@@ -255,12 +256,13 @@ Requires-Dist: pipdeptree; extra == "dev"
255
256
  Requires-Dist: plantweb; extra == "dev"
256
257
  Requires-Dist: pre-commit; extra == "dev"
257
258
  Requires-Dist: pydata-sphinx-theme>=0.12; extra == "dev"
258
- Requires-Dist: pyright; extra == "dev"
259
+ Requires-Dist: pyright==1.1.406; extra == "dev"
259
260
  Requires-Dist: pytest-asyncio; extra == "dev"
260
261
  Requires-Dist: pytest-cov; extra == "dev"
261
262
  Requires-Dist: pytest-random-order; extra == "dev"
262
263
  Requires-Dist: pytest-timeout; extra == "dev"
263
264
  Requires-Dist: pytest; extra == "dev"
265
+ Requires-Dist: responses; extra == "dev"
264
266
  Requires-Dist: ruff; extra == "dev"
265
267
  Requires-Dist: sphinx-autobuild; extra == "dev"
266
268
  Requires-Dist: sphinx-copybutton; extra == "dev"
@@ -7,6 +7,9 @@ import pytest
7
7
  environ["HYPERION_TEST_MODE"] = "true"
8
8
 
9
9
 
10
+ pytest_plugins = ["dodal.testing.fixtures.run_engine"]
11
+
12
+
10
13
  def pytest_addoption(parser):
11
14
  parser.addoption(
12
15
  "--logging",