mx-bluesky 1.5.3__tar.gz → 1.5.5__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 (552) hide show
  1. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/workflows/_helm.yml +7 -0
  2. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/workflows/_test.yml +1 -1
  3. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/PKG-INFO +2 -2
  4. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/how-to/deploy-a-release.rst +2 -1
  5. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/how-to/dev-ops/run-tests.rst +1 -1
  6. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/hyperion/reference/readme.md +14 -6
  7. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/murko-integration/explanations/architecture.rst +3 -1
  8. mx_bluesky-1.5.5/docs/developer/murko-integration/images/murko_setup.drawio.png +0 -0
  9. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/serial-crystallography-on-i24/how-to/pmac-docs.rst +2 -2
  10. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/serial-crystallography-on-i24/how-to/run-a-collection.rst +3 -4
  11. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/user/hyperion/alerts.rst +15 -1
  12. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/user/hyperion/configuration.rst +1 -1
  13. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/user/hyperion/index.rst +6 -4
  14. mx_bluesky-1.5.5/docs/user/hyperion/running.rst +13 -0
  15. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/pyproject.toml +4 -2
  16. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/run_hyperion.sh +6 -2
  17. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/_version.py +3 -3
  18. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/aithre_lasershaping/__init__.py +2 -0
  19. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/aithre_lasershaping/beamline_safe.py +17 -0
  20. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i04/__init__.py +6 -1
  21. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i04/experiment_plans/i04_grid_detect_then_xray_centre_plan.py +0 -8
  22. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i04/redis_to_murko_forwarder.py +2 -3
  23. mx_bluesky-1.5.5/src/mx_bluesky/beamlines/i04/thawing_plan.py +248 -0
  24. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/blueapi_config.yaml +1 -1
  25. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/dcid.py +4 -25
  26. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DetStage.edl +4 -7
  27. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DiamondExtruder-I24-py3v1.edl +5 -5
  28. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/extruder/i24ssx_Extruder_Collect_py3v2.py +18 -107
  29. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/CustomChip_py3v1.edl +11 -11
  30. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DetStage.edl +2 -5
  31. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DiamondChipI24-py3v1.edl +80 -80
  32. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/ME14E-GeneralPurpose.edl +120 -120
  33. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/MappingLite-oxford_py3v1.edl +143 -143
  34. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/PMAC_Command.edl +2 -2
  35. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/Shutter_Control.edl +3 -3
  36. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/nudgechip.edl +24 -24
  37. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/pumpprobe-py3v1.edl +19 -19
  38. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Collect_py3v1.py +8 -92
  39. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Manager_py3v1.py +15 -30
  40. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_moveonclick.py +10 -10
  41. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/parameters/constants.py +0 -2
  42. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/parameters/experiment_parameters.py +1 -6
  43. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/cs/cs_maker.json +3 -3
  44. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/parameters/utils.py +1 -1
  45. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/run_extruder.sh +15 -0
  46. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/run_fixed_target.sh +17 -0
  47. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/set_visit_directory.sh +1 -1
  48. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/__init__.py +1 -2
  49. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/pv.py +142 -160
  50. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/pv_abstract.py +1 -30
  51. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_beamline.py +0 -94
  52. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_detector.py +4 -10
  53. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_zebra_plans.py +12 -20
  54. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/web_gui_plans/general_plans.py +4 -13
  55. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/write_nexus.py +34 -9
  56. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/device_setup_plans/manipulate_sample.py +2 -2
  57. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/experiment_plans/common_grid_detect_then_xray_centre_plan.py +2 -2
  58. mx_bluesky-1.5.5/src/mx_bluesky/common/experiment_plans/inner_plans/udc_default_state.py +65 -0
  59. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/experiment_plans/oav_snapshot_plan.py +2 -2
  60. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/callbacks/common/grid_detection_callback.py +35 -17
  61. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/callbacks/common/ispyb_callback_base.py +1 -1
  62. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/callbacks/common/plan_reactive_callback.py +2 -2
  63. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/callbacks/sample_handling/sample_handling_callback.py +3 -2
  64. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/ispyb_callback.py +2 -2
  65. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/nexus_callback.py +2 -2
  66. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/parameters/constants.py +1 -0
  67. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/baton_handler.py +50 -8
  68. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/experiment_plans/load_centre_collect_full_plan.py +5 -1
  69. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/experiment_plans/robot_load_and_change_energy.py +6 -2
  70. mx_bluesky-1.5.5/src/mx_bluesky/hyperion/external_interaction/alerting/constants.py +7 -0
  71. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/external_interaction/callbacks/__main__.py +4 -0
  72. mx_bluesky-1.5.5/src/mx_bluesky/hyperion/external_interaction/callbacks/alert_on_container_change.py +54 -0
  73. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_callback.py +2 -2
  74. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky.egg-info/PKG-INFO +2 -2
  75. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky.egg-info/SOURCES.txt +7 -2
  76. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky.egg-info/requires.txt +1 -1
  77. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/conftest.py +26 -50
  78. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/hyperion/external_interaction/alerting/test_log_based_alerts.py +26 -0
  79. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/hyperion/external_interaction/conftest.py +6 -8
  80. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/hyperion/external_interaction/test_load_centre_collect_full_plan.py +25 -25
  81. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/aithre_lasershaping/test_beamline_safe.py +25 -1
  82. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/aithre_lasershaping/test_goniometer_controls.py +1 -1
  83. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i04/test_thawing.py +131 -37
  84. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i23/test_serial.py +1 -1
  85. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/conftest.py +5 -50
  86. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/extruder/test_extruder_collect.py +11 -134
  87. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_chip_manager.py +7 -7
  88. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_ft_collect.py +3 -90
  89. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_moveonclick.py +6 -6
  90. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_pv_abstract.py +1 -6
  91. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_setup_beamline.py +0 -25
  92. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_setup_detector.py +1 -11
  93. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_zebra_plans.py +0 -29
  94. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/test_dcid.py +1 -65
  95. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/test_write_nexus.py +49 -5
  96. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/web_gui/test_general_plans.py +1 -10
  97. mx_bluesky-1.5.5/tests/unit_tests/common/experiment_plans/inner_plans/test_udc_default_state.py +149 -0
  98. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/experiment_plans/test_common_grid_detect_then_xray_centre_plan.py +2 -2
  99. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/experiment_plans/test_grid_detection_plan.py +93 -51
  100. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_callback.py +1 -1
  101. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/experiment_plans/test_pin_centre_then_xray_centre_plan.py +2 -2
  102. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/experiment_plans/test_pin_tip_centring.py +21 -10
  103. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/experiment_plans/test_robot_load_and_change_energy.py +2 -2
  104. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/experiment_plans/test_rotation_scan_plan.py +3 -3
  105. mx_bluesky-1.5.5/tests/unit_tests/hyperion/external_interaction/callbacks/test_alert_on_container_change.py +129 -0
  106. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/external_interaction/callbacks/test_external_callbacks.py +1 -1
  107. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/test_baton_handler.py +123 -4
  108. mx_bluesky-1.5.5/utility_scripts/request_baton.sh +35 -0
  109. mx_bluesky-1.5.3/docs/developer/murko-integration/images/murko_setup.drawio.png +0 -0
  110. mx_bluesky-1.5.3/src/mx_bluesky/beamlines/i04/thawing_plan.py +0 -134
  111. mx_bluesky-1.5.3/src/mx_bluesky/hyperion/external_interaction/alerting/constants.py +0 -12
  112. mx_bluesky-1.5.3/tests/unit_tests/hyperion/utils/__init__.py +0 -0
  113. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.copier-answers.yml +0 -0
  114. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.coveragerc +0 -0
  115. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.devcontainer/Dockerfile +0 -0
  116. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.devcontainer/devcontainer.json +0 -0
  117. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.dockerignore +0 -0
  118. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/CODEOWNERS +0 -0
  119. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/CONTRIBUTING.md +0 -0
  120. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  121. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/ISSUE_TEMPLATE/issue.md +0 -0
  122. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/actions/install_requirements/action.yml +0 -0
  123. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/actions/verify-nexus/Dockerfile +0 -0
  124. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/actions/verify-nexus/action.yml +0 -0
  125. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/actions/verify-nexus/entrypoint.sh +0 -0
  126. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/dependabot.yml +0 -0
  127. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/pages/index.html +0 -0
  128. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/pages/make_switcher.py +0 -0
  129. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/workflows/_check.yml +0 -0
  130. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/workflows/_container.yml +0 -0
  131. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/workflows/_dist.yml +0 -0
  132. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/workflows/_docs.yml +0 -0
  133. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/workflows/_pypi.yml +0 -0
  134. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/workflows/_release.yml +0 -0
  135. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/workflows/_tox.yml +0 -0
  136. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/workflows/ci.yml +0 -0
  137. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.github/workflows/periodic.yml +0 -0
  138. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.gitignore +0 -0
  139. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.pre-commit-config.yaml +0 -0
  140. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.vscode/extensions.json +0 -0
  141. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.vscode/launch.json +0 -0
  142. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.vscode/mx-bluesky.code-workspace +0 -0
  143. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.vscode/mxb-with-core-dependencies.code-workspace +0 -0
  144. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.vscode/settings.json +0 -0
  145. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/.vscode/tasks.json +0 -0
  146. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/Dockerfile +0 -0
  147. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/Dockerfile.blueapi +0 -0
  148. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/Dockerfile.hyperion +0 -0
  149. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/LICENSE +0 -0
  150. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/README.rst +0 -0
  151. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/catalog-info.yaml +0 -0
  152. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/codecov.yml +0 -0
  153. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/conftest.py +0 -0
  154. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/_api.rst +0 -0
  155. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/_templates/custom-module-template.rst +0 -0
  156. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/conf.py +0 -0
  157. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/code-map/grid_detect_then_xray_centre.drawio.png +0 -0
  158. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/code-map/grid_detect_xrc.rst +0 -0
  159. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/code-map/index.rst +0 -0
  160. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/explanations/callback_and_run_logic.rst +0 -0
  161. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/explanations/containerised_mx_bluesky.rst +0 -0
  162. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/explanations/decisions/0001-record-architecture-decisions.rst +0 -0
  163. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/explanations/decisions/0002-repository-structure.rst +0 -0
  164. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/explanations/decisions/0003-python-version-support.rst +0 -0
  165. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/explanations/decisions.rst +0 -0
  166. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/how-to/contribute.rst +0 -0
  167. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/how-to/create-a-release.rst +0 -0
  168. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/how-to/dev-ops/build-docs.rst +0 -0
  169. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/how-to/dev-ops/dev-ops.rst +0 -0
  170. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/how-to/dev-ops/lint.rst +0 -0
  171. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/how-to/dev-ops/update-tools.rst +0 -0
  172. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/how-to/get-started.rst +0 -0
  173. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/index.rst +0 -0
  174. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/reference/standards.rst +0 -0
  175. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/general/tutorials/profile-tests.rst +0 -0
  176. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/hyperion/deploying-hyperion.rst +0 -0
  177. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/hyperion/how-to/update-panda-ioc.rst +0 -0
  178. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/hyperion/index.rst +1 -1
  179. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/hyperion/reference/coordinate-systems.puml +0 -0
  180. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/hyperion/reference/coordinate-systems.rst +0 -0
  181. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/hyperion/reference/gridscan.puml +0 -0
  182. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/hyperion/reference/param-hierarchy.rst +0 -0
  183. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/hyperion/system-tests.rst +0 -0
  184. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/index.rst +0 -0
  185. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/murko-integration/index.rst +0 -0
  186. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/serial-crystallography-on-i24/explanations/decisions/0001-record-architecture-decisions.rst +0 -0
  187. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/serial-crystallography-on-i24/explanations/decisions.rst +0 -0
  188. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/serial-crystallography-on-i24/how-to/environment-setup.rst +0 -0
  189. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/serial-crystallography-on-i24/index.rst +0 -0
  190. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/developer/serial-crystallography-on-i24/project-planning/roadmap.rst +0 -0
  191. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/images/176701633-b93bba62-b2e7-4740-a863-c6b388beb14f.png +0 -0
  192. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/images/207297611-f67dfc25-a3a5-4ade-a1e7-28b54a136fa6.png +0 -0
  193. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/images/dls-favicon.ico +0 -0
  194. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/images/dls-logo.svg +0 -0
  195. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/images/motor coordinate systems.odg +0 -0
  196. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/images/motor-coords-omega-0.svg +0 -0
  197. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/images/motor-coords-omega-alpha.svg +0 -0
  198. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/index.rst +0 -0
  199. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/user/hyperion/logging.rst +0 -0
  200. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/docs/user/hyperion/pvs.rst +0 -0
  201. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/helm/hyperion/Chart.yaml +0 -0
  202. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/helm/hyperion/templates/deployment.yaml +0 -0
  203. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/helm/hyperion/templates/ingress.yaml +0 -0
  204. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/helm/hyperion/templates/service.yaml +0 -0
  205. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/helm/hyperion/templates/zocalo-config.yaml +0 -0
  206. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/helm/hyperion/values.yaml +0 -0
  207. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/helm/mx-bluesky-blueapi/Chart.yaml +0 -0
  208. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/helm/mx-bluesky-blueapi/templates/zocalo-config.yaml +0 -0
  209. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/helm/mx-bluesky-blueapi/values.yaml +0 -0
  210. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/helm/redis-to-murko/Chart.yaml +0 -0
  211. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/helm/redis-to-murko/templates/deployment.yaml +0 -0
  212. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/helm/redis-to-murko/values.yaml +0 -0
  213. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/pull_request_template.md +0 -0
  214. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/run_hyperion_in_podman.sh +0 -0
  215. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/setup.cfg +0 -0
  216. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/__init__.py +0 -0
  217. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/__main__.py +0 -0
  218. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/__init__.py +0 -0
  219. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/aithre_lasershaping/check_goniometer_performance.py +0 -0
  220. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/aithre_lasershaping/goniometer_controls.py +0 -0
  221. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i04/callbacks/murko_callback.py +0 -0
  222. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i04/experiment_plans/__init__.py +0 -0
  223. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i23/__init__.py +0 -0
  224. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i23/serial.py +0 -0
  225. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/__init__.py +0 -0
  226. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/__init__.py +0 -0
  227. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/microdrop_alignment.edl +0 -0
  228. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/extruder/__init__.py +0 -0
  229. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/microdrop_alignment.edl +0 -0
  230. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/s1l.png +0 -0
  231. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/s2l.png +0 -0
  232. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/__init__.py +0 -0
  233. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/ft_utils.py +0 -0
  234. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_StartUp_py3v1.py +0 -0
  235. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/log.py +0 -0
  236. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/parameters/__init__.py +0 -0
  237. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/cs/motor_direction.txt +0 -0
  238. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/pvar_files/minichip-oxford.pvar +0 -0
  239. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/pvar_files/oxford.pvar +0 -0
  240. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/run_serial.py +0 -0
  241. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/run_ssx.sh +0 -0
  242. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/ca.py +0 -0
  243. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/start_blueapi.sh +0 -0
  244. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/beamlines/i24/serial/web_gui_plans/__init__.py +0 -0
  245. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/__init__.py +0 -0
  246. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/device_setup_plans/position_detector.py +0 -0
  247. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/device_setup_plans/robot_load_unload.py +0 -0
  248. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/device_setup_plans/setup_oav.py +0 -0
  249. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/device_setup_plans/setup_panda.py +0 -0
  250. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/device_setup_plans/utils.py +0 -0
  251. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/device_setup_plans/xbpm_feedback.py +0 -0
  252. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/experiment_plans/__init__.py +0 -0
  253. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/experiment_plans/change_aperture_then_move_plan.py +0 -0
  254. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/experiment_plans/common_flyscan_xray_centre_plan.py +0 -0
  255. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/experiment_plans/inner_plans/__init__ .py +0 -0
  256. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/experiment_plans/inner_plans/do_fgs.py +0 -0
  257. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/experiment_plans/inner_plans/read_hardware.py +0 -0
  258. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/experiment_plans/inner_plans/write_sample_status.py +0 -0
  259. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/experiment_plans/oav_grid_detection_plan.py +0 -0
  260. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/__init__.py +0 -0
  261. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/alerting/__init__.py +0 -0
  262. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/alerting/_service.py +0 -0
  263. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/alerting/log_based_service.py +0 -0
  264. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/callbacks/common/__init__.py +0 -0
  265. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/callbacks/common/abstract_event.py +0 -0
  266. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/callbacks/common/ispyb_mapping.py +0 -0
  267. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/callbacks/common/log_uid_tag_callback.py +0 -0
  268. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/callbacks/common/logging_callback.py +0 -0
  269. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/callbacks/common/zocalo_callback.py +0 -0
  270. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/callbacks/sample_handling/__init__.py +0 -0
  271. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/__init__.py +0 -0
  272. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/ispyb_mapping.py +0 -0
  273. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/config_server.py +0 -0
  274. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/ispyb/__init__.py +0 -0
  275. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/ispyb/data_model.py +0 -0
  276. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/ispyb/exp_eye_store.py +0 -0
  277. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/ispyb/ispyb_store.py +0 -0
  278. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/ispyb/ispyb_utils.py +0 -0
  279. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/nexus/__init__.py +0 -0
  280. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/nexus/nexus_utils.py +0 -0
  281. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/external_interaction/nexus/write_nexus.py +0 -0
  282. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/parameters/__init__.py +0 -0
  283. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/parameters/components.py +0 -0
  284. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/parameters/device_composites.py +0 -0
  285. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/parameters/gridscan.py +0 -0
  286. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/preprocessors/__init__.py +0 -0
  287. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/preprocessors/preprocessors.py +0 -0
  288. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/protocols/__init__.py +0 -0
  289. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/protocols/protocols.py +0 -0
  290. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/utils/__init__.py +0 -0
  291. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/utils/context.py +0 -0
  292. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/utils/exceptions.py +0 -0
  293. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/utils/log.py +0 -0
  294. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/utils/tracing.py +0 -0
  295. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/utils/utils.py +0 -0
  296. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/common/xrc_result.py +0 -0
  297. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/definitions.py +0 -0
  298. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/__init__.py +0 -0
  299. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/__main__.py +0 -0
  300. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/device_setup_plans/__init__.py +0 -0
  301. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/device_setup_plans/dcm_pitch_roll_mirror_adjuster.py +0 -0
  302. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/device_setup_plans/setup_panda.py +0 -0
  303. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/device_setup_plans/setup_zebra.py +0 -0
  304. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/device_setup_plans/smargon.py +0 -0
  305. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/device_setup_plans/utils.py +0 -0
  306. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/experiment_plans/__init__.py +0 -0
  307. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/experiment_plans/experiment_registry.py +0 -0
  308. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/experiment_plans/hyperion_flyscan_xray_centre_plan.py +0 -0
  309. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/experiment_plans/hyperion_grid_detect_then_xray_centre_plan.py +0 -0
  310. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/experiment_plans/optimise_attenuation_plan.py +0 -0
  311. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/experiment_plans/pin_centre_then_xray_centre_plan.py +0 -0
  312. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/experiment_plans/pin_tip_centring_plan.py +0 -0
  313. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/experiment_plans/robot_load_then_centre_plan.py +0 -0
  314. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/experiment_plans/rotation_scan_plan.py +0 -0
  315. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/experiment_plans/set_energy_plan.py +0 -0
  316. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/external_interaction/__init__.py +0 -0
  317. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/external_interaction/agamemnon.py +0 -0
  318. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/external_interaction/alerting/__init__.py +0 -0
  319. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/external_interaction/callbacks/__init__.py +0 -0
  320. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/external_interaction/callbacks/robot_actions/ispyb_callback.py +0 -0
  321. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/__init__.py +0 -0
  322. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_mapping.py +0 -0
  323. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/nexus_callback.py +0 -0
  324. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/external_interaction/callbacks/snapshot_callback.py +0 -0
  325. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/external_interaction/config_server.py +0 -0
  326. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/parameters/__init__.py +0 -0
  327. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/parameters/cli.py +0 -0
  328. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/parameters/components.py +0 -0
  329. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/parameters/constants.py +0 -0
  330. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/parameters/device_composites.py +0 -0
  331. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/parameters/gridscan.py +0 -0
  332. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/parameters/load_centre_collect.py +0 -0
  333. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/parameters/robot_load.py +0 -0
  334. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/parameters/rotation.py +0 -0
  335. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/plan_runner.py +0 -0
  336. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/resources/panda/panda-gridscan.yaml +0 -0
  337. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/runner.py +0 -0
  338. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/utils/__init__.py +0 -0
  339. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/hyperion/utils/context.py +0 -0
  340. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/jupyter_example.ipynb +0 -0
  341. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/phase1_zebra/__init__.py +0 -0
  342. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/phase1_zebra/device_setup_plans/__init__.py +0 -0
  343. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky/phase1_zebra/device_setup_plans/setup_zebra.py +0 -0
  344. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky.egg-info/dependency_links.txt +0 -0
  345. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky.egg-info/entry_points.txt +0 -0
  346. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/src/mx_bluesky.egg-info/top_level.txt +0 -0
  347. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/start_jupyter.sh +0 -0
  348. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/__init__.py +0 -0
  349. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/__init__.py +0 -0
  350. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/common/device_setup_plans/test_robot_load_unload.py +0 -0
  351. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/conftest.py +0 -0
  352. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/hyperion/__init__.py +0 -0
  353. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/hyperion/external_interaction/__init__.py +0 -0
  354. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/hyperion/external_interaction/alerting/__init__.py +0 -0
  355. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/hyperion/external_interaction/callbacks/__init__.py +0 -0
  356. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/hyperion/external_interaction/callbacks/test_external_callbacks.py +0 -0
  357. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/hyperion/external_interaction/test_agamemnon.py +0 -0
  358. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/hyperion/external_interaction/test_baton_handler_soak.py +0 -0
  359. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/hyperion/external_interaction/test_exp_eye_dev.py +0 -0
  360. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/hyperion/external_interaction/test_ispyb_dev_connection.py +0 -0
  361. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/hyperion/external_interaction/test_nexgen.py +0 -0
  362. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/system_tests/hyperion/external_interaction/test_zocalo_system.py +0 -0
  363. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/agamemnon/example_collect_multipin.json +0 -0
  364. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/agamemnon/example_native.json +0 -0
  365. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/agamemnon/example_wait.json +0 -0
  366. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/ispyb-test-credentials.cfg +0 -0
  367. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/nexus_files/README.md +0 -0
  368. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/nexus_files/fake_data.h5 +0 -0
  369. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/nexus_files/rotation/ins_8_5.nxs +0 -0
  370. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/nexus_files/rotation/ins_8_5_expected_output.txt +0 -0
  371. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/nexus_files/rotation/ins_8_5_meta.h5.gz +0 -0
  372. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5.nxs +0 -0
  373. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5_expected_output.txt +0 -0
  374. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5_meta.h5.gz +0 -0
  375. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/parameter_json_files/example_load_centre_collect_params.json +0 -0
  376. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/parameter_json_files/good_test_grid_with_edge_detect_parameters.json +0 -0
  377. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/parameter_json_files/good_test_load_centre_collect_params.json +0 -0
  378. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/parameter_json_files/good_test_load_centre_collect_params_multi_rotation.json +0 -0
  379. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/parameter_json_files/good_test_multi_rotation_scan_parameters.json +0 -0
  380. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/parameter_json_files/good_test_one_multi_rotation_scan_parameters.json +0 -0
  381. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/parameter_json_files/good_test_one_multi_rotation_scan_parameters_nomove.json +0 -0
  382. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/parameter_json_files/good_test_parameters.json +0 -0
  383. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/parameter_json_files/good_test_pin_centre_then_xray_centre_parameters.json +0 -0
  384. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/parameter_json_files/good_test_robot_load_and_centre_params.json +0 -0
  385. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/parameter_json_files/good_test_robot_load_params.json +0 -0
  386. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/parameter_json_files/good_test_rotation_scan_parameters.json +0 -0
  387. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/parameter_json_files/ispyb_gridscan_system_test_parameters.json +0 -0
  388. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/parameter_json_files/load_centre_collect_params_top_n_by_max_count.json +0 -0
  389. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/parameter_json_files/test_gridscan_param_defaults.json +0 -0
  390. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/parameter_json_files/test_oav_snapshot_params.json +0 -0
  391. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/rabbitmq-test-credentials.yml +0 -0
  392. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/scratch/README +0 -0
  393. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_OAVCentring.json +0 -0
  394. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_beamline_dcm_pitch_converter.txt +0 -0
  395. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_beamline_dcm_roll_converter.txt +0 -0
  396. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_beamline_parameters.txt +0 -0
  397. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_beamline_vfm_lat_converter.txt +0 -0
  398. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_config.cfg +0 -0
  399. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_daq_configuration/OAVCentring_hyperion.json +0 -0
  400. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_daq_configuration/display.configuration +0 -0
  401. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_daq_configuration/domain/beamlineParameters +0 -0
  402. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_daq_configuration/lookup/BeamLineEnergy_DCM_Pitch_converter.txt +0 -0
  403. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_daq_configuration/lookup/BeamLineEnergy_DCM_Roll_converter.txt +0 -0
  404. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_daq_configuration/lookup/BeamLine_Undulator_toGap.txt +0 -0
  405. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_daq_configuration/lookup/test_det_dist_converter.txt +0 -0
  406. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_det_dist_converter.txt +0 -0
  407. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_display.configuration +0 -0
  408. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_domain_properties +0 -0
  409. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_domain_properties_with_no_gpu +0 -0
  410. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_domain_properties_with_panda +0 -0
  411. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_images/generate_snapshot_input.png +0 -0
  412. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_images/generate_snapshot_output.png +0 -0
  413. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_images/ins_15_33_0.png +0 -0
  414. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_images/ins_15_33_90.png +0 -0
  415. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_images/ins_15_33_expected_0.png +0 -0
  416. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_images/ins_15_33_expected_270.png +0 -0
  417. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_images/thau_1_91_0.png +0 -0
  418. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_images/thau_1_91_90.png +0 -0
  419. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_images/thau_1_91_expected_0.png +0 -0
  420. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_images/thau_1_91_expected_270.png +0 -0
  421. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_jCameraManZoomLevels.xml +0 -0
  422. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_lookup_table.txt +0 -0
  423. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/test_mirror_focus.json +0 -0
  424. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/test_data/zocalo-test-configuration.yaml +0 -0
  425. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/__init__.py +0 -0
  426. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/__init__.py +0 -0
  427. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/aithre_lasershaping/test_check_goniometer_performance.py +0 -0
  428. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i04/callbacks/test_murko_callback.py +0 -0
  429. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i04/test_i04_grid_detect_then_xray_centre_plan.py +0 -0
  430. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i04/test_redis_to_murko_forwarder.py +0 -0
  431. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/__init__.py +0 -0
  432. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/__init__.py +0 -0
  433. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/extruder/__init__.py +0 -0
  434. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/fixed_target/__init__.py +0 -0
  435. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/fixed_target/conftest.py +0 -0
  436. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_chip_startup.py +0 -0
  437. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/parameters/test_parameter_model.py +0 -0
  438. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/parameters/test_utils.py +0 -0
  439. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/setup_beamline/__init__.py +0 -0
  440. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/test_log.py +0 -0
  441. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/test_run_serial.py +0 -0
  442. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/beamlines/i24/serial/web_gui/__init__.py +0 -0
  443. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/__init__.py +0 -0
  444. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/device_setup_plans/test_robot_load_unload.py +0 -0
  445. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/device_setup_plans/test_setup_panda.py +0 -0
  446. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/device_setup_plans/test_xbpm_feedback.py +0 -0
  447. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/experiment_plans/__init__.py +0 -0
  448. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/experiment_plans/inner_plans/__init__.py +0 -0
  449. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/experiment_plans/inner_plans/test_do_fgs.py +0 -0
  450. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/experiment_plans/inner_plans/test_read_hardware.py +0 -0
  451. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/experiment_plans/inner_plans/test_write_sample_status.py +0 -0
  452. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/experiment_plans/test_change_aperture_then_move_plan.py +0 -0
  453. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/experiment_plans/test_common_flyscan_xray_centre_plan.py +0 -0
  454. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/experiment_plans/test_oav_snapshot_plan.py +0 -0
  455. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/__init__.py +0 -0
  456. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/alerting/__init__.py +0 -0
  457. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/alerting/alerting/__init__.py +0 -0
  458. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/alerting/alerting/test_alerting.py +0 -0
  459. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/callbacks/__init__.py +0 -0
  460. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/callbacks/common/__init__.py +0 -0
  461. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/callbacks/common/test_abstract_event.py +0 -0
  462. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/callbacks/common/test_snapshot_callback.py +0 -0
  463. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/callbacks/ispyb/__init__.py +0 -0
  464. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/callbacks/ispyb/conftest.py +0 -0
  465. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_expeye_interaction.py +0 -0
  466. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_gridscan_ispyb_store_3d.py +0 -0
  467. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_rotation_ispyb_store.py +0 -0
  468. {mx_bluesky-1.5.3/tests/unit_tests/hyperion → mx_bluesky-1.5.5/tests/unit_tests/common}/external_interaction/callbacks/sample_handling/test_sample_handling_callback.py +0 -0
  469. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/callbacks/test_plan_reactive_callback.py +0 -0
  470. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/callbacks/test_zocalo_handler.py +0 -0
  471. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/conftest.py +0 -0
  472. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/nexus/test_nexus_utils.py +0 -0
  473. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/test_config_server.py +0 -0
  474. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/test_ispyb_utils.py +0 -0
  475. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/xray_centre/__init__.py +0 -0
  476. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_handler.py +0 -0
  477. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_mapping.py +0 -0
  478. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/external_interaction/xray_centre/test_nexus_handler.py +0 -0
  479. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/parameters/__init__.py +0 -0
  480. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/parameters/test_components.py +0 -0
  481. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/parameters/test_constants.py +0 -0
  482. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/preprocessors/__init__.py +0 -0
  483. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/preprocessors/test_preprocessors.py +0 -0
  484. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/utils/__init__.py +0 -0
  485. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/common/utils/test_log.py +0 -0
  486. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/conftest.py +0 -0
  487. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/__init__.py +0 -0
  488. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/conftest.py +0 -0
  489. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/device_setup_plans/__init__.py +0 -0
  490. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/device_setup_plans/test_dcm_pitch_roll_mirror_adjuster.py +0 -0
  491. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/device_setup_plans/test_manipulate_sample.py +0 -0
  492. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/device_setup_plans/test_setup_oav.py +0 -0
  493. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/device_setup_plans/test_setup_panda.py +0 -0
  494. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/device_setup_plans/test_utils.py +0 -0
  495. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/device_setup_plans/test_zebra_setup.py +0 -0
  496. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/experiment_plans/__init__.py +0 -0
  497. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/experiment_plans/common/test_flyscan_result.py +0 -0
  498. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/experiment_plans/conftest.py +0 -0
  499. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/experiment_plans/test_experiment_registry.py +0 -0
  500. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/experiment_plans/test_hyperion_flyscan_xray_centre_plan.py +0 -0
  501. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/experiment_plans/test_hyperion_grid_detect_then_xray_centre_plan.py +0 -0
  502. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/experiment_plans/test_load_centre_collect_full_plan.py +0 -0
  503. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/experiment_plans/test_optimise_attenuation_plan.py +0 -0
  504. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/experiment_plans/test_robot_load_then_centre.py +0 -0
  505. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/experiment_plans/test_set_energy_plan.py +0 -0
  506. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/external_interaction/__init__.py +0 -0
  507. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/external_interaction/callbacks/__init__.py +0 -0
  508. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/external_interaction/callbacks/conftest.py +0 -0
  509. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/external_interaction/callbacks/robot_load/test_robot_load_ispyb_callback.py +0 -0
  510. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/external_interaction/callbacks/rotation/__init__.py +0 -0
  511. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/external_interaction/callbacks/rotation/test_ispyb_callback.py +0 -0
  512. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/external_interaction/callbacks/test_rotation_callbacks.py +0 -0
  513. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/external_interaction/conftest.py +0 -0
  514. {mx_bluesky-1.5.3/tests/unit_tests/hyperion/external_interaction/callbacks/sample_handling → mx_bluesky-1.5.5/tests/unit_tests/hyperion/external_interaction/nexus}/__init__.py +0 -0
  515. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/external_interaction/nexus/test_compare_nexus_to_gda_exhaustively.py +0 -0
  516. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/external_interaction/nexus/test_write_nexus.py +0 -0
  517. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/external_interaction/test_agamemnon.py +0 -0
  518. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000001.h5 +0 -0
  519. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000002.h5 +0 -0
  520. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000003.h5 +0 -0
  521. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/external_interaction/test_write_rotation_nexus.py +0 -0
  522. {mx_bluesky-1.5.3/tests/unit_tests/hyperion/external_interaction/nexus → mx_bluesky-1.5.5/tests/unit_tests/hyperion/parameters}/__init__.py +0 -0
  523. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/parameters/test_parameter_model.py +0 -0
  524. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/test_exceptions.py +0 -0
  525. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/test_main_system.py +0 -0
  526. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/test_runner.py +0 -0
  527. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/test_utils.py +0 -0
  528. {mx_bluesky-1.5.3/tests/unit_tests/hyperion/parameters → mx_bluesky-1.5.5/tests/unit_tests/hyperion/utils}/__init__.py +0 -0
  529. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/utils/test_callback_sim.py +0 -0
  530. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/hyperion/utils/test_context.py +0 -0
  531. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/t01.py +0 -0
  532. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/tests/unit_tests/test_cli.py +0 -0
  533. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/beam_off_trickery.sh +0 -0
  534. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/build_docker_image.sh +0 -0
  535. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/build_imginfo.sh +0 -0
  536. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/deploy/create_venv.py +0 -0
  537. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/deploy/deploy_edm_for_ssx.sh +0 -0
  538. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/deploy/deploy_mx_bluesky.py +0 -0
  539. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/deploy/deploy_mx_bluesky_app_to_k8s.sh +0 -0
  540. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/deploy/test_deploy.py +0 -0
  541. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/dev_jaeger_container.sh +0 -0
  542. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/dls_dev_env.sh +0 -0
  543. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/docker/entrypoint.sh +0 -0
  544. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/docker/healthcheck.sh +0 -0
  545. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/docker/i03-compose.yml +0 -0
  546. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/generate_plantuml.py +0 -0
  547. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/graylog/Dockerfile +0 -0
  548. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/graylog/tcp_input.json +0 -0
  549. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/procserv_ioc_start.sh +0 -0
  550. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/run_imginfo.sh +0 -0
  551. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/setup_graylog.sh +0 -0
  552. {mx_bluesky-1.5.3 → mx_bluesky-1.5.5}/utility_scripts/strip_metafile.py +0 -0
@@ -6,6 +6,13 @@ jobs:
6
6
  runs-on: ubuntu-latest
7
7
 
8
8
  steps:
9
+
10
+ - name: checkout repo
11
+ uses: actions/checkout@v4
12
+ with:
13
+ # Need this to get version number from last tag
14
+ fetch-depth: 0
15
+
9
16
  - name: Install Helm
10
17
  uses: Azure/setup-helm@v4.3.0
11
18
  id: install
@@ -53,7 +53,7 @@ jobs:
53
53
  - name: Run tests
54
54
  # Longer timeout for CI due to likelihood of cold caches,
55
55
  # cloud infra hw contention etc.
56
- run: tox -e tests -- -m "not dlstbx" --timeout=2
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
59
  uses: codecov/codecov-action@v4
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mx-bluesky
3
- Version: 1.5.3
3
+ Version: 1.5.5
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
@@ -241,7 +241,7 @@ Requires-Dist: blueapi>=0.15.0
241
241
  Requires-Dist: ophyd>=1.10.5
242
242
  Requires-Dist: ophyd-async>=0.10.0a2
243
243
  Requires-Dist: bluesky>=1.13.1
244
- Requires-Dist: dls-dodal>=1.55.0
244
+ Requires-Dist: dls-dodal==1.57.0
245
245
  Provides-Extra: dev
246
246
  Requires-Dist: black; extra == "dev"
247
247
  Requires-Dist: build; extra == "dev"
@@ -38,7 +38,7 @@ For building and deploying a Docker image please see :doc:`../../hyperion/deploy
38
38
 
39
39
  .. note::
40
40
 
41
- On i03 the installation will succeed with error messages due to RedHat7 versions of a dependency being unavailable.
41
+ On i03 the installation will succeed with error messages due to RedHat7 versions of dependencies being unavailable.
42
42
  This results in the installation being incomplete, thus requiring the following post-installation steps:
43
43
 
44
44
  First, on a RedHat8 workstation, run
@@ -47,6 +47,7 @@ For building and deploying a Docker image please see :doc:`../../hyperion/deploy
47
47
 
48
48
  . ./.venv/bin/activate
49
49
  pip install confluent-kafka
50
+ pip install contourpy
50
51
 
51
52
  Then, on the control machine, run
52
53
 
@@ -6,7 +6,7 @@ like tests`_, and run them to check for errors. You can run it with::
6
6
 
7
7
  $ tox -e tests
8
8
 
9
- It will also report coverage to the commandline and to ``cov.xml``.
9
+ When the tests are run in GitHub CI it will also report coverage to ``codecov.io``.
10
10
 
11
11
  .. _pytest: https://pytest.org/
12
12
  .. _look like tests: https://docs.pytest.org/explanation/goodpractices.html#test-discovery
@@ -1,17 +1,18 @@
1
- # hyperion
1
+ # Hyperion Overview
2
2
 
3
3
  Repository for the Hyperion project to implement Unattended Data Collections on the Diamond MX beamlines using the [BlueSky](https://nsls-ii.github.io/bluesky/) / Ophyd framework from BNL.
4
4
 
5
- Currently the software is able to:
5
+ The software is able to:
6
6
 
7
+ - Fetch and decode UDC instructions from Agamemnon
8
+ - Mount/unmount samples
9
+ - Change energy of the beamline
7
10
  - Centre a sample, first using an optical camera, then using an xray grid scan. This centring is done at two orthogonal angles so that the sample is centred in 3D.
8
11
  - Perform a rotation scan to take diffraction data of the sample
9
12
 
10
13
  Left to do is:
11
14
 
12
- - Mount/unmount samples
13
15
  - Set up the beamline to be in a standard state for collection
14
- - Change energy of the beamline
15
16
 
16
17
  # Development Installation
17
18
 
@@ -41,8 +42,6 @@ If in a dev environment Hyperion will log to a local graylog instance instead an
41
42
 
42
43
  This uses the generic defaults for a local graylog instance. It can be accessed on `localhost:9000` where the username and password for the graylog portal are both admin.
43
44
 
44
- The hyperion python module can also be run directly without the startup script. It takes the same command line options, including:
45
-
46
45
  ## Testing
47
46
 
48
47
  Unit tests can be run with `pytest --random-order`. To see log output from tests you can turn on logging with the `--logging` command line option and then use the `-s` command line option to print logs into the console. So to run the unit tests such that all logs are at printed to the terminal, you can use `python -m pytest --random-order --logging -s`. Note that this will likely overrun your terminal buffer, so you can narrow the selection of tests with the `-k "<test name pattern>"` option.
@@ -53,6 +52,11 @@ To fake interaction and processing with Zocalo, you can run `fake_zocalo/dls_sta
53
52
 
54
53
  Tracing information (the time taken to complete different steps of experiments) is collected by an [OpenTelemetry](https://opentelemetry.io/) tracer, and currently we export this information to a local Jaeger monitor (if available). To see the tracing output, run the [Jaeger all-in-one container](https://www.jaegertracing.io/docs/1.6/getting-started/), and go to the web interface at http://localhost:16686.
55
54
 
55
+
56
+ # REST API (GDA Mode)
57
+
58
+ When running in GDA mode, Hyperion offers the following API
59
+
56
60
  ## Starting a scan
57
61
 
58
62
  To start a scan you can do the following:
@@ -86,3 +90,7 @@ To make the app write the `DEBUG` level logs stored in the `CircularMemoryHandle
86
90
  curl -X PUT http://127.0.0.1:5005/flush_debug_log
87
91
 
88
92
  ```
93
+
94
+ # REST API (UDC Mode)
95
+
96
+ In UDC Mode, the only endpoint available is the `/status` endpoint.
@@ -15,4 +15,6 @@ It will then trigger the ``OAVToRedisForwarder`` device in ``dodal`` that will s
15
15
 
16
16
  The image streaming must be done with an ophyd device as there is too much data for it all to be emitted in bluesky documents.
17
17
 
18
- When the data is entered into redis it will publish a message to the redis ``murko`` channel. This will get picked up by the `socket_handler <https://github.com/DiamondLightSource/mx_auto_mjpeg_capture/tree/main/socket_handler>`_, which will forward the data to murko. Currently, during testing the socket_handler is just manually run on a workstation, `#146 <https://github.com/DiamondLightSource/mx-bluesky/issues/146>`_ should fix this.
18
+ When the data is entered into redis it will publish a message to the redis ``murko`` channel. This will get picked up by the `redis_to_murko_forwarder <https://github.com/DiamondLightSource/mx-bluesky/blob/main/src/mx_bluesky/beamlines/i04/redis_to_murko_forwarder.py>`_, which will forward the data to murko.
19
+
20
+ Murko will then enter the results back into redis where they are retrieved by the `MurkoResultsDevice <https://github.com/DiamondLightSource/dodal/blob/main/src/dodal/devices/i04/murko_results.py>`_ in ``dodal``. This device uses these results to calculate where the sample should be moved to and carry out these movements.
@@ -55,7 +55,7 @@ in a couple of different ways.
55
55
 
56
56
  - The ``hmz`` strings are homing commands which will reset the
57
57
  encoders counts to 0 for the axis. All three motors are homed by
58
- sending the string: ``#1hmz#2hmz#3hmz``. In the plans this is done
58
+ sending the string: ``#5hmz#6hmz#7hmz``. In the plans this is done
59
59
  by triggering the home move:
60
60
 
61
61
  .. code:: python
@@ -74,7 +74,7 @@ in a couple of different ways.
74
74
 
75
75
 
76
76
  2. The stage motors can also be moved directly through the existing PVs
77
- ``ME14E-MO-CHIP-01:{X,Y,Z}``, for example:
77
+ ``BL24I-EA-CHIP-01:{X,Y,Z}``, for example:
78
78
 
79
79
  .. code:: python
80
80
 
@@ -24,7 +24,7 @@ detector name from the list and clicking the ``Move Stage`` button,
24
24
  which will move the detector stage to the correct height and update the
25
25
  relative PVs.
26
26
 
27
- Detectors available for serial: Pilatus 6M or Eiger CdTe 9M.
27
+ Detectors available for serial: Eiger CdTe 9M.
28
28
 
29
29
  Extruder (Serial Jet)
30
30
  =====================
@@ -58,9 +58,8 @@ in the ``Pump Probe`` panel.
58
58
 
59
59
  **WARNING** This setting requires a
60
60
  hardware change, as there are only 4 outputs on the zebra and they are
61
- all in use. When using the Eiger the Pilatus trigger cable should be
62
- used to trigger the light source. When using the pilatus the eiger
63
- trigger cable should be used.
61
+ all in use. When using the Eiger the ex-Pilatus trigger cable should be
62
+ used to trigger the light source.
64
63
 
65
64
  III - **Run collection**
66
65
 
@@ -1,11 +1,19 @@
1
1
  Alerts
2
2
  ------
3
3
 
4
- Hyperion can be configured to raise in order to notify staff of issues with data collections or with Hyperion
4
+ Hyperion can be configured to raise alerts in order to notify staff of issues with data collections or with Hyperion
5
5
  itself.
6
6
 
7
7
  The currently supported alerting backend uses graylog alerting to send email alert notifications.
8
8
 
9
+ The currently supported events that will generate alerts are:
10
+
11
+ - On encountering a beamline error that requires user intervention.
12
+ - When Hyperion starts UDC collection.
13
+ - When Hyperion finishes UDC collection (there are no more Agamemnon instructions).
14
+ - When Hyperion releases the baton.
15
+ - When Hyperion moves on to a new container (puck).
16
+
9
17
  Graylog Alert Configuration
10
18
  ===========================
11
19
 
@@ -54,6 +62,12 @@ expand to the event timestamp.
54
62
 
55
63
  All the fields that are available in the event are available under the ``event.fields`` object, e.g. ``${event.fields.alert_summary}``
56
64
 
65
+ The email subject and body use the JMTE templating engine, to generate more complex templates and for more
66
+ information see the `JMTE Project Documentation`_
67
+
68
+
69
+ .. _JMTE Project Documentation: https://github.com/DJCordhose/jmte
70
+
57
71
  Event Definitions
58
72
  -----------------
59
73
 
@@ -22,4 +22,4 @@ Configuration of several properties that control Hyperion execution are availabl
22
22
  "gda.mx.hyperion.use_panda_for_gridscans", "boolean", "If true then the Panda is used instead of the Zebra for XRC gridscans"
23
23
  "gda.mx.hyperion.xrc.use_gpu_results", "boolean", "If true, then zocalo gridscan processing uses the GPU results"
24
24
  "gda.mx.hyperion.xrc.use_roi_mode", "boolean", "If true then ROI mode is used."
25
- "gda.mx.udc.hyperion.enable", "boolean", "Enables baton passing to Hyperion."
25
+ "gda.mx.udc.hyperion.enable", "boolean", "Enables Hyperion UDC mode."
@@ -10,11 +10,13 @@ What is Hyperion?
10
10
  Hyperion is a service for running high throughput unattended data collection (UDC). It does not provide a user
11
11
  interface, instead instructions are pulled from Agamemnon which is controlled by information obtained in ISPyB.
12
12
 
13
- Running Hyperion
14
- ----------------
13
+ The software supports two modes of operation:
15
14
 
16
- When installed, Hyperion should be running automatically. If it is not running, it can be (re)started from GDA by
17
- invoking ``hyperion_restart()`` from the Jython console.
15
+ * UDC mode (experimental) where Hyperion automatically fetches instructions from Agamemnon.
16
+ * GDA mode (where GDA fetches and decodes the Agamemnon
17
+ instructions). GDA mode will be removed in a future release.
18
+
19
+ The mode of operation is determined by configuration using the ``gda.mx.udc.hyperion.enable`` parameter
18
20
 
19
21
 
20
22
  .. toctree::
@@ -0,0 +1,13 @@
1
+ Running Hyperion
2
+ ----------------
3
+
4
+ When installed, Hyperion should be running automatically.
5
+
6
+ Restarting Hyperion
7
+ -------------------
8
+
9
+ If Hyperion is running as a standalone server installation, it can be (re)started from GDA by
10
+ invoking ``hyperion_restart()`` from the Jython console.
11
+
12
+ If Hyperion is running in a Kubernetes container, then it can be restarted by scaling the deployment or
13
+ deleting the pod (which will cause a new instance to be created)
@@ -48,7 +48,7 @@ dependencies = [
48
48
  "ophyd >= 1.10.5",
49
49
  "ophyd-async >= 0.10.0a2",
50
50
  "bluesky >= 1.13.1",
51
- "dls-dodal >= 1.55.0",
51
+ "dls-dodal == 1.57.0",
52
52
  ]
53
53
 
54
54
 
@@ -144,6 +144,8 @@ filterwarnings = [
144
144
  "ignore:.*`Field` should not be instantiated.*:marshmallow.warnings.ChangedInMarshmallow4Warning",
145
145
  #Remove when we drop python 3.11
146
146
  "ignore:.*__contains__ will no longer raise TypeError.*:DeprecationWarning",
147
+ # epicscorelibs requires setuptools >= 70.1
148
+ "ignore:.*The 'wheel' package is no longer the canonical location of the 'bdist_wheel' command.*:DeprecationWarning",
147
149
  ]
148
150
  # Doctest python code in docs, python code in src docstrings, test functions in tests
149
151
  testpaths = "docs src tests/unit_tests"
@@ -177,7 +179,7 @@ allowlist_externals =
177
179
  commands =
178
180
  pre-commit: pre-commit run --all-files --show-diff-on-failure {posargs}
179
181
  type-checking: pyright src tests {posargs}
180
- tests: pytest --cov=mx_bluesky --cov-report term --cov-report xml:cov.xml {posargs}
182
+ tests: pytest {posargs}
181
183
  docs: sphinx-{posargs:build -EW --keep-going} -T docs build/html
182
184
  commands_pre =
183
185
  docs: /usr/bin/bash -c "{toxinidir}/utility_scripts/generate_plantuml.py > \
@@ -5,6 +5,7 @@
5
5
  STOP=0
6
6
  START=1
7
7
  IN_DEV=false
8
+ MODE=gda
8
9
 
9
10
  for option in "$@"; do
10
11
  case $option in
@@ -22,7 +23,9 @@ for option in "$@"; do
22
23
  --dev)
23
24
  IN_DEV=true
24
25
  ;;
25
-
26
+ --udc)
27
+ MODE=udc
28
+ ;;
26
29
  --help|--info|--h)
27
30
  source .venv/bin/activate
28
31
  echo "`basename $0` [options]"
@@ -38,6 +41,7 @@ Options:
38
41
  --skip-startup-connection
39
42
  Do not connect to devices at startup
40
43
  --dev Enable dev mode to run from a local workspace on a development machine.
44
+ --udc Start hyperion in UDC mode instead of taking commands from GDA
41
45
  --help This help
42
46
 
43
47
  By default this script will start an Hyperion server unless the --no-start flag is specified.
@@ -121,7 +125,7 @@ if [[ $START == 1 ]]; then
121
125
  declare -A h_and_cb_args=( ["IN_DEV"]="$IN_DEV" )
122
126
  declare -A h_and_cb_arg_strings=( ["IN_DEV"]="--dev" )
123
127
 
124
- h_commands=()
128
+ h_commands="--mode $MODE"
125
129
  cb_commands=()
126
130
  for i in "${!h_and_cb_args[@]}"
127
131
  do
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '1.5.3'
32
- __version_tuple__ = version_tuple = (1, 5, 3)
31
+ __version__ = version = '1.5.5'
32
+ __version_tuple__ = version_tuple = (1, 5, 5)
33
33
 
34
- __commit_id__ = commit_id = 'gd31a95a33'
34
+ __commit_id__ = commit_id = 'gb6ac6ef7f'
@@ -1,4 +1,5 @@
1
1
  from mx_bluesky.beamlines.aithre_lasershaping.beamline_safe import (
2
+ go_to_zero,
2
3
  set_beamline_safe_on_robot,
3
4
  )
4
5
  from mx_bluesky.beamlines.aithre_lasershaping.check_goniometer_performance import (
@@ -18,4 +19,5 @@ __all__ = [
18
19
  "go_to_furthest_maximum",
19
20
  "rotate_goniometer_relative",
20
21
  "jog_sample",
22
+ "go_to_zero",
21
23
  ]
@@ -34,3 +34,20 @@ def set_beamline_safe_on_robot(
34
34
  else ForceBit.NO.value
35
35
  )
36
36
  yield from bps.abs_set(robot.set_beamline_safe, set_value, wait=True)
37
+
38
+
39
+ def go_to_zero(
40
+ goniometer: Goniometer = inject("goniometer"), group="move_to_zero", wait=True
41
+ ) -> MsgGenerator:
42
+ """
43
+ Rotate the goniometer and set stages to zero in preparation for robot load/unload.
44
+ Pass wait=False to avoid waiting for the move to complete.
45
+ """
46
+ yield from bps.abs_set(goniometer.omega, 0, group=group)
47
+ yield from bps.abs_set(goniometer.x, 0, group=group)
48
+ yield from bps.abs_set(goniometer.y, 0, group=group)
49
+ yield from bps.abs_set(goniometer.z, 0, group=group)
50
+ yield from bps.abs_set(goniometer.sampy, 0, group=group)
51
+ yield from bps.abs_set(goniometer.sampz, 0, group=group)
52
+ if wait:
53
+ yield from bps.wait(group=group)
@@ -1,10 +1,15 @@
1
1
  from mx_bluesky.beamlines.i04.experiment_plans.i04_grid_detect_then_xray_centre_plan import (
2
2
  i04_grid_detect_then_xray_centre,
3
3
  )
4
- from mx_bluesky.beamlines.i04.thawing_plan import thaw, thaw_and_stream_to_redis
4
+ from mx_bluesky.beamlines.i04.thawing_plan import (
5
+ thaw,
6
+ thaw_and_murko_centre,
7
+ thaw_and_stream_to_redis,
8
+ )
5
9
 
6
10
  __all__ = [
7
11
  "thaw",
8
12
  "thaw_and_stream_to_redis",
9
13
  "i04_grid_detect_then_xray_centre",
14
+ "thaw_and_murko_centre",
10
15
  ]
@@ -4,7 +4,6 @@ from functools import partial
4
4
 
5
5
  import bluesky.plan_stubs as bps
6
6
  import bluesky.preprocessors as bpp
7
- from blueapi.core import BlueskyContext
8
7
  from bluesky.utils import MsgGenerator
9
8
  from dodal.common import inject
10
9
  from dodal.devices.aperturescatterguard import ApertureScatterguard
@@ -66,7 +65,6 @@ from mx_bluesky.common.parameters.gridscan import GridCommon, SpecifiedThreeDGri
66
65
  from mx_bluesky.common.preprocessors.preprocessors import (
67
66
  transmission_and_xbpm_feedback_for_collection_decorator,
68
67
  )
69
- from mx_bluesky.common.utils.context import device_composite_from_context
70
68
  from mx_bluesky.common.utils.log import LOGGER
71
69
  from mx_bluesky.phase1_zebra.device_setup_plans.setup_zebra import (
72
70
  setup_zebra_for_gridscan,
@@ -74,12 +72,6 @@ from mx_bluesky.phase1_zebra.device_setup_plans.setup_zebra import (
74
72
  )
75
73
 
76
74
 
77
- def create_devices(
78
- context: BlueskyContext,
79
- ) -> GridDetectThenXRayCentreComposite:
80
- return device_composite_from_context(context, GridDetectThenXRayCentreComposite)
81
-
82
-
83
75
  # See https://github.com/DiamondLightSource/blueapi/issues/506 for using device composites
84
76
  def i04_grid_detect_then_xray_centre(
85
77
  parameters: GridCommon,
@@ -7,6 +7,7 @@ from typing import TypedDict
7
7
  import numpy as np
8
8
  import zmq
9
9
  from dodal.devices.i04.constants import RedisConstants
10
+ from dodal.devices.i04.murko_results import FullMurkoResults, MurkoResult
10
11
  from numpy.typing import NDArray
11
12
  from PIL import Image
12
13
  from redis import StrictRedis
@@ -15,9 +16,6 @@ from mx_bluesky.common.utils.log import LOGGER
15
16
 
16
17
  MURKO_ADDRESS = "tcp://i04-murko-prod.diamond.ac.uk:8008"
17
18
 
18
- MurkoResult = dict
19
- FullMurkoResults = dict[str, list[MurkoResult]]
20
-
21
19
 
22
20
  class MurkoRequest(TypedDict):
23
21
  """See https://github.com/MartinSavko/murko#usage for more information."""
@@ -96,6 +94,7 @@ class BatchMurkoForwarder:
96
94
  ],
97
95
  "prefix": uuids,
98
96
  }
97
+
99
98
  results = send_to_murko_and_get_results(request_arguments)
100
99
  results_with_uuids = _correlate_results_to_uuids(request_arguments, results)
101
100
  self._send_murko_results_to_redis(sample_id, results_with_uuids)