mx-bluesky 1.5.5__tar.gz → 1.5.7__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 (570) hide show
  1. mx_bluesky-1.5.7/.devcontainer/devcontainer.json +75 -0
  2. mx_bluesky-1.5.7/.vscode/mx-bluesky-dev-container.code-workspace +23 -0
  3. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.vscode/mx-bluesky.code-workspace +3 -1
  4. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/PKG-INFO +2 -2
  5. mx_bluesky-1.5.7/docs/developer/general/how-to/get-started.md +33 -0
  6. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/hyperion/index.rst +1 -0
  7. mx_bluesky-1.5.7/docs/developer/hyperion/reference/baton.rst +22 -0
  8. mx_bluesky-1.5.7/docs/developer/hyperion/reference/gda-baton.puml +192 -0
  9. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/hyperion/reference/gridscan.puml +3 -3
  10. mx_bluesky-1.5.7/docs/developer/murko-integration/explanations/DrawioImages.rst +13 -0
  11. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/murko-integration/explanations/architecture.rst +1 -1
  12. mx_bluesky-1.5.7/docs/developer/murko-integration/images/Murko.drawio.png +0 -0
  13. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/murko-integration/index.rst +1 -0
  14. mx_bluesky-1.5.7/docs/images/417717258-afbd813c-8941-445c-9fdf-255c167453cf.png +0 -0
  15. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/user/hyperion/configuration.rst +29 -0
  16. mx_bluesky-1.5.7/docs/user/hyperion/index.rst +57 -0
  17. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/user/hyperion/pvs.rst +9 -0
  18. mx_bluesky-1.5.7/docs/user/hyperion/troubleshooting.rst +143 -0
  19. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/pyproject.toml +1 -1
  20. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/_version.py +3 -3
  21. mx_bluesky-1.5.7/src/mx_bluesky/beamlines/i02_1/parameters/gridscan.py +35 -0
  22. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i04/experiment_plans/i04_grid_detect_then_xray_centre_plan.py +6 -3
  23. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i04/redis_to_murko_forwarder.py +3 -1
  24. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i04/thawing_plan.py +15 -8
  25. mx_bluesky-1.5.7/src/mx_bluesky/beamlines/i24/jungfrau_commissioning/do_external_acquisition.py +44 -0
  26. mx_bluesky-1.5.7/src/mx_bluesky/beamlines/i24/jungfrau_commissioning/do_internal_acquisition.py +46 -0
  27. mx_bluesky-1.5.7/src/mx_bluesky/beamlines/i24/jungfrau_commissioning/plan_utils.py +73 -0
  28. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/device_setup_plans/robot_load_unload.py +2 -1
  29. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/experiment_plans/common_flyscan_xray_centre_plan.py +29 -5
  30. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/experiment_plans/inner_plans/do_fgs.py +7 -8
  31. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/callbacks/common/ispyb_callback_base.py +6 -6
  32. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/callbacks/common/zocalo_callback.py +30 -22
  33. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/ispyb_callback.py +73 -15
  34. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/ispyb_mapping.py +0 -20
  35. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/parameters/components.py +1 -0
  36. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/parameters/device_composites.py +2 -2
  37. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/parameters/gridscan.py +67 -49
  38. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/__main__.py +16 -3
  39. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/baton_handler.py +39 -9
  40. mx_bluesky-1.5.7/src/mx_bluesky/hyperion/device_setup_plans/smargon.py +25 -0
  41. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/experiment_plans/load_centre_collect_full_plan.py +19 -8
  42. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/experiment_plans/robot_load_then_centre_plan.py +2 -2
  43. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/external_interaction/agamemnon.py +6 -2
  44. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/external_interaction/callbacks/__main__.py +10 -2
  45. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_callback.py +37 -1
  46. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/parameters/constants.py +1 -0
  47. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/parameters/device_composites.py +2 -2
  48. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/parameters/gridscan.py +3 -3
  49. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/plan_runner.py +2 -4
  50. mx_bluesky-1.5.7/src/mx_bluesky/hyperion/plan_runner_api.py +43 -0
  51. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky.egg-info/PKG-INFO +2 -2
  52. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky.egg-info/SOURCES.txt +19 -4
  53. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky.egg-info/requires.txt +1 -1
  54. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/conftest.py +64 -72
  55. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/system_tests/conftest.py +2 -1
  56. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/system_tests/hyperion/external_interaction/callbacks/test_external_callbacks.py +18 -3
  57. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/system_tests/hyperion/external_interaction/conftest.py +28 -1
  58. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/system_tests/hyperion/external_interaction/test_agamemnon.py +4 -4
  59. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/system_tests/hyperion/external_interaction/test_baton_handler_soak.py +1 -1
  60. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/system_tests/hyperion/external_interaction/test_ispyb_dev_connection.py +11 -8
  61. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/system_tests/hyperion/external_interaction/test_load_centre_collect_full_plan.py +150 -0
  62. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/system_tests/hyperion/external_interaction/test_zocalo_system.py +12 -2
  63. mx_bluesky-1.5.7/tests/system_tests/hyperion/test_main_udc.py +60 -0
  64. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i04/test_i04_grid_detect_then_xray_centre_plan.py +2 -2
  65. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i04/test_redis_to_murko_forwarder.py +6 -3
  66. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i04/test_thawing.py +29 -0
  67. mx_bluesky-1.5.7/tests/unit_tests/beamlines/i24/jungfrau_commissioning/test_do_external_acquisition.py +59 -0
  68. mx_bluesky-1.5.7/tests/unit_tests/beamlines/i24/jungfrau_commissioning/test_do_internal_acquisition.py +51 -0
  69. mx_bluesky-1.5.7/tests/unit_tests/beamlines/i24/jungfrau_commissioning/test_plan_utils.py +81 -0
  70. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/experiment_plans/inner_plans/test_do_fgs.py +22 -32
  71. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/experiment_plans/test_common_flyscan_xray_centre_plan.py +67 -18
  72. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/callbacks/test_zocalo_handler.py +77 -3
  73. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_callback.py +75 -6
  74. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_handler.py +22 -10
  75. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/xray_centre/test_nexus_handler.py +3 -3
  76. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/conftest.py +47 -38
  77. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/conftest.py +41 -0
  78. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/experiment_plans/test_load_centre_collect_full_plan.py +36 -7
  79. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/experiment_plans/test_pin_tip_centring.py +28 -0
  80. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/experiment_plans/test_robot_load_and_change_energy.py +8 -5
  81. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/experiment_plans/test_rotation_scan_plan.py +4 -1
  82. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/external_interaction/nexus/test_write_nexus.py +4 -4
  83. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/test_baton_handler.py +289 -108
  84. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/test_main_system.py +56 -7
  85. mx_bluesky-1.5.7/tests/unit_tests/hyperion/test_plan_runner_api.py +35 -0
  86. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/test_runner.py +12 -6
  87. mx_bluesky-1.5.7/tests/unit_tests/hyperion/utils/__init__.py +0 -0
  88. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/t01.py +12 -0
  89. mx_bluesky-1.5.5/.devcontainer/devcontainer.json +0 -46
  90. mx_bluesky-1.5.5/docs/developer/general/how-to/get-started.rst +0 -26
  91. mx_bluesky-1.5.5/docs/developer/murko-integration/images/murko_setup.drawio.png +0 -0
  92. mx_bluesky-1.5.5/docs/user/hyperion/index.rst +0 -27
  93. mx_bluesky-1.5.5/docs/user/hyperion/logging.rst +0 -41
  94. mx_bluesky-1.5.5/src/mx_bluesky/hyperion/device_setup_plans/smargon.py +0 -20
  95. mx_bluesky-1.5.5/utility_scripts/beam_off_trickery.sh +0 -11
  96. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.copier-answers.yml +0 -0
  97. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.coveragerc +0 -0
  98. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.devcontainer/Dockerfile +0 -0
  99. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.dockerignore +0 -0
  100. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/CODEOWNERS +0 -0
  101. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/CONTRIBUTING.md +0 -0
  102. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  103. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/ISSUE_TEMPLATE/issue.md +0 -0
  104. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/actions/install_requirements/action.yml +0 -0
  105. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/actions/verify-nexus/Dockerfile +0 -0
  106. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/actions/verify-nexus/action.yml +0 -0
  107. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/actions/verify-nexus/entrypoint.sh +0 -0
  108. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/dependabot.yml +0 -0
  109. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/pages/index.html +0 -0
  110. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/pages/make_switcher.py +0 -0
  111. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/workflows/_check.yml +0 -0
  112. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/workflows/_container.yml +0 -0
  113. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/workflows/_dist.yml +0 -0
  114. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/workflows/_docs.yml +0 -0
  115. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/workflows/_helm.yml +0 -0
  116. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/workflows/_pypi.yml +0 -0
  117. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/workflows/_release.yml +0 -0
  118. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/workflows/_test.yml +0 -0
  119. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/workflows/_tox.yml +0 -0
  120. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/workflows/ci.yml +0 -0
  121. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.github/workflows/periodic.yml +0 -0
  122. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.gitignore +0 -0
  123. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.pre-commit-config.yaml +0 -0
  124. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.vscode/extensions.json +0 -0
  125. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.vscode/launch.json +0 -0
  126. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.vscode/mxb-with-core-dependencies.code-workspace +0 -0
  127. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.vscode/settings.json +0 -0
  128. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/.vscode/tasks.json +0 -0
  129. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/Dockerfile +0 -0
  130. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/Dockerfile.blueapi +0 -0
  131. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/Dockerfile.hyperion +0 -0
  132. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/LICENSE +0 -0
  133. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/README.rst +0 -0
  134. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/catalog-info.yaml +0 -0
  135. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/codecov.yml +0 -0
  136. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/conftest.py +0 -0
  137. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/_api.rst +0 -0
  138. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/_templates/custom-module-template.rst +0 -0
  139. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/conf.py +0 -0
  140. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/code-map/grid_detect_then_xray_centre.drawio.png +0 -0
  141. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/code-map/grid_detect_xrc.rst +0 -0
  142. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/code-map/index.rst +0 -0
  143. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/explanations/callback_and_run_logic.rst +0 -0
  144. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/explanations/containerised_mx_bluesky.rst +0 -0
  145. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/explanations/decisions/0001-record-architecture-decisions.rst +0 -0
  146. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/explanations/decisions/0002-repository-structure.rst +0 -0
  147. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/explanations/decisions/0003-python-version-support.rst +0 -0
  148. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/explanations/decisions.rst +0 -0
  149. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/how-to/contribute.rst +0 -0
  150. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/how-to/create-a-release.rst +0 -0
  151. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/how-to/deploy-a-release.rst +0 -0
  152. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/how-to/dev-ops/build-docs.rst +0 -0
  153. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/how-to/dev-ops/dev-ops.rst +0 -0
  154. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/how-to/dev-ops/lint.rst +0 -0
  155. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/how-to/dev-ops/run-tests.rst +0 -0
  156. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/how-to/dev-ops/update-tools.rst +0 -0
  157. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/index.rst +0 -0
  158. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/reference/standards.rst +0 -0
  159. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/general/tutorials/profile-tests.rst +0 -0
  160. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/hyperion/deploying-hyperion.rst +0 -0
  161. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/hyperion/how-to/update-panda-ioc.rst +0 -0
  162. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/hyperion/reference/coordinate-systems.puml +0 -0
  163. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/hyperion/reference/coordinate-systems.rst +0 -0
  164. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/hyperion/reference/param-hierarchy.rst +0 -0
  165. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/hyperion/reference/readme.md +0 -0
  166. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/hyperion/system-tests.rst +0 -0
  167. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/index.rst +0 -0
  168. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/serial-crystallography-on-i24/explanations/decisions/0001-record-architecture-decisions.rst +0 -0
  169. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/serial-crystallography-on-i24/explanations/decisions.rst +0 -0
  170. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/serial-crystallography-on-i24/how-to/environment-setup.rst +0 -0
  171. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/serial-crystallography-on-i24/how-to/pmac-docs.rst +0 -0
  172. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/serial-crystallography-on-i24/how-to/run-a-collection.rst +0 -0
  173. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/serial-crystallography-on-i24/index.rst +0 -0
  174. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/developer/serial-crystallography-on-i24/project-planning/roadmap.rst +0 -0
  175. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/images/176701633-b93bba62-b2e7-4740-a863-c6b388beb14f.png +0 -0
  176. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/images/207297611-f67dfc25-a3a5-4ade-a1e7-28b54a136fa6.png +0 -0
  177. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/images/dls-favicon.ico +0 -0
  178. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/images/dls-logo.svg +0 -0
  179. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/images/motor coordinate systems.odg +0 -0
  180. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/images/motor-coords-omega-0.svg +0 -0
  181. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/images/motor-coords-omega-alpha.svg +0 -0
  182. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/index.rst +0 -0
  183. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/user/hyperion/alerts.rst +0 -0
  184. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/docs/user/hyperion/running.rst +0 -0
  185. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/helm/hyperion/Chart.yaml +0 -0
  186. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/helm/hyperion/templates/deployment.yaml +0 -0
  187. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/helm/hyperion/templates/ingress.yaml +0 -0
  188. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/helm/hyperion/templates/service.yaml +0 -0
  189. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/helm/hyperion/templates/zocalo-config.yaml +0 -0
  190. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/helm/hyperion/values.yaml +0 -0
  191. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/helm/mx-bluesky-blueapi/Chart.yaml +0 -0
  192. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/helm/mx-bluesky-blueapi/templates/zocalo-config.yaml +0 -0
  193. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/helm/mx-bluesky-blueapi/values.yaml +0 -0
  194. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/helm/redis-to-murko/Chart.yaml +0 -0
  195. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/helm/redis-to-murko/templates/deployment.yaml +0 -0
  196. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/helm/redis-to-murko/values.yaml +0 -0
  197. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/pull_request_template.md +0 -0
  198. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/run_hyperion.sh +0 -0
  199. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/run_hyperion_in_podman.sh +0 -0
  200. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/setup.cfg +0 -0
  201. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/__init__.py +0 -0
  202. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/__main__.py +0 -0
  203. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/__init__.py +0 -0
  204. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/aithre_lasershaping/__init__.py +0 -0
  205. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/aithre_lasershaping/beamline_safe.py +0 -0
  206. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/aithre_lasershaping/check_goniometer_performance.py +0 -0
  207. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/aithre_lasershaping/goniometer_controls.py +0 -0
  208. {mx_bluesky-1.5.5/src/mx_bluesky/beamlines/i04/experiment_plans → mx_bluesky-1.5.7/src/mx_bluesky/beamlines/i02_1/parameters}/__init__.py +0 -0
  209. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i04/__init__.py +0 -0
  210. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i04/callbacks/murko_callback.py +0 -0
  211. {mx_bluesky-1.5.5/src/mx_bluesky/beamlines/i24 → mx_bluesky-1.5.7/src/mx_bluesky/beamlines/i04/experiment_plans}/__init__.py +0 -0
  212. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i23/__init__.py +0 -0
  213. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i23/serial.py +0 -0
  214. {mx_bluesky-1.5.5/src/mx_bluesky/beamlines/i24/serial/extruder → mx_bluesky-1.5.7/src/mx_bluesky/beamlines/i24}/__init__.py +0 -0
  215. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/__init__.py +0 -0
  216. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/blueapi_config.yaml +0 -0
  217. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/dcid.py +0 -0
  218. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DetStage.edl +0 -0
  219. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DiamondExtruder-I24-py3v1.edl +0 -0
  220. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/microdrop_alignment.edl +0 -0
  221. {mx_bluesky-1.5.5/src/mx_bluesky/beamlines/i24/serial/fixed_target → mx_bluesky-1.5.7/src/mx_bluesky/beamlines/i24/serial/extruder}/__init__.py +0 -0
  222. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/extruder/i24ssx_Extruder_Collect_py3v2.py +0 -0
  223. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/CustomChip_py3v1.edl +0 -0
  224. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DetStage.edl +0 -0
  225. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DiamondChipI24-py3v1.edl +0 -0
  226. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/ME14E-GeneralPurpose.edl +0 -0
  227. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/MappingLite-oxford_py3v1.edl +0 -0
  228. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/PMAC_Command.edl +0 -0
  229. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/Shutter_Control.edl +0 -0
  230. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/microdrop_alignment.edl +0 -0
  231. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/nudgechip.edl +0 -0
  232. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/pumpprobe-py3v1.edl +0 -0
  233. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/s1l.png +0 -0
  234. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/s2l.png +0 -0
  235. {mx_bluesky-1.5.5/src/mx_bluesky/beamlines/i24/serial/web_gui_plans → mx_bluesky-1.5.7/src/mx_bluesky/beamlines/i24/serial/fixed_target}/__init__.py +0 -0
  236. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/ft_utils.py +0 -0
  237. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Collect_py3v1.py +0 -0
  238. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Manager_py3v1.py +0 -0
  239. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_StartUp_py3v1.py +0 -0
  240. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_moveonclick.py +0 -0
  241. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/log.py +0 -0
  242. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/parameters/__init__.py +0 -0
  243. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/parameters/constants.py +0 -0
  244. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/parameters/experiment_parameters.py +0 -0
  245. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/cs/cs_maker.json +0 -0
  246. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/cs/motor_direction.txt +0 -0
  247. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/pvar_files/minichip-oxford.pvar +0 -0
  248. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/pvar_files/oxford.pvar +0 -0
  249. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/parameters/utils.py +0 -0
  250. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/run_extruder.sh +0 -0
  251. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/run_fixed_target.sh +0 -0
  252. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/run_serial.py +0 -0
  253. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/run_ssx.sh +0 -0
  254. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/set_visit_directory.sh +0 -0
  255. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/__init__.py +0 -0
  256. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/ca.py +0 -0
  257. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/pv.py +0 -0
  258. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/pv_abstract.py +0 -0
  259. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_beamline.py +0 -0
  260. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_detector.py +0 -0
  261. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_zebra_plans.py +0 -0
  262. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/start_blueapi.sh +0 -0
  263. {mx_bluesky-1.5.5/src/mx_bluesky/common → mx_bluesky-1.5.7/src/mx_bluesky/beamlines/i24/serial/web_gui_plans}/__init__.py +0 -0
  264. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/web_gui_plans/general_plans.py +0 -0
  265. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/beamlines/i24/serial/write_nexus.py +0 -0
  266. {mx_bluesky-1.5.5/src/mx_bluesky/common/external_interaction → mx_bluesky-1.5.7/src/mx_bluesky/common}/__init__.py +0 -0
  267. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/device_setup_plans/manipulate_sample.py +0 -0
  268. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/device_setup_plans/position_detector.py +0 -0
  269. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/device_setup_plans/setup_oav.py +0 -0
  270. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/device_setup_plans/setup_panda.py +0 -0
  271. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/device_setup_plans/utils.py +0 -0
  272. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/device_setup_plans/xbpm_feedback.py +0 -0
  273. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/experiment_plans/__init__.py +0 -0
  274. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/experiment_plans/change_aperture_then_move_plan.py +0 -0
  275. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/experiment_plans/common_grid_detect_then_xray_centre_plan.py +0 -0
  276. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/experiment_plans/inner_plans/__init__ .py +0 -0
  277. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/experiment_plans/inner_plans/read_hardware.py +0 -0
  278. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/experiment_plans/inner_plans/udc_default_state.py +0 -0
  279. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/experiment_plans/inner_plans/write_sample_status.py +0 -0
  280. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/experiment_plans/oav_grid_detection_plan.py +0 -0
  281. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/experiment_plans/oav_snapshot_plan.py +0 -0
  282. {mx_bluesky-1.5.5/src/mx_bluesky/common/external_interaction/callbacks/common → mx_bluesky-1.5.7/src/mx_bluesky/common/external_interaction}/__init__.py +0 -0
  283. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/alerting/__init__.py +0 -0
  284. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/alerting/_service.py +0 -0
  285. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/alerting/log_based_service.py +0 -0
  286. {mx_bluesky-1.5.5/src/mx_bluesky/common/external_interaction/callbacks/sample_handling → mx_bluesky-1.5.7/src/mx_bluesky/common/external_interaction/callbacks/common}/__init__.py +0 -0
  287. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/callbacks/common/abstract_event.py +0 -0
  288. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/callbacks/common/grid_detection_callback.py +0 -0
  289. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/callbacks/common/ispyb_mapping.py +0 -0
  290. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/callbacks/common/log_uid_tag_callback.py +0 -0
  291. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/callbacks/common/logging_callback.py +0 -0
  292. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/callbacks/common/plan_reactive_callback.py +0 -0
  293. {mx_bluesky-1.5.5/src/mx_bluesky/common/external_interaction/callbacks/xray_centre → mx_bluesky-1.5.7/src/mx_bluesky/common/external_interaction/callbacks/sample_handling}/__init__.py +0 -0
  294. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/callbacks/sample_handling/sample_handling_callback.py +0 -0
  295. {mx_bluesky-1.5.5/src/mx_bluesky/common/external_interaction/ispyb → mx_bluesky-1.5.7/src/mx_bluesky/common/external_interaction/callbacks/xray_centre}/__init__.py +0 -0
  296. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/nexus_callback.py +0 -0
  297. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/config_server.py +0 -0
  298. {mx_bluesky-1.5.5/src/mx_bluesky/common/external_interaction/nexus → mx_bluesky-1.5.7/src/mx_bluesky/common/external_interaction/ispyb}/__init__.py +0 -0
  299. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/ispyb/data_model.py +0 -0
  300. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/ispyb/exp_eye_store.py +0 -0
  301. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/ispyb/ispyb_store.py +0 -0
  302. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/ispyb/ispyb_utils.py +0 -0
  303. {mx_bluesky-1.5.5/src/mx_bluesky/common/parameters → mx_bluesky-1.5.7/src/mx_bluesky/common/external_interaction/nexus}/__init__.py +0 -0
  304. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/nexus/nexus_utils.py +0 -0
  305. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/external_interaction/nexus/write_nexus.py +0 -0
  306. {mx_bluesky-1.5.5/src/mx_bluesky/common/preprocessors → mx_bluesky-1.5.7/src/mx_bluesky/common/parameters}/__init__.py +0 -0
  307. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/parameters/constants.py +0 -0
  308. {mx_bluesky-1.5.5/src/mx_bluesky/common/protocols → mx_bluesky-1.5.7/src/mx_bluesky/common/preprocessors}/__init__.py +0 -0
  309. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/preprocessors/preprocessors.py +0 -0
  310. {mx_bluesky-1.5.5/src/mx_bluesky/common/utils → mx_bluesky-1.5.7/src/mx_bluesky/common/protocols}/__init__.py +0 -0
  311. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/protocols/protocols.py +0 -0
  312. {mx_bluesky-1.5.5/src/mx_bluesky/hyperion/device_setup_plans → mx_bluesky-1.5.7/src/mx_bluesky/common/utils}/__init__.py +0 -0
  313. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/utils/context.py +0 -0
  314. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/utils/exceptions.py +0 -0
  315. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/utils/log.py +0 -0
  316. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/utils/tracing.py +0 -0
  317. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/utils/utils.py +0 -0
  318. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/common/xrc_result.py +0 -0
  319. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/definitions.py +0 -0
  320. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/__init__.py +0 -0
  321. {mx_bluesky-1.5.5/src/mx_bluesky/hyperion/external_interaction/alerting → mx_bluesky-1.5.7/src/mx_bluesky/hyperion/device_setup_plans}/__init__.py +0 -0
  322. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/device_setup_plans/dcm_pitch_roll_mirror_adjuster.py +0 -0
  323. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/device_setup_plans/setup_panda.py +0 -0
  324. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/device_setup_plans/setup_zebra.py +0 -0
  325. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/device_setup_plans/utils.py +0 -0
  326. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/experiment_plans/__init__.py +0 -0
  327. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/experiment_plans/experiment_registry.py +0 -0
  328. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/experiment_plans/hyperion_flyscan_xray_centre_plan.py +0 -0
  329. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/experiment_plans/hyperion_grid_detect_then_xray_centre_plan.py +0 -0
  330. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/experiment_plans/optimise_attenuation_plan.py +0 -0
  331. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/experiment_plans/pin_centre_then_xray_centre_plan.py +0 -0
  332. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/experiment_plans/pin_tip_centring_plan.py +0 -0
  333. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/experiment_plans/robot_load_and_change_energy.py +0 -0
  334. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/experiment_plans/rotation_scan_plan.py +0 -0
  335. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/experiment_plans/set_energy_plan.py +0 -0
  336. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/external_interaction/__init__.py +0 -0
  337. {mx_bluesky-1.5.5/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation → mx_bluesky-1.5.7/src/mx_bluesky/hyperion/external_interaction/alerting}/__init__.py +0 -0
  338. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/external_interaction/alerting/constants.py +0 -0
  339. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/external_interaction/callbacks/__init__.py +0 -0
  340. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/external_interaction/callbacks/alert_on_container_change.py +0 -0
  341. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/external_interaction/callbacks/robot_actions/ispyb_callback.py +0 -0
  342. {mx_bluesky-1.5.5/src/mx_bluesky/phase1_zebra/device_setup_plans → mx_bluesky-1.5.7/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation}/__init__.py +0 -0
  343. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_mapping.py +0 -0
  344. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/nexus_callback.py +0 -0
  345. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/external_interaction/callbacks/snapshot_callback.py +0 -0
  346. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/external_interaction/config_server.py +0 -0
  347. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/parameters/__init__.py +0 -0
  348. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/parameters/cli.py +0 -0
  349. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/parameters/components.py +0 -0
  350. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/parameters/load_centre_collect.py +0 -0
  351. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/parameters/robot_load.py +0 -0
  352. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/parameters/rotation.py +0 -0
  353. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/resources/panda/panda-gridscan.yaml +0 -0
  354. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/runner.py +0 -0
  355. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/utils/__init__.py +0 -0
  356. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/hyperion/utils/context.py +0 -0
  357. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/jupyter_example.ipynb +0 -0
  358. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/phase1_zebra/__init__.py +0 -0
  359. {mx_bluesky-1.5.5/tests → mx_bluesky-1.5.7/src/mx_bluesky/phase1_zebra/device_setup_plans}/__init__.py +0 -0
  360. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky/phase1_zebra/device_setup_plans/setup_zebra.py +0 -0
  361. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky.egg-info/dependency_links.txt +0 -0
  362. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky.egg-info/entry_points.txt +0 -0
  363. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/src/mx_bluesky.egg-info/top_level.txt +0 -0
  364. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/start_jupyter.sh +0 -0
  365. {mx_bluesky-1.5.5/tests/system_tests → mx_bluesky-1.5.7/tests}/__init__.py +0 -0
  366. {mx_bluesky-1.5.5/tests/system_tests/hyperion → mx_bluesky-1.5.7/tests/system_tests}/__init__.py +0 -0
  367. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/system_tests/common/device_setup_plans/test_robot_load_unload.py +0 -0
  368. {mx_bluesky-1.5.5/tests/system_tests/hyperion/external_interaction → mx_bluesky-1.5.7/tests/system_tests/hyperion}/__init__.py +0 -0
  369. {mx_bluesky-1.5.5/tests/system_tests/hyperion/external_interaction/alerting → mx_bluesky-1.5.7/tests/system_tests/hyperion/external_interaction}/__init__.py +0 -0
  370. {mx_bluesky-1.5.5/tests/system_tests/hyperion/external_interaction/callbacks → mx_bluesky-1.5.7/tests/system_tests/hyperion/external_interaction/alerting}/__init__.py +0 -0
  371. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/system_tests/hyperion/external_interaction/alerting/test_log_based_alerts.py +0 -0
  372. {mx_bluesky-1.5.5/tests/unit_tests → mx_bluesky-1.5.7/tests/system_tests/hyperion/external_interaction/callbacks}/__init__.py +0 -0
  373. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/system_tests/hyperion/external_interaction/test_exp_eye_dev.py +0 -0
  374. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/system_tests/hyperion/external_interaction/test_nexgen.py +0 -0
  375. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/agamemnon/example_collect_multipin.json +0 -0
  376. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/agamemnon/example_native.json +0 -0
  377. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/agamemnon/example_wait.json +0 -0
  378. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/ispyb-test-credentials.cfg +0 -0
  379. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/nexus_files/README.md +0 -0
  380. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/nexus_files/fake_data.h5 +0 -0
  381. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/nexus_files/rotation/ins_8_5.nxs +0 -0
  382. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/nexus_files/rotation/ins_8_5_expected_output.txt +0 -0
  383. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/nexus_files/rotation/ins_8_5_meta.h5.gz +0 -0
  384. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5.nxs +0 -0
  385. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5_expected_output.txt +0 -0
  386. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5_meta.h5.gz +0 -0
  387. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/parameter_json_files/example_load_centre_collect_params.json +0 -0
  388. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/parameter_json_files/good_test_grid_with_edge_detect_parameters.json +0 -0
  389. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/parameter_json_files/good_test_load_centre_collect_params.json +0 -0
  390. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/parameter_json_files/good_test_load_centre_collect_params_multi_rotation.json +0 -0
  391. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/parameter_json_files/good_test_multi_rotation_scan_parameters.json +0 -0
  392. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/parameter_json_files/good_test_one_multi_rotation_scan_parameters.json +0 -0
  393. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/parameter_json_files/good_test_one_multi_rotation_scan_parameters_nomove.json +0 -0
  394. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/parameter_json_files/good_test_parameters.json +0 -0
  395. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/parameter_json_files/good_test_pin_centre_then_xray_centre_parameters.json +0 -0
  396. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/parameter_json_files/good_test_robot_load_and_centre_params.json +0 -0
  397. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/parameter_json_files/good_test_robot_load_params.json +0 -0
  398. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/parameter_json_files/good_test_rotation_scan_parameters.json +0 -0
  399. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/parameter_json_files/ispyb_gridscan_system_test_parameters.json +0 -0
  400. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/parameter_json_files/load_centre_collect_params_top_n_by_max_count.json +0 -0
  401. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/parameter_json_files/test_gridscan_param_defaults.json +0 -0
  402. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/parameter_json_files/test_oav_snapshot_params.json +0 -0
  403. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/rabbitmq-test-credentials.yml +0 -0
  404. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/scratch/README +0 -0
  405. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_OAVCentring.json +0 -0
  406. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_beamline_dcm_pitch_converter.txt +0 -0
  407. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_beamline_dcm_roll_converter.txt +0 -0
  408. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_beamline_parameters.txt +0 -0
  409. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_beamline_vfm_lat_converter.txt +0 -0
  410. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_config.cfg +0 -0
  411. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_daq_configuration/OAVCentring_hyperion.json +0 -0
  412. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_daq_configuration/display.configuration +0 -0
  413. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_daq_configuration/domain/beamlineParameters +0 -0
  414. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_daq_configuration/lookup/BeamLineEnergy_DCM_Pitch_converter.txt +0 -0
  415. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_daq_configuration/lookup/BeamLineEnergy_DCM_Roll_converter.txt +0 -0
  416. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_daq_configuration/lookup/BeamLine_Undulator_toGap.txt +0 -0
  417. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_daq_configuration/lookup/test_det_dist_converter.txt +0 -0
  418. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_det_dist_converter.txt +0 -0
  419. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_display.configuration +0 -0
  420. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_domain_properties +0 -0
  421. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_domain_properties_with_no_gpu +0 -0
  422. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_domain_properties_with_panda +0 -0
  423. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_images/generate_snapshot_input.png +0 -0
  424. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_images/generate_snapshot_output.png +0 -0
  425. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_images/ins_15_33_0.png +0 -0
  426. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_images/ins_15_33_90.png +0 -0
  427. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_images/ins_15_33_expected_0.png +0 -0
  428. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_images/ins_15_33_expected_270.png +0 -0
  429. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_images/thau_1_91_0.png +0 -0
  430. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_images/thau_1_91_90.png +0 -0
  431. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_images/thau_1_91_expected_0.png +0 -0
  432. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_images/thau_1_91_expected_270.png +0 -0
  433. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_jCameraManZoomLevels.xml +0 -0
  434. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_lookup_table.txt +0 -0
  435. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/test_mirror_focus.json +0 -0
  436. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/test_data/zocalo-test-configuration.yaml +0 -0
  437. {mx_bluesky-1.5.5/tests/unit_tests/beamlines → mx_bluesky-1.5.7/tests/unit_tests}/__init__.py +0 -0
  438. {mx_bluesky-1.5.5/tests/unit_tests/beamlines/i24 → mx_bluesky-1.5.7/tests/unit_tests/beamlines}/__init__.py +0 -0
  439. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/aithre_lasershaping/test_beamline_safe.py +0 -0
  440. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/aithre_lasershaping/test_check_goniometer_performance.py +0 -0
  441. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/aithre_lasershaping/test_goniometer_controls.py +0 -0
  442. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i04/callbacks/test_murko_callback.py +0 -0
  443. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i23/test_serial.py +0 -0
  444. {mx_bluesky-1.5.5/tests/unit_tests/beamlines/i24/serial → mx_bluesky-1.5.7/tests/unit_tests/beamlines/i24}/__init__.py +0 -0
  445. {mx_bluesky-1.5.5/tests/unit_tests/beamlines/i24/serial/extruder → mx_bluesky-1.5.7/tests/unit_tests/beamlines/i24/serial}/__init__.py +0 -0
  446. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/conftest.py +0 -0
  447. {mx_bluesky-1.5.5/tests/unit_tests/beamlines/i24/serial/fixed_target → mx_bluesky-1.5.7/tests/unit_tests/beamlines/i24/serial/extruder}/__init__.py +0 -0
  448. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/extruder/test_extruder_collect.py +0 -0
  449. {mx_bluesky-1.5.5/tests/unit_tests/beamlines/i24/serial/setup_beamline → mx_bluesky-1.5.7/tests/unit_tests/beamlines/i24/serial/fixed_target}/__init__.py +0 -0
  450. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/fixed_target/conftest.py +0 -0
  451. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_chip_manager.py +0 -0
  452. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_chip_startup.py +0 -0
  453. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_ft_collect.py +0 -0
  454. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_moveonclick.py +0 -0
  455. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/parameters/test_parameter_model.py +0 -0
  456. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/parameters/test_utils.py +0 -0
  457. {mx_bluesky-1.5.5/tests/unit_tests/beamlines/i24/serial/web_gui → mx_bluesky-1.5.7/tests/unit_tests/beamlines/i24/serial/setup_beamline}/__init__.py +0 -0
  458. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_pv_abstract.py +0 -0
  459. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_setup_beamline.py +0 -0
  460. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_setup_detector.py +0 -0
  461. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_zebra_plans.py +0 -0
  462. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/test_dcid.py +0 -0
  463. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/test_log.py +0 -0
  464. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/test_run_serial.py +0 -0
  465. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/test_write_nexus.py +0 -0
  466. {mx_bluesky-1.5.5/tests/unit_tests/common → mx_bluesky-1.5.7/tests/unit_tests/beamlines/i24/serial/web_gui}/__init__.py +0 -0
  467. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/beamlines/i24/serial/web_gui/test_general_plans.py +0 -0
  468. {mx_bluesky-1.5.5/tests/unit_tests/common/experiment_plans → mx_bluesky-1.5.7/tests/unit_tests/common}/__init__.py +0 -0
  469. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/device_setup_plans/test_robot_load_unload.py +0 -0
  470. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/device_setup_plans/test_setup_panda.py +0 -0
  471. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/device_setup_plans/test_xbpm_feedback.py +0 -0
  472. {mx_bluesky-1.5.5/tests/unit_tests/common/experiment_plans/inner_plans → mx_bluesky-1.5.7/tests/unit_tests/common/experiment_plans}/__init__.py +0 -0
  473. {mx_bluesky-1.5.5/tests/unit_tests/common/external_interaction → mx_bluesky-1.5.7/tests/unit_tests/common/experiment_plans/inner_plans}/__init__.py +0 -0
  474. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/experiment_plans/inner_plans/test_read_hardware.py +0 -0
  475. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/experiment_plans/inner_plans/test_udc_default_state.py +0 -0
  476. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/experiment_plans/inner_plans/test_write_sample_status.py +0 -0
  477. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/experiment_plans/test_change_aperture_then_move_plan.py +0 -0
  478. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/experiment_plans/test_common_grid_detect_then_xray_centre_plan.py +0 -0
  479. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/experiment_plans/test_grid_detection_plan.py +0 -0
  480. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/experiment_plans/test_oav_snapshot_plan.py +0 -0
  481. {mx_bluesky-1.5.5/tests/unit_tests/common/external_interaction/alerting → mx_bluesky-1.5.7/tests/unit_tests/common/external_interaction}/__init__.py +0 -0
  482. {mx_bluesky-1.5.5/tests/unit_tests/common/external_interaction/alerting → mx_bluesky-1.5.7/tests/unit_tests/common/external_interaction}/alerting/__init__.py +0 -0
  483. {mx_bluesky-1.5.5/tests/unit_tests/common/external_interaction/callbacks → mx_bluesky-1.5.7/tests/unit_tests/common/external_interaction/alerting/alerting}/__init__.py +0 -0
  484. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/alerting/alerting/test_alerting.py +0 -0
  485. {mx_bluesky-1.5.5/tests/unit_tests/common/external_interaction/callbacks/common → mx_bluesky-1.5.7/tests/unit_tests/common/external_interaction/callbacks}/__init__.py +0 -0
  486. {mx_bluesky-1.5.5/tests/unit_tests/common/external_interaction/callbacks/ispyb → mx_bluesky-1.5.7/tests/unit_tests/common/external_interaction/callbacks/common}/__init__.py +0 -0
  487. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/callbacks/common/test_abstract_event.py +0 -0
  488. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/callbacks/common/test_snapshot_callback.py +0 -0
  489. {mx_bluesky-1.5.5/tests/unit_tests/common/parameters → mx_bluesky-1.5.7/tests/unit_tests/common/external_interaction/callbacks/ispyb}/__init__.py +0 -0
  490. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/callbacks/ispyb/conftest.py +0 -0
  491. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_expeye_interaction.py +0 -0
  492. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_gridscan_ispyb_store_3d.py +0 -0
  493. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_rotation_ispyb_store.py +0 -0
  494. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/callbacks/sample_handling/test_sample_handling_callback.py +0 -0
  495. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/callbacks/test_plan_reactive_callback.py +0 -0
  496. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/conftest.py +0 -0
  497. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/nexus/test_nexus_utils.py +0 -0
  498. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/test_config_server.py +0 -0
  499. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/test_ispyb_utils.py +0 -0
  500. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/xray_centre/__init__.py +0 -0
  501. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_mapping.py +0 -0
  502. {mx_bluesky-1.5.5/tests/unit_tests/common/preprocessors → mx_bluesky-1.5.7/tests/unit_tests/common/parameters}/__init__.py +0 -0
  503. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/parameters/test_components.py +0 -0
  504. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/parameters/test_constants.py +0 -0
  505. {mx_bluesky-1.5.5/tests/unit_tests/common/utils → mx_bluesky-1.5.7/tests/unit_tests/common/preprocessors}/__init__.py +0 -0
  506. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/preprocessors/test_preprocessors.py +0 -0
  507. {mx_bluesky-1.5.5/tests/unit_tests/hyperion → mx_bluesky-1.5.7/tests/unit_tests/common/utils}/__init__.py +0 -0
  508. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/common/utils/test_log.py +0 -0
  509. {mx_bluesky-1.5.5/tests/unit_tests/hyperion/device_setup_plans → mx_bluesky-1.5.7/tests/unit_tests/hyperion}/__init__.py +0 -0
  510. {mx_bluesky-1.5.5/tests/unit_tests/hyperion/experiment_plans → mx_bluesky-1.5.7/tests/unit_tests/hyperion/device_setup_plans}/__init__.py +0 -0
  511. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/device_setup_plans/test_dcm_pitch_roll_mirror_adjuster.py +0 -0
  512. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/device_setup_plans/test_manipulate_sample.py +0 -0
  513. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/device_setup_plans/test_setup_oav.py +0 -0
  514. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/device_setup_plans/test_setup_panda.py +0 -0
  515. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/device_setup_plans/test_utils.py +0 -0
  516. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/device_setup_plans/test_zebra_setup.py +0 -0
  517. {mx_bluesky-1.5.5/tests/unit_tests/hyperion/external_interaction → mx_bluesky-1.5.7/tests/unit_tests/hyperion/experiment_plans}/__init__.py +0 -0
  518. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/experiment_plans/common/test_flyscan_result.py +0 -0
  519. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/experiment_plans/conftest.py +0 -0
  520. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/experiment_plans/test_experiment_registry.py +0 -0
  521. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/experiment_plans/test_hyperion_flyscan_xray_centre_plan.py +0 -0
  522. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/experiment_plans/test_hyperion_grid_detect_then_xray_centre_plan.py +0 -0
  523. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/experiment_plans/test_optimise_attenuation_plan.py +0 -0
  524. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/experiment_plans/test_pin_centre_then_xray_centre_plan.py +0 -0
  525. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/experiment_plans/test_robot_load_then_centre.py +0 -0
  526. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/experiment_plans/test_set_energy_plan.py +0 -0
  527. {mx_bluesky-1.5.5/tests/unit_tests/hyperion/external_interaction/callbacks → mx_bluesky-1.5.7/tests/unit_tests/hyperion/external_interaction}/__init__.py +0 -0
  528. {mx_bluesky-1.5.5/tests/unit_tests/hyperion/external_interaction/callbacks/rotation → mx_bluesky-1.5.7/tests/unit_tests/hyperion/external_interaction/callbacks}/__init__.py +0 -0
  529. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/external_interaction/callbacks/conftest.py +0 -0
  530. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/external_interaction/callbacks/robot_load/test_robot_load_ispyb_callback.py +0 -0
  531. {mx_bluesky-1.5.5/tests/unit_tests/hyperion/external_interaction/nexus → mx_bluesky-1.5.7/tests/unit_tests/hyperion/external_interaction/callbacks/rotation}/__init__.py +0 -0
  532. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/external_interaction/callbacks/rotation/test_ispyb_callback.py +0 -0
  533. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/external_interaction/callbacks/test_alert_on_container_change.py +0 -0
  534. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/external_interaction/callbacks/test_external_callbacks.py +0 -0
  535. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/external_interaction/callbacks/test_rotation_callbacks.py +0 -0
  536. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/external_interaction/conftest.py +0 -0
  537. {mx_bluesky-1.5.5/tests/unit_tests/hyperion/parameters → mx_bluesky-1.5.7/tests/unit_tests/hyperion/external_interaction/nexus}/__init__.py +0 -0
  538. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/external_interaction/nexus/test_compare_nexus_to_gda_exhaustively.py +0 -0
  539. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/external_interaction/test_agamemnon.py +0 -0
  540. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000001.h5 +0 -0
  541. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000002.h5 +0 -0
  542. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000003.h5 +0 -0
  543. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/external_interaction/test_write_rotation_nexus.py +0 -0
  544. {mx_bluesky-1.5.5/tests/unit_tests/hyperion/utils → mx_bluesky-1.5.7/tests/unit_tests/hyperion/parameters}/__init__.py +0 -0
  545. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/parameters/test_parameter_model.py +0 -0
  546. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/test_exceptions.py +0 -0
  547. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/test_utils.py +0 -0
  548. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/utils/test_callback_sim.py +0 -0
  549. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/hyperion/utils/test_context.py +0 -0
  550. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/tests/unit_tests/test_cli.py +0 -0
  551. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/build_docker_image.sh +0 -0
  552. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/build_imginfo.sh +0 -0
  553. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/deploy/create_venv.py +0 -0
  554. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/deploy/deploy_edm_for_ssx.sh +0 -0
  555. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/deploy/deploy_mx_bluesky.py +0 -0
  556. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/deploy/deploy_mx_bluesky_app_to_k8s.sh +0 -0
  557. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/deploy/test_deploy.py +0 -0
  558. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/dev_jaeger_container.sh +0 -0
  559. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/dls_dev_env.sh +0 -0
  560. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/docker/entrypoint.sh +0 -0
  561. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/docker/healthcheck.sh +0 -0
  562. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/docker/i03-compose.yml +0 -0
  563. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/generate_plantuml.py +0 -0
  564. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/graylog/Dockerfile +0 -0
  565. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/graylog/tcp_input.json +0 -0
  566. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/procserv_ioc_start.sh +0 -0
  567. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/request_baton.sh +0 -0
  568. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/run_imginfo.sh +0 -0
  569. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/setup_graylog.sh +0 -0
  570. {mx_bluesky-1.5.5 → mx_bluesky-1.5.7}/utility_scripts/strip_metafile.py +0 -0
@@ -0,0 +1,75 @@
1
+ // For format details, see https://containers.dev/implementors/json_reference/
2
+ {
3
+ "name": "Python 3 Developer Container",
4
+ "build": {
5
+ "dockerfile": "../Dockerfile",
6
+ "target": "developer"
7
+ },
8
+ "remoteEnv": {
9
+ // Allow X11 apps to run inside the container
10
+ "DISPLAY": "${localEnv:DISPLAY}"
11
+ },
12
+ "customizations": {
13
+ "vscode": {
14
+ // Set *default* container specific settings.json values on container create.
15
+ "settings": {
16
+ "python.defaultInterpreterPath": "/venv/bin/python"
17
+ },
18
+ // Add the IDs of extensions you want installed when the container is created.
19
+ "extensions": [
20
+ "ms-python.python",
21
+ "github.vscode-github-actions",
22
+ "tamasfe.even-better-toml",
23
+ "redhat.vscode-yaml",
24
+ "ryanluker.vscode-coverage-gutters",
25
+ "charliermarsh.ruff",
26
+ "ms-azuretools.vscode-docker"
27
+ ],
28
+ "python.testing.pytestArgs": [
29
+ "--cov=mx_bluesky",
30
+ "--cov-report",
31
+ "xml:cov.xml"
32
+ ],
33
+ "python.testing.unittestEnabled": false,
34
+ "python.testing.pytestEnabled": true,
35
+ "python.defaultInterpreterPath": "/venv/bin/python",
36
+ "editor.formatOnSave": true,
37
+ "editor.codeActionsOnSave": {
38
+ "source.organizeImports": "explicit"
39
+ },
40
+ "files.insertFinalNewline": true,
41
+ "[python]": {
42
+ "editor.rulers": [
43
+ 88
44
+ ],
45
+ "editor.codeActionsOnSave": {
46
+ "source.fixAll.ruff": "explicit",
47
+ "source.organizeImports.ruff": "explicit"
48
+ },
49
+ "editor.defaultFormatter": "charliermarsh.ruff"
50
+ },
51
+ "terminal.integrated.gpuAcceleration": "off",
52
+ "python.analysis.typeCheckingMode": "basic"
53
+ }
54
+ },
55
+ "features": {
56
+ // Some default things like git config
57
+ // add in eternal history and other bash features
58
+ "ghcr.io/diamondlightsource/devcontainer-features/bash-config:1": {}
59
+ },
60
+ // Create the config folder for the bash-config feature
61
+ "initializeCommand": "mkdir -p ${localEnv:HOME}/.config/bash-config",
62
+ "runArgs": [
63
+ // Allow the container to access the host X11 display and EPICS CA
64
+ "--net=host",
65
+ // Make sure SELinux does not disable with access to host filesystems like tmp
66
+ "--security-opt=label=disable"
67
+ ],
68
+ // Mount the parent as /workspaces so we can pip install peers as editable
69
+ "workspaceMount": "source=${localWorkspaceFolder}/..,target=/workspaces,type=bind",
70
+ "mounts": [
71
+ "source=/dls_sw/apps/dials/latest/latest/modules/dlstbx/src/dlstbx/,target=/dls_sw/apps/dials/latest/latest/modules/dlstbx/src/dlstbx/,type=bind,consistency=cached"
72
+ ],
73
+ // After the container is created, install the python project in editable form
74
+ "postCreateCommand": "pip install $([ -f dev-requirements.txt ] && echo '-c dev-requirements.txt') -e '.[dev]' && pip install -e /workspaces/dodal[dev] && pre-commit install && ln -s /dls_sw/apps/dials/latest/latest/modules/dlstbx/src/dlstbx/ /venv/lib/python3.12/site-packages/dlstbx"
75
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "folders": [
3
+ {
4
+ "path": ".."
5
+ },
6
+ {
7
+ "path": "../../dodal"
8
+ },
9
+ ],
10
+ "settings": {
11
+ "python.languageServer": "Pylance",
12
+ "[python]": {
13
+ "editor.defaultFormatter": "ms-python.black-formatter"
14
+ },
15
+ "python.defaultInterpreterPath": "venv/bin/python",
16
+ "python.analysis.extraPaths": [
17
+ "../dodal"
18
+ ],
19
+ "python.analysis.autoImportCompletions": true,
20
+ "terminal.integrated.gpuAcceleration": "off",
21
+ "esbonio.sphinx.confDir": ""
22
+ }
23
+ }
@@ -13,7 +13,9 @@
13
13
  "editor.defaultFormatter": "ms-python.black-formatter"
14
14
  },
15
15
  "python.defaultInterpreterPath": ".venv/bin/python",
16
- "python.analysis.extraPaths": ["../dodal"],
16
+ "python.analysis.extraPaths": [
17
+ "../dodal"
18
+ ],
17
19
  "python.analysis.autoImportCompletions": true,
18
20
  "terminal.integrated.gpuAcceleration": "off",
19
21
  "esbonio.sphinx.confDir": ""
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mx-bluesky
3
- Version: 1.5.5
3
+ Version: 1.5.7
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.57.0
244
+ Requires-Dist: dls-dodal==1.59.1
245
245
  Provides-Extra: dev
246
246
  Requires-Dist: black; extra == "dev"
247
247
  Requires-Dist: build; extra == "dev"
@@ -0,0 +1,33 @@
1
+ # Get Started with mx-bluesky
2
+
3
+ ## Development Environment
4
+
5
+ We recommend using devcontainers with vscode as the IDE when developing using a DLS machine. Here's how you can set this up:
6
+
7
+ - Clone this repo using SSH: `git clone git@github.com:DiamondLightSource/mx-bluesky.git`.
8
+ - At the same directory level as you were in for step 1, clone dodal using SSH: `git clone git@github.com:DiamondLightSource/dodal.git`.
9
+ You should now have a directory structure looking like`/some_path/mx-bluesky` and `/some_path/dodal`.
10
+ - In a terminal, move to the mx-bluesky directory and open vscode:
11
+
12
+ ```
13
+ cd /some_path/mx-bluesky
14
+ module load vscode
15
+ code .
16
+ ```
17
+
18
+ - Make sure you have the [devcontainers extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers) installed in vscode.
19
+ - In vscode, press `shift+ctrl+p`, and type "Dev Containers: Open Folder in Container", then select the mx-bluesky folder.
20
+ - Once this has built, in vscode at the top right, click `File -> Open workspace from file`, then select `mx-bluesky/.vscode/mx-bluesky-dev-container.code-workspace`.
21
+ - This should get dodal and mx-bluesky opened up in your workspace with all the correct settings. To prove to yourself that the environment is correct, type `tox -e tests` in a terminal in your devcontainer while inside the dodal and inside the mx-bluesky directory.
22
+
23
+ ### Notes
24
+ - The devcontainer initially takes quite a long time to build. It will be much faster every other time, and only needs to be rebuild if we change the container environment.
25
+ - The first time you make a commit after building, you will need to follow some git prompts to set your git name and email.
26
+ - The old `dls_dev_env.sh` script creates a virtual environment in `mx-bluesky/.venv`, while the devcontainer creates one in `mx-bluesky/venv`. This is the only reason why we need separate code-workspace files.
27
+
28
+ ## Supported Python versions
29
+
30
+
31
+ As a standard for the python versions to support, we are using the [numpy deprecation policy](https://numpy.org/neps/nep-0029-deprecation_policy.html)
32
+
33
+ Currently supported versions are: 3.11, 3.12.
@@ -13,6 +13,7 @@ Documentation specific for the Hyperion module within MX-Bluesky
13
13
  :maxdepth: 1
14
14
 
15
15
  reference/readme
16
+ reference/baton
16
17
  reference/param-hierarchy
17
18
  reference/coordinate-systems
18
19
  deploying-hyperion
@@ -0,0 +1,22 @@
1
+ Hyperion Baton
2
+ ==============
3
+
4
+ The Hyperion baton is controlled by two PVs; these are described under `Special PVs`_
5
+
6
+ An approximate outline of how the various baton workflows operates is outlined in the flowcharts below:
7
+
8
+ .. image:: ../../../images/417717258-afbd813c-8941-445c-9fdf-255c167453cf.png
9
+
10
+ .. _Special PVs: ../../../user/hyperion/pvs.html
11
+
12
+
13
+ GDA-side Baton Integration
14
+ --------------------------
15
+
16
+ Below is a diagram showing how baton-handling in GDA integrates the GDA baton with the Hyperion Baton PV, using the
17
+ ``HyperionUDCRunner``.
18
+
19
+ The diagram represents an interim stage; at some point ``GDAUDCRunner`` can be eliminated and the baton management
20
+ simplified.
21
+
22
+ .. uml:: gda-baton.puml
@@ -0,0 +1,192 @@
1
+ @startuml
2
+ title GDA Baton Management
3
+
4
+ package Server {
5
+ class Thread
6
+ class JythonServerThread extends Thread {
7
+ authorisationLevel: int
8
+ int getAuthorisationLevel()
9
+ }
10
+
11
+ interface IBatonManager {
12
+ ClientDetails getClientInformation((myJSFIdentifier)
13
+ boolean requestBaton(uniqueIdentifier)
14
+ void returnBaton((uniqueIdentifier)
15
+ void assignBaton(myJSFIdentifier, indexOfReceiver, indexOfPasser)
16
+ boolean isBatonHeld()
17
+ boolean amIBatonHolder(myJSFIdentifier)
18
+ int effectiveAuthorisationLevelOf(uniqueId)
19
+ void addFacade(uniqueId, info: ClientDetails)
20
+ void removeFacade(uniqueId)
21
+ }
22
+
23
+ class BatonManager implements IBatonManager {
24
+ useBaton = true
25
+ useRBAC = true
26
+ firstClientTakesBaton = true
27
+ batonHolder: String
28
+ facadeNames: Map<String, ClientInfo>
29
+ leaseHolders: Map<String, Long>
30
+ }
31
+
32
+ note "Each client has a facade name aka uniqueId aka jsfIdentifier\n\
33
+ There is a LeaseRefresher that periodically sends a BatonLeaseRenewRequest\n\
34
+ to all clients, any interaction with the BatonManager extends the lease.\n\n\
35
+ On first client registration, if firstClientTakesBaton is true then it will\n\
36
+ assume the baton if it is not the server or an automated client." as batonManagerNote
37
+
38
+ BatonManager .. batonManagerNote
39
+
40
+
41
+ interface IJythonServerNotifier {
42
+ void notifyServer(source, data)
43
+ }
44
+ interface LocalJython
45
+ class JythonServer implements LocalJython {
46
+ batonManager: BatonManager
47
+ }
48
+
49
+ note "JythonServer registers a client with the BatonManager via forwarding of addFacade()\n\
50
+ The authorisationLevel is determined by asking the Authoriser" as jythonServerNote
51
+
52
+ JythonServer .. jythonServerNote
53
+
54
+ interface Authoriser {
55
+ int getAuthorisationLevel(username)
56
+ int getDefaultPermissions(username)
57
+ isLocalStaff(username)
58
+ }
59
+
60
+ class FileAuthoriser implements Authoriser
61
+ note "Gets the permissions from user_permissions.xml" as fileAuthoriserNote
62
+ FileAuthoriser .. fileAuthoriserNote
63
+ class LdapAuthoriser extends FileAuthoriser
64
+ class SingleFileAuthoriser implements Authoriser
65
+ note "Authorisation method is determined by gda.gui.AcquisitionGUI.authorisationMethod" as authoriserNote
66
+
67
+ Authoriser .. authoriserNote
68
+
69
+ together {
70
+ class UDCBatonHandler {
71
+ runner: IUDCRunner
72
+ }
73
+ interface IUDCRunner
74
+ class GDAUDCRunner implements IUDCRunner
75
+ class HyperionUDCRunner implements IUDCRunner
76
+ }
77
+
78
+ note "\
79
+ Creates the UDC Client by calling getUnattendedClientFacade() during configuration.\n\
80
+ Creates the UDC Runner according to the gda.mx.udc.hyperion.enable property.\
81
+ " as udcBatonHandlerNote
82
+ UDCBatonHandler .. udcBatonHandlerNote
83
+
84
+ class Device {
85
+ protectionLevel: int
86
+ }
87
+ class DeviceInterceptor
88
+ note "DeviceInterceptor is an interceptor on specific methods of Device, if the current thread\n\
89
+ has an authorisationLevel below the protectionLevel of the device, and\n\
90
+ the call is made from Jython the method call throws AccessDeniedException." as deviceNote
91
+ Device .. deviceNote
92
+
93
+
94
+
95
+ class UDCCompleteEvent
96
+
97
+ }
98
+
99
+ package Common {
100
+ together {
101
+ class BatonChanged
102
+ class BatonRequested
103
+ class BatonLeaseRenewRequest
104
+ }
105
+
106
+ interface Jython {
107
+ boolean amIBatonHolder(myJSFIdentifier)
108
+ int addFacade(jsfIdentifier, hostname, username, fullName, visitId)
109
+ boolean isBatonHeld()
110
+ }
111
+
112
+ class ClientInfo {
113
+ index: int
114
+ userId: String
115
+ fullName: String
116
+ hostname: String
117
+ authorisationLevel: int
118
+ visitID: String
119
+
120
+ boolean isServer()
121
+ boolean isAutomatedUser()
122
+ }
123
+ note "isServer and isAutomatedUser are determined by the authorisationLevel" as clientInfoNote
124
+ ClientInfo .. clientInfoNote
125
+
126
+ class ClientDetails extends ClientInfo {
127
+ hasBaton: boolean
128
+ }
129
+
130
+ interface IAuthorisationHolder {
131
+ int getAuthorisationLevel()
132
+ int getAuthorisationLevelAtRegistration()
133
+ }
134
+
135
+ interface IBatonStateProvider {
136
+ boolean amIBatonHolder()
137
+ boolean isBatonHeld()
138
+ void addBatonChangedObserver(observer)
139
+ void deleteBatonChangedObserver(observer)
140
+ }
141
+ note "Access is enforced in the client via calls to amIBatonHolder()" as iBatonStateProviderNote
142
+
143
+ class JythonServerFacade implements IBatonStateProvider, IAuthorisationHolder {
144
+ commandServer: Jython
145
+ visitID: String
146
+ {static} JythonServerFacade getUnattendedClientFacade()
147
+ }
148
+ }
149
+
150
+ package Client {
151
+ class ApplicationWorkbenchAdvisor
152
+ note "ApplicationWorkbenchAdvisor receives the BatonLeaseRenewRequest and uses IBatonStateProvider\n\
153
+ to renew the lease by calling amIBatonHolder()" as applicationWorkbenchAdvisorNote
154
+ }
155
+
156
+ 'Server -up-> Common
157
+ 'Common -up[hidden]-> Client
158
+ ApplicationWorkbenchAdvisor ..[norank] applicationWorkbenchAdvisorNote
159
+
160
+ ApplicationWorkbenchAdvisor --down> IBatonStateProvider
161
+
162
+ IBatonStateProvider .. iBatonStateProviderNote
163
+ LocalJython -up-|> Jython
164
+ LocalJython --|> IJythonServerNotifier
165
+
166
+ JythonServerFacade o-> Jython
167
+ JythonServer o->BatonManager
168
+ JythonServer --> Authoriser
169
+
170
+ JythonServer --> JythonServerThread
171
+
172
+ BatonChanged --> UDCBatonHandler : handles
173
+ BatonRequested --> UDCBatonHandler : handles
174
+ UDCCompleteEvent --> UDCBatonHandler : handles
175
+
176
+ UDCBatonHandler -[norank]-> JythonServerFacade
177
+ UDCBatonHandler o-> IUDCRunner
178
+ BatonManager -up-> BatonChanged : fires
179
+ BatonManager -up-> BatonRequested : fires
180
+ BatonManager -up-> BatonLeaseRenewRequest : fires
181
+ GDAUDCRunner -[norank]-> UDCCompleteEvent : fires
182
+ BatonManager *-[norank]-> ClientInfo
183
+
184
+ UDCCompleteEvent --> GDAUDCRunner : handles
185
+ HyperionUDCRunner --> UDCCompleteEvent : fires
186
+
187
+ DeviceInterceptor --> Device
188
+ DeviceInterceptor --> JythonServerThread
189
+
190
+ BatonManager -up-> IJythonServerNotifier
191
+
192
+ @enduml
@@ -97,13 +97,13 @@ class GridScanParamsCommon {
97
97
  z2_start_mm
98
98
  }
99
99
  class PandAGridScanParams
100
- class ZebraGridScanParams
100
+ class ZebraGridScanParamsThreeD
101
101
 
102
102
  AbstractExperimentBase <|-- AbstractExperimentWithBeamParams
103
103
  AbstractExperimentWithBeamParams <|-- GridScanParamsCommon
104
104
  GridScanParamsCommon <|-- PandAGridScanParams
105
- GridScanParamsCommon <|-- ZebraGridScanParams
105
+ GridScanParamsCommon <|-- ZebraGridScanParamsThreeD
106
106
 
107
- HyperionThreeDGridScan --> ZebraGridScanParams : generates
107
+ HyperionThreeDGridScan --> ZebraGridScanParamsThreeD : generates
108
108
  HyperionThreeDGridScan --> PandAGridScanParams : generates
109
109
  @enduml
@@ -0,0 +1,13 @@
1
+ Draw.io Images
2
+ --------------
3
+
4
+ When working with diagrams created using Draw.io, it's important to ensure that the images retain their embedded metadata. This metadata allows the diagrams to be re-uploaded to Draw.io later for editing.
5
+
6
+ To preserve this metadata:
7
+
8
+ - When exporting from Draw.io, use the "File > Export As > PNG (with embedded XML)" or SVG (with embedded content) option.
9
+ - Make sure the "Include a copy of my diagram" or similar checkbox is selected during export.
10
+
11
+ This ensures that the image isn't just a flat graphic—it includes the necessary data for Draw.io to reconstruct and edit the diagram later.
12
+
13
+ Tip: There is a chance of losing the metadata though if not handled properly. Sharing the image through Slack for example will delete the metadata associated with the image. Instead, use something like e-mail.
@@ -3,7 +3,7 @@ Murko Architecture
3
3
 
4
4
  The architecture of how Murko is integrated is still in flux but as of 07/08 the following has been tried on the beamline.
5
5
 
6
- .. image:: ../images/murko_setup.drawio.png
6
+ .. image:: ../images/Murko.drawio.png
7
7
 
8
8
  The mx-bluesky code is deployed into the `beamline kubernetes cluster <https://k8s-i04.diamond.ac.uk/>`_ behind a `blueAPI <https://github.com/DiamondLightSource/blueapi>`_ REST interface. Alongside this an instance of murko is also deployed to the k8s cluster.
9
9
 
@@ -16,6 +16,7 @@ Its integration at DLS, using Bluesky, is still a work in progress but this docu
16
16
  :maxdepth: 1
17
17
 
18
18
  explanations/architecture
19
+ explanations/DrawioImages
19
20
 
20
21
  +++
21
22
 
@@ -1,6 +1,9 @@
1
1
  Configuration
2
2
  -------------
3
3
 
4
+ Hyperion main configuration
5
+ ===========================
6
+
4
7
  Configuration of several properties that control Hyperion execution are available. These can be edited in the
5
8
  ``domain.properties`` file typically found in
6
9
 
@@ -8,6 +11,8 @@ Configuration of several properties that control Hyperion execution are availabl
8
11
 
9
12
  /dls_sw/<beamline>/software/daq_configuration/domain.properties
10
13
 
14
+ Note that making a change to these properties generally requires a restart of the GDA server.
15
+
11
16
 
12
17
  .. csv-table:: Configuration properties
13
18
  :widths: auto
@@ -23,3 +28,27 @@ Configuration of several properties that control Hyperion execution are availabl
23
28
  "gda.mx.hyperion.xrc.use_gpu_results", "boolean", "If true, then zocalo gridscan processing uses the GPU results"
24
29
  "gda.mx.hyperion.xrc.use_roi_mode", "boolean", "If true then ROI mode is used."
25
30
  "gda.mx.udc.hyperion.enable", "boolean", "Enables Hyperion UDC mode."
31
+
32
+ Beamline configuration/calibration files
33
+ ========================================
34
+
35
+ Hyperion makes use of other beamline configuration and calibration files which are also currently stored in
36
+
37
+ ::
38
+
39
+ /dls_sw/<beamline>/software/daq_configuration
40
+
41
+ These are currently shared with GDA, so changes to these files will affect both applications.
42
+
43
+ Config Server
44
+ =============
45
+
46
+ If the `Config Server`_ is deployed and running, Hyperion is configured to use it in preference to reading the
47
+ ``domain.properties`` file directly. However in the event of the config server being unavailable Hyperion will fall
48
+ back to reading it from the filesystem.
49
+
50
+ Note that currently the rest of the configuration files are not read from the config server, but the intention is that
51
+ ultimately it will be the source of all configuration and the remainder of the files in ``daq_configuration`` will be
52
+ moved over to it.
53
+
54
+ .. _Config Server: https://github.com/DiamondLightSource/daq-config-server/
@@ -0,0 +1,57 @@
1
+ Hyperion User Guide
2
+ ===================
3
+
4
+ The Hyperion User Guide describes how to run, configure and troubleshoot Hyperion. For installation instructions, see
5
+ the `Developer Guide`_.
6
+
7
+ What is Hyperion?
8
+ -----------------
9
+
10
+ Hyperion is a service for running high throughput unattended data collection (UDC). It does not provide a user
11
+ interface, instead instructions are pulled from Agamemnon which is controlled by information obtained in ISPyB.
12
+
13
+ The software supports two modes of operation:
14
+
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 inside
20
+ GDA properties. See `configuration`_ for other properties that control Hyperions behavior.
21
+
22
+ Once Hyperion has received a request, either from GDA or directly from Agamemnon, it will do the following tasks:
23
+
24
+ - Robot Load (if the requested sample has not yet been loaded)
25
+ - Pin tip centring using the OAV
26
+ - Xray Centring using 2 2D gridscans
27
+ - A number of data collections, depending on the number of centres returned from Zocalo and the applied selection criteria
28
+
29
+ During this it will generate the following outputs:
30
+
31
+ - Snapshots on robot load, XRC and rotations
32
+ - Data collections in ISPyB for the gridscans and rotations as well as entries for robot load/unload
33
+ - NeXus files for each data collection
34
+ - Alert notifications on loading a new container and on beamline error conditions when intervention is required.
35
+
36
+ To increase throughput, the behavior of Hyperion differs in many ways from UDC under GDA. The main ways this manifests
37
+ to a user is:
38
+
39
+ - Xray Centring is 2 2D gridscans (rather than the one gridscan and one line scan in GDA). For speed, the eiger is only
40
+ armed once for both of these and the data is split up after the fact. This means on the filesystem there is one set of
41
+ hdf files for both gridscans but two NeXus files. The two grid scans are stored in ISPyB under one data collection
42
+ group so at first glance it may look like one gridscan in synchweb but you can click through to see both scans.
43
+ - If an xray centre cannot be done on a pin (because it is too long/short or bent), or if no diffraction is found in the
44
+ xray centring data, the sample will be immediately unloaded without a rotation scan being done and the next sample loaded.
45
+
46
+ For a more detailed breakdown of the operation, it may be helpful to browse the `Code Map`_
47
+
48
+ .. _Code Map: ../../developer/code-map
49
+ .. _Developer Guide: ../../developer/hyperion/deploying-hyperion
50
+ .. _configuration: ./configuration
51
+
52
+ .. toctree::
53
+ :caption: Topics
54
+ :maxdepth: 1
55
+ :glob:
56
+
57
+ *
@@ -10,3 +10,12 @@ CURRENT_USER.
10
10
  Hyperion will only start operating once REQUESTED_USER has been set to Hyperion, at which point it will set
11
11
  CURRENT_USER. To request the baton from Hyperion, set REQUESTED_USER to some other value, when Hyperion completes the
12
12
  current action, it will relinquish CURRENT_USER.
13
+
14
+ Commissioning Mode
15
+ ~~~~~~~~~~~~~~~~~~
16
+
17
+ The baton device also has a COMMISSIONING PV, which when the PV is set to 1, indicates that commissioning mode is
18
+ enabled.
19
+
20
+ Commissioning mode enables testing of Hyperion when there is no beam. Beamline scientists should ensure that the
21
+ COMMISSIONING PV is set to 0 before running Hyperion in production.