mx-bluesky 1.4.9__tar.gz → 1.5.1__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.
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/workflows/_container.yml +26 -3
- mx_bluesky-1.5.1/Dockerfile.blueapi +14 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/PKG-INFO +5 -4
- mx_bluesky-1.5.1/docs/developer/code-map/grid_detect_then_xray_centre.drawio.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/code-map/grid_detect_xrc.rst +12 -11
- mx_bluesky-1.5.1/docs/developer/general/explanations/containerised_mx_bluesky.rst +14 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/how-to/create-a-release.rst +9 -6
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/index.rst +1 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/pyproject.toml +4 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/_version.py +2 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/__init__.py +4 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/blueapi_config.yaml +4 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/extruder/i24ssx_Extruder_Collect_py3v2.py +8 -8
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Collect_py3v1.py +36 -4
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Manager_py3v1.py +6 -5
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_beamline.py +2 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_detector.py +5 -5
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/web_gui_plans/general_plans.py +79 -10
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/device_setup_plans/manipulate_sample.py +4 -1
- mx_bluesky-1.5.1/src/mx_bluesky/common/device_setup_plans/robot_load_unload.py +123 -0
- {mx_bluesky-1.4.9/src/mx_bluesky/hyperion → mx_bluesky-1.5.1/src/mx_bluesky/common}/device_setup_plans/utils.py +0 -11
- {mx_bluesky-1.4.9/src/mx_bluesky/common/plans → mx_bluesky-1.5.1/src/mx_bluesky/common/experiment_plans}/common_flyscan_xray_centre_plan.py +12 -19
- mx_bluesky-1.4.9/src/mx_bluesky/hyperion/experiment_plans/grid_detect_then_xray_centre_plan.py → mx_bluesky-1.5.1/src/mx_bluesky/common/experiment_plans/common_grid_detect_then_xray_centre_plan.py +108 -136
- {mx_bluesky-1.4.9/src/mx_bluesky/common/plans → mx_bluesky-1.5.1/src/mx_bluesky/common/experiment_plans}/inner_plans/do_fgs.py +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/experiment_plans/oav_grid_detection_plan.py +5 -13
- {mx_bluesky-1.4.9/src/mx_bluesky/hyperion → mx_bluesky-1.5.1/src/mx_bluesky/common}/experiment_plans/oav_snapshot_plan.py +5 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/ispyb/exp_eye_store.py +26 -24
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/ispyb/ispyb_store.py +0 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/nexus/write_nexus.py +2 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/parameters/components.py +8 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/parameters/constants.py +4 -3
- {mx_bluesky-1.4.9/src/mx_bluesky/hyperion → mx_bluesky-1.5.1/src/mx_bluesky/common}/parameters/device_composites.py +12 -31
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/xrc_result.py +25 -2
- mx_bluesky-1.5.1/src/mx_bluesky/hyperion/device_setup_plans/utils.py +12 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/experiment_plans/__init__.py +3 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/experiment_plans/experiment_registry.py +3 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/experiment_plans/hyperion_flyscan_xray_centre_plan.py +46 -41
- mx_bluesky-1.5.1/src/mx_bluesky/hyperion/experiment_plans/hyperion_grid_detect_then_xray_centre_plan.py +60 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/experiment_plans/load_centre_collect_full_plan.py +26 -8
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/experiment_plans/pin_centre_then_xray_centre_plan.py +26 -15
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/experiment_plans/robot_load_and_change_energy.py +21 -75
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/experiment_plans/robot_load_then_centre_plan.py +10 -8
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/experiment_plans/rotation_scan_plan.py +20 -15
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/external_interaction/agamemnon.py +4 -4
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/external_interaction/callbacks/__main__.py +1 -1
- {mx_bluesky-1.4.9/src/mx_bluesky/hyperion/external_interaction/callbacks/robot_load → mx_bluesky-1.5.1/src/mx_bluesky/hyperion/external_interaction/callbacks/robot_actions}/ispyb_callback.py +28 -19
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_callback.py +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/external_interaction/callbacks/snapshot_callback.py +3 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/external_interaction/config_server.py +0 -11
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/parameters/constants.py +1 -6
- mx_bluesky-1.5.1/src/mx_bluesky/hyperion/parameters/device_composites.py +62 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/parameters/gridscan.py +2 -6
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/parameters/load_centre_collect.py +15 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/parameters/rotation.py +7 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky.egg-info/PKG-INFO +5 -4
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky.egg-info/SOURCES.txt +24 -16
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky.egg-info/requires.txt +4 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/conftest.py +373 -242
- mx_bluesky-1.5.1/tests/system_tests/common/device_setup_plans/test_robot_load_unload.py +59 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/system_tests/hyperion/external_interaction/callbacks/test_external_callbacks.py +3 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/system_tests/hyperion/external_interaction/conftest.py +11 -11
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/system_tests/hyperion/external_interaction/test_agamemnon.py +9 -11
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/system_tests/hyperion/external_interaction/test_exp_eye_dev.py +10 -5
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/system_tests/hyperion/external_interaction/test_ispyb_dev_connection.py +29 -17
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/system_tests/hyperion/external_interaction/test_load_centre_collect_full_plan.py +332 -41
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/system_tests/hyperion/external_interaction/test_nexgen.py +4 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/system_tests/hyperion/external_interaction/test_zocalo_system.py +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/parameter_json_files/example_load_centre_collect_params.json +2 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/parameter_json_files/good_test_load_centre_collect_params.json +21 -12
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/parameter_json_files/good_test_load_centre_collect_params_multi_rotation.json +2 -2
- mx_bluesky-1.5.1/tests/test_data/parameter_json_files/good_test_multi_rotation_scan_parameters.json +55 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/parameter_json_files/good_test_one_multi_rotation_scan_parameters.json +3 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/parameter_json_files/good_test_one_multi_rotation_scan_parameters_nomove.json +3 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/parameter_json_files/good_test_parameters.json +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/parameter_json_files/good_test_rotation_scan_parameters.json +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/parameter_json_files/ispyb_gridscan_system_test_parameters.json +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/parameter_json_files/load_centre_collect_params_top_n_by_max_count.json +2 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/parameter_json_files/test_gridscan_param_defaults.json +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_chip_manager.py +3 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_ft_collect.py +3 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_setup_beamline.py +2 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_setup_detector.py +4 -4
- mx_bluesky-1.5.1/tests/unit_tests/beamlines/i24/serial/web_gui/test_general_plans.py +213 -0
- mx_bluesky-1.5.1/tests/unit_tests/common/device_setup_plans/test_robot_load_unload.py +230 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/experiment_plans/test_change_aperture_then_move_plan.py +1 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common/plans → mx_bluesky-1.5.1/tests/unit_tests/common/experiment_plans}/test_common_flyscan_xray_centre_plan.py +39 -38
- mx_bluesky-1.4.9/tests/unit_tests/hyperion/experiment_plans/test_grid_detect_then_xray_centre_plan.py → mx_bluesky-1.5.1/tests/unit_tests/common/experiment_plans/test_common_grid_detect_then_xray_centre_plan.py +93 -54
- {mx_bluesky-1.4.9/tests/unit_tests/hyperion → mx_bluesky-1.5.1/tests/unit_tests/common}/experiment_plans/test_oav_snapshot_plan.py +7 -6
- {mx_bluesky-1.4.9/tests/unit_tests/common/plans → mx_bluesky-1.5.1/tests/unit_tests/common/experiment_plans}/test_read_hardware.py +3 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/callbacks/common/test_snapshot_callback.py +3 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/callbacks/ispyb/conftest.py +4 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_expeye_interaction.py +58 -23
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/callbacks/test_zocalo_handler.py +15 -15
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_callback.py +36 -29
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_handler.py +47 -33
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_mapping.py +4 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/xray_centre/test_nexus_handler.py +17 -14
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/parameters/test_components.py +8 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/test_do_fgs.py +11 -5
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/test_write_sample_status.py +2 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/conftest.py +106 -7
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/conftest.py +14 -24
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/device_setup_plans/test_utils.py +1 -1
- mx_bluesky-1.5.1/tests/unit_tests/hyperion/experiment_plans/common/test_flyscan_result.py +55 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/experiment_plans/conftest.py +13 -67
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/experiment_plans/test_hyperion_flyscan_xray_centre_plan.py +44 -149
- mx_bluesky-1.5.1/tests/unit_tests/hyperion/experiment_plans/test_hyperion_grid_detect_then_xray_centre_plan.py +228 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/experiment_plans/test_load_centre_collect_full_plan.py +176 -40
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/experiment_plans/test_pin_centre_then_xray_centre_plan.py +33 -26
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/experiment_plans/test_robot_load_and_change_energy.py +30 -46
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/experiment_plans/test_robot_load_then_centre.py +7 -6
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/experiment_plans/test_rotation_scan_plan.py +112 -31
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/callbacks/robot_load/test_robot_load_ispyb_callback.py +42 -25
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/callbacks/rotation/test_ispyb_callback.py +37 -30
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/callbacks/test_rotation_callbacks.py +15 -17
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/conftest.py +5 -4
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/nexus/test_compare_nexus_to_gda_exhaustively.py +108 -4
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/test_agamemnon.py +0 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/test_write_rotation_nexus.py +6 -5
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/parameters/test_parameter_model.py +16 -67
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/test_main_system.py +47 -42
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/build_docker_image.sh +2 -2
- mx_bluesky-1.4.9/docs/developer/code-map/grid_detect_then_xray_centre.drawio.png +0 -0
- mx_bluesky-1.4.9/src/mx_bluesky/hyperion/utils/validation.py +0 -196
- mx_bluesky-1.4.9/tests/test_data/parameter_json_files/good_test_multi_rotation_scan_parameters.json +0 -49
- mx_bluesky-1.4.9/tests/unit_tests/beamlines/i24/serial/web_gui/test_general_plans.py +0 -95
- mx_bluesky-1.4.9/tests/unit_tests/hyperion/experiment_plans/common/test_flyscan_result.py +0 -26
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.copier-answers.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.coveragerc +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.devcontainer/Dockerfile +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.devcontainer/devcontainer.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.dockerignore +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/CODEOWNERS +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/CONTRIBUTING.md +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/ISSUE_TEMPLATE/issue.md +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/actions/install_requirements/action.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/actions/verify-nexus/Dockerfile +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/actions/verify-nexus/action.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/actions/verify-nexus/entrypoint.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/dependabot.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/pages/index.html +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/pages/make_switcher.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/workflows/_check.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/workflows/_dist.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/workflows/_docs.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/workflows/_pypi.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/workflows/_release.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/workflows/_test.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/workflows/_tox.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/workflows/ci.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.github/workflows/periodic.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.gitignore +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.pre-commit-config.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.vscode/extensions.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.vscode/launch.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.vscode/mx-bluesky.code-workspace +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.vscode/mxb-with-core-dependencies.code-workspace +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.vscode/settings.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/.vscode/tasks.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/Dockerfile +0 -0
- /mx_bluesky-1.4.9/Dockerfile.release → /mx_bluesky-1.5.1/Dockerfile.hyperion +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/LICENSE +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/README.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/catalog-info.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/codecov.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/conftest.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/_api.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/_templates/custom-module-template.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/conf.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/code-map/index.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/explanations/callback_and_run_logic.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/explanations/decisions/0001-record-architecture-decisions.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/explanations/decisions/0002-repository-structure.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/explanations/decisions/0003-python-version-support.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/explanations/decisions.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/how-to/contribute.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/how-to/deploy-a-release.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/how-to/dev-ops/build-docs.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/how-to/dev-ops/dev-ops.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/how-to/dev-ops/lint.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/how-to/dev-ops/run-tests.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/how-to/dev-ops/update-tools.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/how-to/get-started.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/reference/standards.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/general/tutorials/profile-tests.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/hyperion/deploying-hyperion.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/hyperion/how-to/update-panda-ioc.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/hyperion/index.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/hyperion/reference/coordinate-systems.puml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/hyperion/reference/coordinate-systems.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/hyperion/reference/gridscan.puml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/hyperion/reference/param-hierarchy.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/hyperion/reference/readme.md +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/hyperion/system-tests.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/index.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/murko-integration/explanations/architecture.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/murko-integration/images/murko_setup.drawio.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/murko-integration/index.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/serial-crystallography-on-i24/explanations/decisions/0001-record-architecture-decisions.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/serial-crystallography-on-i24/explanations/decisions.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/serial-crystallography-on-i24/how-to/environment-setup.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/serial-crystallography-on-i24/how-to/pmac-docs.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/serial-crystallography-on-i24/how-to/run-a-collection.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/serial-crystallography-on-i24/index.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/developer/serial-crystallography-on-i24/project-planning/roadmap.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/images/176701633-b93bba62-b2e7-4740-a863-c6b388beb14f.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/images/207297611-f67dfc25-a3a5-4ade-a1e7-28b54a136fa6.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/images/dls-favicon.ico +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/images/dls-logo.svg +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/images/motor coordinate systems.odg +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/images/motor-coords-omega-0.svg +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/images/motor-coords-omega-alpha.svg +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/docs/index.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/helmcharts/hyperion/Chart.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/helmcharts/hyperion/templates/deployment.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/helmcharts/hyperion/templates/ingress.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/helmcharts/hyperion/templates/service.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/helmcharts/hyperion/templates/zocalo-config.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/helmcharts/hyperion/values.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/helmcharts/redis-to-murko/Chart.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/helmcharts/redis-to-murko/templates/deployment.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/helmcharts/redis-to-murko/values.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/hyperion_other/workflows/add_assignee_when_pr_opened.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/hyperion_other/workflows/assigned_issues_to_in_progress.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/hyperion_other/workflows/get_issue_from_pr.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/hyperion_other/workflows/get_project_data_and_move_column.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/hyperion_other/workflows/linkcheck.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/hyperion_other/workflows/open_prs_to_review.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/hyperion_other/workflows/opened_issues_to_backlog.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/hyperion_other/workflows/pin_versions.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/hyperion_other/workflows/pre_release_workflow.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/hyperion_other/workflows/rework_prs_to_in_progress.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/hyperion_other/workflows/test_data/pip_freeze.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/hyperion_other/workflows/test_data/setup.cfg +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/hyperion_other/workflows/test_data/setup.cfg.pinned +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/hyperion_other/workflows/test_data/setup.cfg.unpinned +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/hyperion_other/workflows/test_pin_versions.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/pull_request_template.md +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/run_hyperion.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/run_hyperion_in_podman.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/setup.cfg +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/__main__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/aithre_lasershaping/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/aithre_lasershaping/beamline_safe.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/aithre_lasershaping/check_goniometer_performance.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/aithre_lasershaping/goniometer_controls.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i04/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i04/callbacks/murko_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i04/redis_to_murko_forwarder.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i04/thawing_plan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i23/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i23/serial.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/dcid.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DetStage.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DiamondExtruder-I24-py3v1.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/microdrop_alignment.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/extruder/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/CustomChip_py3v1.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DetStage.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DiamondChipI24-py3v1.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/ME14E-GeneralPurpose.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/MappingLite-oxford_py3v1.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/PMAC_Command.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/Shutter_Control.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/microdrop_alignment.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/nudgechip.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/pumpprobe-py3v1.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/s1l.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/s2l.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/ft_utils.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_StartUp_py3v1.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_moveonclick.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/log.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/parameters/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/parameters/constants.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/parameters/experiment_parameters.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/cs/cs_maker.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/cs/motor_direction.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/pvar_files/minichip-oxford.pvar +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/pvar_files/oxford.pvar +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/parameters/utils.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/run_extruder.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/run_fixed_target.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/run_serial.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/run_ssx.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/set_visit_directory.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/ca.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/pv.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/pv_abstract.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_zebra_plans.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/start_blueapi.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/web_gui_plans/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/beamlines/i24/serial/write_nexus.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/device_setup_plans/position_detector.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/device_setup_plans/setup_oav.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/device_setup_plans/setup_panda.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/device_setup_plans/xbpm_feedback.py +0 -0
- {mx_bluesky-1.4.9/src/mx_bluesky/common/plans → mx_bluesky-1.5.1/src/mx_bluesky/common/experiment_plans}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/experiment_plans/change_aperture_then_move_plan.py +0 -0
- {mx_bluesky-1.4.9/src/mx_bluesky/common/plans → mx_bluesky-1.5.1/src/mx_bluesky/common/experiment_plans}/inner_plans/__init__ .py +0 -0
- {mx_bluesky-1.4.9/src/mx_bluesky/common/plans → mx_bluesky-1.5.1/src/mx_bluesky/common/experiment_plans}/read_hardware.py +0 -0
- {mx_bluesky-1.4.9/src/mx_bluesky/common/plans → mx_bluesky-1.5.1/src/mx_bluesky/common/experiment_plans}/write_sample_status.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/callbacks/common/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/callbacks/common/abstract_event.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/callbacks/common/grid_detection_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/callbacks/common/ispyb_callback_base.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/callbacks/common/ispyb_mapping.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/callbacks/common/log_uid_tag_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/callbacks/common/logging_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/callbacks/common/plan_reactive_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/callbacks/common/zocalo_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/callbacks/sample_handling/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/callbacks/sample_handling/sample_handling_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/ispyb_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/ispyb_mapping.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/nexus_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/config_server.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/ispyb/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/ispyb/data_model.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/ispyb/ispyb_utils.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/nexus/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/external_interaction/nexus/nexus_utils.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/parameters/gridscan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/preprocessors/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/preprocessors/preprocessors.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/protocols/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/protocols/protocols.py +0 -0
- {mx_bluesky-1.4.9/src/mx_bluesky/hyperion/device_setup_plans → mx_bluesky-1.5.1/src/mx_bluesky/common/utils}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/utils/context.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/utils/exceptions.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/utils/log.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/utils/tracing.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/common/utils/utils.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/definitions.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/__main__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/baton_handler.py +0 -0
- {mx_bluesky-1.4.9/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation → mx_bluesky-1.5.1/src/mx_bluesky/hyperion/device_setup_plans}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/device_setup_plans/dcm_pitch_roll_mirror_adjuster.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/device_setup_plans/setup_panda.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/device_setup_plans/setup_zebra.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/device_setup_plans/smargon.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/experiment_plans/optimise_attenuation_plan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/experiment_plans/pin_tip_centring_plan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/experiment_plans/set_energy_plan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/external_interaction/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/external_interaction/callbacks/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests → mx_bluesky-1.5.1/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_mapping.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/nexus_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/parameters/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/parameters/cli.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/parameters/components.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/parameters/robot_load.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/resources/panda/panda-gridscan.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/utils/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/hyperion/utils/context.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky/jupyter_example.ipynb +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky.egg-info/dependency_links.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky.egg-info/entry_points.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/src/mx_bluesky.egg-info/top_level.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/start_jupyter.sh +0 -0
- {mx_bluesky-1.4.9/tests/system_tests → mx_bluesky-1.5.1/tests}/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/system_tests/hyperion → mx_bluesky-1.5.1/tests/system_tests}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/system_tests/conftest.py +0 -0
- {mx_bluesky-1.4.9/tests/system_tests/hyperion/external_interaction → mx_bluesky-1.5.1/tests/system_tests/hyperion}/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/system_tests/hyperion/external_interaction/callbacks → mx_bluesky-1.5.1/tests/system_tests/hyperion/external_interaction}/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests → mx_bluesky-1.5.1/tests/system_tests/hyperion/external_interaction/callbacks}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/system_tests/hyperion/external_interaction/test_config_service.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/agamemnon/example_collect_multipin.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/agamemnon/example_native.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/ispyb-test-credentials.cfg +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/nexus_files/README.md +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/nexus_files/fake_data.h5 +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/nexus_files/rotation/ins_8_5.nxs +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/nexus_files/rotation/ins_8_5_expected_output.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/nexus_files/rotation/ins_8_5_meta.h5.gz +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5.nxs +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5_expected_output.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5_meta.h5.gz +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/parameter_json_files/good_test_grid_with_edge_detect_parameters.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/parameter_json_files/good_test_pin_centre_then_xray_centre_parameters.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/parameter_json_files/good_test_robot_load_and_centre_params.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/parameter_json_files/good_test_robot_load_params.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/parameter_json_files/test_oav_snapshot_params.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/rabbitmq-test-credentials.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/scratch/README +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_OAVCentring.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_beamline_dcm_pitch_converter.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_beamline_dcm_roll_converter.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_beamline_parameters.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_beamline_vfm_lat_converter.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_config.cfg +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_daq_configuration/OAVCentring_hyperion.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_daq_configuration/display.configuration +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_daq_configuration/domain/beamlineParameters +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_daq_configuration/lookup/BeamLineEnergy_DCM_Pitch_converter.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_daq_configuration/lookup/BeamLineEnergy_DCM_Roll_converter.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_daq_configuration/lookup/BeamLine_Undulator_toGap.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_daq_configuration/lookup/test_det_dist_converter.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_det_dist_converter.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_display.configuration +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_images/generate_snapshot_input.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_images/generate_snapshot_output.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_images/ins_15_33_0.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_images/ins_15_33_90.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_images/ins_15_33_expected_0.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_images/ins_15_33_expected_270.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_images/thau_1_91_0.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_images/thau_1_91_90.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_images/thau_1_91_expected_0.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_images/thau_1_91_expected_270.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_jCameraManZoomLevels.xml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_lookup_table.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/test_mirror_focus.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/test_data/zocalo-test-configuration.yaml +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/beamlines → mx_bluesky-1.5.1/tests/unit_tests}/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/beamlines/i24 → mx_bluesky-1.5.1/tests/unit_tests/beamlines}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/aithre_lasershaping/test_beamline_safe.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/aithre_lasershaping/test_check_goniometer_performance.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/aithre_lasershaping/test_goniometer_controls.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i04/callbacks/test_murko_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i04/test_redis_to_murko_forwarder.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i04/test_thawing.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i23/test_serial.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/beamlines/i24/serial → mx_bluesky-1.5.1/tests/unit_tests/beamlines/i24}/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/beamlines/i24/serial/extruder → mx_bluesky-1.5.1/tests/unit_tests/beamlines/i24/serial}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/conftest.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/beamlines/i24/serial/fixed_target → mx_bluesky-1.5.1/tests/unit_tests/beamlines/i24/serial/extruder}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/extruder/test_extruder_collect.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/beamlines/i24/serial/setup_beamline → mx_bluesky-1.5.1/tests/unit_tests/beamlines/i24/serial/fixed_target}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/fixed_target/conftest.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_chip_startup.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_moveonclick.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/parameters/test_parameter_model.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/parameters/test_utils.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/beamlines/i24/serial/web_gui → mx_bluesky-1.5.1/tests/unit_tests/beamlines/i24/serial/setup_beamline}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_pv_abstract.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_zebra_plans.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/test_dcid.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/test_log.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/test_run_serial.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/beamlines/i24/serial/test_write_nexus.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common → mx_bluesky-1.5.1/tests/unit_tests/beamlines/i24/serial/web_gui}/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common/experiment_plans → mx_bluesky-1.5.1/tests/unit_tests/common}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/device_setup_plans/test_setup_panda.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/device_setup_plans/test_xbpm_feedback.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common/external_interaction → mx_bluesky-1.5.1/tests/unit_tests/common/experiment_plans}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/experiment_plans/test_grid_detection_plan.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common/external_interaction/callbacks → mx_bluesky-1.5.1/tests/unit_tests/common/external_interaction}/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common/external_interaction/callbacks/common → mx_bluesky-1.5.1/tests/unit_tests/common/external_interaction/callbacks}/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common/external_interaction/callbacks/ispyb → mx_bluesky-1.5.1/tests/unit_tests/common/external_interaction/callbacks/common}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/callbacks/common/test_abstract_event.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common/parameters → mx_bluesky-1.5.1/tests/unit_tests/common/external_interaction/callbacks/ispyb}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_gridscan_ispyb_store_3d.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_rotation_ispyb_store.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/callbacks/test_plan_reactive_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/conftest.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/nexus/test_nexus_utils.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/test_config_server.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/test_ispyb_utils.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/external_interaction/xray_centre/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common/plans → mx_bluesky-1.5.1/tests/unit_tests/common/parameters}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/preprocessors/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/preprocessors/test_preprocessors.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/utils/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/common/utils/test_log.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/device_setup_plans/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/device_setup_plans/test_dcm_pitch_roll_mirror_adjuster.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/device_setup_plans/test_manipulate_sample.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/device_setup_plans/test_setup_oav.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/device_setup_plans/test_setup_panda.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/device_setup_plans/test_zebra_setup.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/experiment_plans/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/experiment_plans/test_experiment_registry.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/experiment_plans/test_optimise_attenuation_plan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/experiment_plans/test_pin_tip_centring.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/experiment_plans/test_set_energy_plan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/callbacks/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/callbacks/conftest.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/callbacks/rotation/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/callbacks/sample_handling/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/callbacks/sample_handling/test_sample_handling_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/callbacks/test_external_callbacks.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/nexus/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/nexus/test_write_nexus.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000001.h5 +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000002.h5 +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000003.h5 +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/parameters/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/test_baton_handler.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/test_exceptions.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/test_utils.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/utils/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/utils/test_callback_sim.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/hyperion/utils/test_context.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/tests/unit_tests/test_cli.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/beam_off_trickery.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/build_imginfo.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/deploy/create_venv.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/deploy/deploy_edm_for_ssx.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/deploy/deploy_mx_bluesky.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/deploy/deploy_mx_bluesky_app_to_k8s.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/deploy/test_deploy.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/dev_jaeger_container.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/dls_dev_env.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/docker/entrypoint.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/docker/healthcheck.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/docker/i03-compose.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/generate_plantuml.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/graylog/Dockerfile +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/graylog/tcp_input.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/procserv_ioc_start.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/run_imginfo.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/setup_graylog.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.1}/utility_scripts/strip_metafile.py +0 -0
|
@@ -30,14 +30,25 @@ jobs:
|
|
|
30
30
|
DOCKER_BUILD_RECORD_UPLOAD: false
|
|
31
31
|
with:
|
|
32
32
|
context: .
|
|
33
|
-
file: Dockerfile.
|
|
33
|
+
file: Dockerfile.hyperion
|
|
34
|
+
load: true
|
|
35
|
+
|
|
36
|
+
- name: Build and export Dockerfile.blueapi to local cache
|
|
37
|
+
uses: docker/build-push-action@v6
|
|
38
|
+
env:
|
|
39
|
+
DOCKER_BUILD_RECORD_UPLOAD: false
|
|
40
|
+
with:
|
|
41
|
+
context: .
|
|
42
|
+
file: Dockerfile.blueapi
|
|
34
43
|
load: true
|
|
35
44
|
|
|
36
45
|
- name: Create tags for publishing image
|
|
37
46
|
id: meta
|
|
38
47
|
uses: docker/metadata-action@v5
|
|
39
48
|
with:
|
|
40
|
-
images:
|
|
49
|
+
images: |
|
|
50
|
+
ghcr.io/${{ github.repository }}
|
|
51
|
+
ghcr.io/${{ github.repository }}-blueapi
|
|
41
52
|
tags: |
|
|
42
53
|
type=ref,event=tag
|
|
43
54
|
type=raw,value=latest
|
|
@@ -51,7 +62,19 @@ jobs:
|
|
|
51
62
|
# Docker cache and publish it
|
|
52
63
|
with:
|
|
53
64
|
context: .
|
|
54
|
-
file: Dockerfile.
|
|
65
|
+
file: Dockerfile.hyperion
|
|
66
|
+
push: true
|
|
67
|
+
tags: ${{ steps.meta.outputs.tags }}
|
|
68
|
+
labels: ${{ steps.meta.outputs.labels }}
|
|
69
|
+
|
|
70
|
+
- name: Push Dockerfile.blueapi image to container registry
|
|
71
|
+
if: github.ref_type == 'tag'
|
|
72
|
+
uses: docker/build-push-action@v6
|
|
73
|
+
env:
|
|
74
|
+
DOCKER_BUILD_RECORD_UPLOAD: false
|
|
75
|
+
with:
|
|
76
|
+
context: .
|
|
77
|
+
file: Dockerfile.blueapi
|
|
55
78
|
push: true
|
|
56
79
|
tags: ${{ steps.meta.outputs.tags }}
|
|
57
80
|
labels: ${{ steps.meta.outputs.labels }}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# See https://github.com/DiamondLightSource/mx-bluesky/issues/1004
|
|
2
|
+
FROM ghcr.io/diamondlightsource/blueapi:0.10.1
|
|
3
|
+
|
|
4
|
+
ARG DEBIAN_FRONTEND=noninteractive
|
|
5
|
+
|
|
6
|
+
RUN apt update -y && apt upgrade -y
|
|
7
|
+
# Needed for python cv2 dependency
|
|
8
|
+
RUN apt install -y libgl1 libglib2.0-0
|
|
9
|
+
|
|
10
|
+
RUN /venv/bin/pip install mx-bluesky
|
|
11
|
+
|
|
12
|
+
# Needed so that Blueapi's setup-scratch stage has permission to modify dependencies installed
|
|
13
|
+
# in the above pip installation
|
|
14
|
+
RUN mkdir -p /.cache/pip; chmod -R 777 /venv /.cache/pip
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mx-bluesky
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.5.1
|
|
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
|
|
@@ -221,7 +221,7 @@ Requires-Dist: ispyb
|
|
|
221
221
|
Requires-Dist: jupyterlab
|
|
222
222
|
Requires-Dist: matplotlib
|
|
223
223
|
Requires-Dist: nexgen>=0.11.0
|
|
224
|
-
Requires-Dist: numpy
|
|
224
|
+
Requires-Dist: numpy==2.2.6
|
|
225
225
|
Requires-Dist: opencv-python
|
|
226
226
|
Requires-Dist: opentelemetry-distro
|
|
227
227
|
Requires-Dist: opentelemetry-exporter-otlp
|
|
@@ -233,13 +233,14 @@ Requires-Dist: requests
|
|
|
233
233
|
Requires-Dist: scanspec
|
|
234
234
|
Requires-Dist: scipy
|
|
235
235
|
Requires-Dist: semver
|
|
236
|
+
Requires-Dist: deepdiff
|
|
236
237
|
Requires-Dist: matplotlib
|
|
237
|
-
Requires-Dist: blueapi>=0.
|
|
238
|
+
Requires-Dist: blueapi>=0.11.1
|
|
238
239
|
Requires-Dist: daq-config-server==0.1.1
|
|
239
240
|
Requires-Dist: ophyd>=1.10.5
|
|
240
241
|
Requires-Dist: ophyd-async>=0.10.0a2
|
|
241
242
|
Requires-Dist: bluesky>=1.13.1
|
|
242
|
-
Requires-Dist: dls-dodal==1.
|
|
243
|
+
Requires-Dist: dls-dodal==1.51.0
|
|
243
244
|
Provides-Extra: dev
|
|
244
245
|
Requires-Dist: black; extra == "dev"
|
|
245
246
|
Requires-Dist: build; extra == "dev"
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Grid Detect Then Xray Centre
|
|
2
2
|
============================
|
|
3
3
|
|
|
4
|
-
The aim of this page is to provide a general overview of the
|
|
4
|
+
The aim of this page is to provide a general overview of the ``grid_detect_then_xray_centre_plan``.
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The code for the ``grid_detect_then_xray_centre`` plan is now entirely ``mx-bluesky/common/`` and `dodal <https://github.com/DiamondLightSource/dodal>`_. There is a new Hyperion entry point, ``hyperion_grid_detect_then_xray_centre`` which calls this common plan, setting up Hyperion features for it. There will soon be an i04 entry point that calls the common plan in the same way.
|
|
7
7
|
|
|
8
8
|
There are then a number of plans that make up the ``grid_detect_then_xray_centre_plan`` plan. Some important ones:
|
|
9
9
|
|
|
@@ -11,7 +11,7 @@ There are then a number of plans that make up the ``grid_detect_then_xray_centre
|
|
|
11
11
|
* :ref:`flyscan_xray_centre_plan<flyscan>` - Triggers a hardware-based grid scan and moves to the X-ray centre as returned from ``zocalo``.
|
|
12
12
|
* :ref:`grid_detect_then_xray_centre_plan<grid-detect-xrc>` - This top-level plan performs an :ref:`OAV grid detection <grid-detect>` then a :ref:`flyscan x-ray centre <flyscan>`.
|
|
13
13
|
|
|
14
|
-
The diagram below shows all the plans that make up the ``grid_detect_then_xray_centre_plan``.
|
|
14
|
+
The diagram below shows all the plans that make up the ``grid_detect_then_xray_centre_plan``.
|
|
15
15
|
|
|
16
16
|
.. image:: grid_detect_then_xray_centre.drawio.png
|
|
17
17
|
|
|
@@ -20,21 +20,22 @@ The diagram below shows all the plans that make up the ``grid_detect_then_xray_c
|
|
|
20
20
|
Grid Detect Then Xray Centre Plan
|
|
21
21
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
22
22
|
|
|
23
|
-
`This plan <https://github.com/DiamondLightSource/mx-bluesky/blob/main/src/mx_bluesky/
|
|
23
|
+
`This plan <https://github.com/DiamondLightSource/mx-bluesky/blob/main/src/mx_bluesky/common/experiment_plans/common_grid_detect_then_xray_centre_plan.py>`__ does the following, in roughly this order:
|
|
24
24
|
|
|
25
25
|
1. If called standalone, start preparing for data collection.
|
|
26
|
-
2.
|
|
27
|
-
3.
|
|
28
|
-
4.
|
|
29
|
-
5.
|
|
30
|
-
6.
|
|
26
|
+
2. Move the beamstop into place if it isn't already.
|
|
27
|
+
3. Perform an :ref:`OAV grid detection <grid-detect>`.
|
|
28
|
+
4. Convert the parameters calculated in step 2 into something we can send to the flyscan X-ray centre.
|
|
29
|
+
5. Move the backlight out, set the aperture to small, and wait for the detector to finish moving.
|
|
30
|
+
6. Perform a :ref:`flyscan X-ray centre <flyscan>`.
|
|
31
|
+
7. Move the sample based on the results of step 5.
|
|
31
32
|
|
|
32
33
|
.. _grid-detect:
|
|
33
34
|
|
|
34
35
|
OAV Grid Detection
|
|
35
36
|
~~~~~~~~~~~~~~~~~~
|
|
36
37
|
|
|
37
|
-
`This plan <https://github.com/DiamondLightSource/mx-bluesky/blob/main/src/mx_bluesky/
|
|
38
|
+
`This plan <https://github.com/DiamondLightSource/mx-bluesky/blob/main/src/mx_bluesky/common/experiment_plans/oav_grid_detection_plan.py>`__ does the following, in roughly this order:
|
|
38
39
|
|
|
39
40
|
1. Move to omega 0.
|
|
40
41
|
2. Calculate the 2D grid size using the edge arrays from the OAV.
|
|
@@ -48,7 +49,7 @@ OAV Grid Detection
|
|
|
48
49
|
Flyscan Xray Centre No Move
|
|
49
50
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
50
51
|
|
|
51
|
-
`This plan <https://github.com/DiamondLightSource/mx-bluesky/blob/main/src/mx_bluesky/
|
|
52
|
+
`This plan <https://github.com/DiamondLightSource/mx-bluesky/blob/main/src/mx_bluesky/common/experiment_plans/common_flyscan_xray_centre_plan.py>`__ does the following, in roughly this order:
|
|
52
53
|
|
|
53
54
|
1. Move to the desired transmission (and turn off xbpm feedback).
|
|
54
55
|
2. Move to omega 0.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
Containerised mx-bluesky
|
|
2
|
+
========================
|
|
3
|
+
|
|
4
|
+
There are currently two images associated with this repository which are pushed on release: hyperion, and mx-bluesky-blueapi.
|
|
5
|
+
|
|
6
|
+
The Hyperion image exists because Hyperion was developed before BlueAPI was production-ready, and so doesn't use BlueAPI to schedule plans. This image is only really relevant for i03, and currently isn't used in production anywhere
|
|
7
|
+
|
|
8
|
+
The ``mx-bluesky-blueapi`` image exists as a minor extension of BlueAPI's image. BlueAPI's image contains the dependencies of BlueAPI, as well as the dependencies of BlueAPI, which includes dodal. When the BlueAPI service is launched, it will do a ``pip install --no deps`` of the plan repository. For MX, this means ``mx-bluesky`` gets installed without any of its dependencies. For this reason, we have created an ``mx-bluesky-blueapi`` image which installs these extra dependencies.
|
|
9
|
+
|
|
10
|
+
This image can be used with BlueAPI's original helmchart, the only change required in the ``values.yaml`` is::
|
|
11
|
+
|
|
12
|
+
image:
|
|
13
|
+
repository: ghcr.io/diamondlightsource/mx-bluesky-blueapi
|
|
14
|
+
tag: "{desired_version}"
|
|
@@ -10,12 +10,15 @@ Release
|
|
|
10
10
|
=======
|
|
11
11
|
|
|
12
12
|
1. Create a new branch from main named pre followed by the release version e.g. pre_v0.1.0. The release versions should look like ``v{major}.{minor}.{patch}``.
|
|
13
|
-
2. On this branch pin the up-to-date version of dodal and the latest release of nexgen if necessary.
|
|
14
|
-
3.
|
|
15
|
-
4.
|
|
16
|
-
5.
|
|
17
|
-
6.
|
|
18
|
-
7.
|
|
13
|
+
2. On this branch pin the up-to-date version of dodal and the latest release of nexgen if necessary, then push to GitHub.
|
|
14
|
+
3. Make sure the CI is passing for this new pre-release branch.
|
|
15
|
+
4. Go `here <https://github.com/DiamondLightSource/mx-bluesky/releases/new>`_.
|
|
16
|
+
5. Select Choose a new tag and type the version of the release, then select the branch created in step 1 as the target.
|
|
17
|
+
6. Click on Generate release notes. This will create a starting set of release notes based on PR titles since the last release.
|
|
18
|
+
7. You should now manually go through each line on the release notes and read it from the perspective of a beamline scientist. It should be clear from each what the change means to the beamline and should have links to easily find further info.
|
|
19
|
+
8. Publish the release
|
|
20
|
+
|
|
21
|
+
NOTE FOR USING THE MX-BLUESKY-BLUEAPI IMAGE: If using this image with BlueAPI's helmchart for deployment, the version of dodal which is installed will be the version which is pinned in the BlueAPI, rather than what's in mx-bluesky's pyproject.toml. Before releasing, you should pin BlueAPI to a version which uses a dodal version which is compatible with itself AND mx-bluesky. The deployment will fail if BlueAPI has no version which works with the desired dodal version
|
|
19
22
|
|
|
20
23
|
------------------------
|
|
21
24
|
Deciding release numbers
|
|
@@ -24,7 +24,7 @@ dependencies = [
|
|
|
24
24
|
"jupyterlab",
|
|
25
25
|
"matplotlib",
|
|
26
26
|
"nexgen >= 0.11.0",
|
|
27
|
-
"numpy",
|
|
27
|
+
"numpy == 2.2.6", # See https://github.com/DiamondLightSource/mx-bluesky/issues/1119
|
|
28
28
|
"opencv-python", # Needed for I24 ssx moveonclick. To be changed to headless once this is moved to separate ui.
|
|
29
29
|
"opentelemetry-distro",
|
|
30
30
|
"opentelemetry-exporter-otlp",
|
|
@@ -36,17 +36,18 @@ dependencies = [
|
|
|
36
36
|
"scanspec",
|
|
37
37
|
"scipy",
|
|
38
38
|
"semver",
|
|
39
|
+
"deepdiff",
|
|
39
40
|
"matplotlib",
|
|
40
41
|
#
|
|
41
42
|
# These dependencies may be issued as pre-release versions and should have a pin constraint
|
|
42
43
|
# as by default pip-install will not upgrade to a pre-release.
|
|
43
44
|
#
|
|
44
|
-
"blueapi >= 0.
|
|
45
|
+
"blueapi >= 0.11.1",
|
|
45
46
|
"daq-config-server == 0.1.1",
|
|
46
47
|
"ophyd >= 1.10.5",
|
|
47
48
|
"ophyd-async >= 0.10.0a2",
|
|
48
49
|
"bluesky >= 1.13.1",
|
|
49
|
-
"dls-dodal == 1.
|
|
50
|
+
"dls-dodal == 1.51.0",
|
|
50
51
|
]
|
|
51
52
|
|
|
52
53
|
|
|
@@ -2,7 +2,8 @@ from mx_bluesky.beamlines.i24.serial.web_gui_plans.general_plans import (
|
|
|
2
2
|
gui_gonio_move_on_click,
|
|
3
3
|
gui_move_backlight,
|
|
4
4
|
gui_move_detector,
|
|
5
|
-
|
|
5
|
+
gui_run_chip_collection,
|
|
6
|
+
gui_set_zoom_level,
|
|
6
7
|
gui_sleep,
|
|
7
8
|
gui_stage_move_on_click,
|
|
8
9
|
)
|
|
@@ -57,6 +58,7 @@ __all__ = [
|
|
|
57
58
|
"gui_gonio_move_on_click",
|
|
58
59
|
"gui_sleep",
|
|
59
60
|
"gui_move_detector",
|
|
60
|
-
"
|
|
61
|
+
"gui_run_chip_collection",
|
|
61
62
|
"gui_move_backlight",
|
|
63
|
+
"gui_set_zoom_level",
|
|
62
64
|
]
|
|
@@ -23,8 +23,8 @@ from dodal.devices.i24.beamstop import Beamstop
|
|
|
23
23
|
from dodal.devices.i24.dcm import DCM
|
|
24
24
|
from dodal.devices.i24.dual_backlight import DualBacklight
|
|
25
25
|
from dodal.devices.i24.focus_mirrors import FocusMirrorsMode
|
|
26
|
-
from dodal.devices.i24.i24_detector_motion import DetectorMotion
|
|
27
26
|
from dodal.devices.i24.pilatus_metadata import PilatusMetadata
|
|
27
|
+
from dodal.devices.motors import YZStage
|
|
28
28
|
from dodal.devices.zebra.zebra import Zebra
|
|
29
29
|
|
|
30
30
|
from mx_bluesky.beamlines.i24.serial.dcid import (
|
|
@@ -70,7 +70,7 @@ def flush_print(text):
|
|
|
70
70
|
|
|
71
71
|
@log_on_entry
|
|
72
72
|
def initialise_extruder(
|
|
73
|
-
detector_stage:
|
|
73
|
+
detector_stage: YZStage = inject("detector_motion"),
|
|
74
74
|
) -> MsgGenerator:
|
|
75
75
|
SSX_LOGGER.info("Initialise Parameters for extruder data collection on I24.")
|
|
76
76
|
|
|
@@ -98,7 +98,7 @@ def initialise_extruder(
|
|
|
98
98
|
def laser_check(
|
|
99
99
|
mode: str,
|
|
100
100
|
zebra: Zebra = inject("zebra"),
|
|
101
|
-
detector_stage:
|
|
101
|
+
detector_stage: YZStage = inject("detector_motion"),
|
|
102
102
|
) -> MsgGenerator:
|
|
103
103
|
"""Plan to open the shutter and check the laser beam from the viewer by pressing \
|
|
104
104
|
'Laser On' and 'Laser Off' buttons on the edm.
|
|
@@ -138,7 +138,7 @@ def laser_check(
|
|
|
138
138
|
|
|
139
139
|
@log_on_entry
|
|
140
140
|
def enter_hutch(
|
|
141
|
-
detector_stage:
|
|
141
|
+
detector_stage: YZStage = inject("detector_motion"),
|
|
142
142
|
) -> MsgGenerator:
|
|
143
143
|
"""Move the detector stage before entering hutch."""
|
|
144
144
|
yield from bps.mv(detector_stage.z, SAFE_DET_Z)
|
|
@@ -146,12 +146,12 @@ def enter_hutch(
|
|
|
146
146
|
|
|
147
147
|
|
|
148
148
|
@log_on_entry
|
|
149
|
-
def read_parameters(detector_stage:
|
|
149
|
+
def read_parameters(detector_stage: YZStage, attenuator: ReadOnlyAttenuator):
|
|
150
150
|
""" Read the parameters from user input and create the parameter model for an \
|
|
151
151
|
extruder collection.
|
|
152
152
|
|
|
153
153
|
Args:
|
|
154
|
-
detector_stage (
|
|
154
|
+
detector_stage (YZStage): The detector stage device.
|
|
155
155
|
attenuator (ReadOnlyAttenuator): A read-only attenuator device to get the \
|
|
156
156
|
transmission value.
|
|
157
157
|
|
|
@@ -208,7 +208,7 @@ def main_extruder_plan(
|
|
|
208
208
|
aperture: Aperture,
|
|
209
209
|
backlight: DualBacklight,
|
|
210
210
|
beamstop: Beamstop,
|
|
211
|
-
detector_stage:
|
|
211
|
+
detector_stage: YZStage,
|
|
212
212
|
shutter: HutchShutter,
|
|
213
213
|
dcm: DCM,
|
|
214
214
|
mirrors: FocusMirrorsMode,
|
|
@@ -500,7 +500,7 @@ def run_extruder_plan(
|
|
|
500
500
|
aperture: Aperture = inject("aperture"),
|
|
501
501
|
backlight: DualBacklight = inject("backlight"),
|
|
502
502
|
beamstop: Beamstop = inject("beamstop"),
|
|
503
|
-
detector_stage:
|
|
503
|
+
detector_stage: YZStage = inject("detector_motion"),
|
|
504
504
|
shutter: HutchShutter = inject("shutter"),
|
|
505
505
|
dcm: DCM = inject("dcm"),
|
|
506
506
|
mirrors: FocusMirrorsMode = inject("focus_mirrors"),
|
|
@@ -18,9 +18,9 @@ from dodal.devices.i24.beamstop import Beamstop
|
|
|
18
18
|
from dodal.devices.i24.dcm import DCM
|
|
19
19
|
from dodal.devices.i24.dual_backlight import DualBacklight
|
|
20
20
|
from dodal.devices.i24.focus_mirrors import FocusMirrorsMode
|
|
21
|
-
from dodal.devices.i24.i24_detector_motion import DetectorMotion
|
|
22
21
|
from dodal.devices.i24.pilatus_metadata import PilatusMetadata
|
|
23
22
|
from dodal.devices.i24.pmac import PMAC
|
|
23
|
+
from dodal.devices.motors import YZStage
|
|
24
24
|
from dodal.devices.zebra.zebra import Zebra
|
|
25
25
|
|
|
26
26
|
from mx_bluesky.beamlines.i24.serial.dcid import (
|
|
@@ -269,7 +269,7 @@ def start_i24(
|
|
|
269
269
|
aperture: Aperture,
|
|
270
270
|
backlight: DualBacklight,
|
|
271
271
|
beamstop: Beamstop,
|
|
272
|
-
detector_stage:
|
|
272
|
+
detector_stage: YZStage,
|
|
273
273
|
shutter: HutchShutter,
|
|
274
274
|
parameters: FixedTargetParameters,
|
|
275
275
|
dcm: DCM,
|
|
@@ -504,7 +504,7 @@ def main_fixed_target_plan(
|
|
|
504
504
|
aperture: Aperture,
|
|
505
505
|
backlight: DualBacklight,
|
|
506
506
|
beamstop: Beamstop,
|
|
507
|
-
detector_stage:
|
|
507
|
+
detector_stage: YZStage,
|
|
508
508
|
shutter: HutchShutter,
|
|
509
509
|
dcm: DCM,
|
|
510
510
|
mirrors: FocusMirrorsMode,
|
|
@@ -655,7 +655,7 @@ def run_fixed_target_plan(
|
|
|
655
655
|
aperture: Aperture = inject("aperture"),
|
|
656
656
|
backlight: DualBacklight = inject("backlight"),
|
|
657
657
|
beamstop: Beamstop = inject("beamstop"),
|
|
658
|
-
detector_stage:
|
|
658
|
+
detector_stage: YZStage = inject("detector_motion"),
|
|
659
659
|
shutter: HutchShutter = inject("shutter"),
|
|
660
660
|
dcm: DCM = inject("dcm"),
|
|
661
661
|
mirrors: FocusMirrorsMode = inject("focus_mirrors"),
|
|
@@ -684,6 +684,38 @@ def run_fixed_target_plan(
|
|
|
684
684
|
# DCID instance - do not create yet
|
|
685
685
|
dcid = DCID(emit_errors=False, expt_params=parameters)
|
|
686
686
|
|
|
687
|
+
yield from run_plan_in_wrapper(
|
|
688
|
+
zebra,
|
|
689
|
+
pmac,
|
|
690
|
+
aperture,
|
|
691
|
+
backlight,
|
|
692
|
+
beamstop,
|
|
693
|
+
detector_stage,
|
|
694
|
+
shutter,
|
|
695
|
+
dcm,
|
|
696
|
+
mirrors,
|
|
697
|
+
beam_center_device,
|
|
698
|
+
parameters,
|
|
699
|
+
dcid,
|
|
700
|
+
pilatus_metadata,
|
|
701
|
+
)
|
|
702
|
+
|
|
703
|
+
|
|
704
|
+
def run_plan_in_wrapper(
|
|
705
|
+
zebra: Zebra,
|
|
706
|
+
pmac: PMAC,
|
|
707
|
+
aperture: Aperture,
|
|
708
|
+
backlight: DualBacklight,
|
|
709
|
+
beamstop: Beamstop,
|
|
710
|
+
detector_stage: YZStage,
|
|
711
|
+
shutter: HutchShutter,
|
|
712
|
+
dcm: DCM,
|
|
713
|
+
mirrors: FocusMirrorsMode,
|
|
714
|
+
beam_center_device: DetectorBeamCenter,
|
|
715
|
+
parameters: FixedTargetParameters,
|
|
716
|
+
dcid: DCID,
|
|
717
|
+
pilatus_metadata: PilatusMetadata,
|
|
718
|
+
) -> MsgGenerator:
|
|
687
719
|
yield from bpp.contingency_wrapper(
|
|
688
720
|
main_fixed_target_plan(
|
|
689
721
|
zebra,
|
|
@@ -16,8 +16,8 @@ from dodal.common import inject
|
|
|
16
16
|
from dodal.devices.attenuator.attenuator import ReadOnlyAttenuator
|
|
17
17
|
from dodal.devices.i24.beamstop import Beamstop, BeamstopPositions
|
|
18
18
|
from dodal.devices.i24.dual_backlight import BacklightPositions, DualBacklight
|
|
19
|
-
from dodal.devices.i24.i24_detector_motion import DetectorMotion
|
|
20
19
|
from dodal.devices.i24.pmac import PMAC, EncReset, LaserSettings
|
|
20
|
+
from dodal.devices.motors import YZStage
|
|
21
21
|
|
|
22
22
|
from mx_bluesky.beamlines.i24.serial.fixed_target.ft_utils import (
|
|
23
23
|
ChipType,
|
|
@@ -121,14 +121,14 @@ def _is_checker_pattern() -> bool:
|
|
|
121
121
|
|
|
122
122
|
@log_on_entry
|
|
123
123
|
def read_parameters(
|
|
124
|
-
detector_stage:
|
|
124
|
+
detector_stage: YZStage,
|
|
125
125
|
attenuator: ReadOnlyAttenuator,
|
|
126
126
|
) -> MsgGenerator:
|
|
127
127
|
""" Read the parameters from user input and create the parameter model for a fixed \
|
|
128
128
|
target collection.
|
|
129
129
|
|
|
130
130
|
Args:
|
|
131
|
-
detector_stage (
|
|
131
|
+
detector_stage (YZStage): The detector stage device.
|
|
132
132
|
attenuator (ReadOnlyAttenuator): A read-only attenuator device to get the \
|
|
133
133
|
transmission value.
|
|
134
134
|
|
|
@@ -256,6 +256,7 @@ def upload_chip_map_to_geobrick(pmac: PMAC, chip_map: list[int]) -> MsgGenerator
|
|
|
256
256
|
"""
|
|
257
257
|
SSX_LOGGER.info("Uploading Parameters for Oxford Chip to the GeoBrick")
|
|
258
258
|
SSX_LOGGER.info(f"Chipid {ChipType.Oxford}, width {OXFORD_CHIP_WIDTH}")
|
|
259
|
+
SSX_LOGGER.warning(f"MAP TO UPLOAD: {chip_map}")
|
|
259
260
|
for block in range(1, 65):
|
|
260
261
|
value = 1 if block in chip_map else 0
|
|
261
262
|
pvar = PVAR_TEMPLATE % block
|
|
@@ -264,7 +265,7 @@ def upload_chip_map_to_geobrick(pmac: PMAC, chip_map: list[int]) -> MsgGenerator
|
|
|
264
265
|
yield from bps.abs_set(pmac.pmac_string, pvar_str, wait=True)
|
|
265
266
|
# Wait for PMAC to be done processing PVAR string
|
|
266
267
|
yield from bps.sleep(0.02)
|
|
267
|
-
SSX_LOGGER.
|
|
268
|
+
SSX_LOGGER.info("Upload parameters done.")
|
|
268
269
|
|
|
269
270
|
|
|
270
271
|
@log_on_entry
|
|
@@ -565,7 +566,7 @@ def moveto_preset(
|
|
|
565
566
|
pmac: PMAC = inject("pmac"),
|
|
566
567
|
beamstop: Beamstop = inject("beamstop"),
|
|
567
568
|
backlight: DualBacklight = inject("backlight"),
|
|
568
|
-
det_stage:
|
|
569
|
+
det_stage: YZStage = inject("detector_motion"),
|
|
569
570
|
) -> MsgGenerator:
|
|
570
571
|
# Non Chip Specific Move
|
|
571
572
|
if place == "zero":
|
|
@@ -7,7 +7,7 @@ from dodal.devices.i24.beam_center import DetectorBeamCenter
|
|
|
7
7
|
from dodal.devices.i24.beamstop import Beamstop, BeamstopPositions
|
|
8
8
|
from dodal.devices.i24.dcm import DCM
|
|
9
9
|
from dodal.devices.i24.dual_backlight import BacklightPositions, DualBacklight
|
|
10
|
-
from dodal.devices.
|
|
10
|
+
from dodal.devices.motors import YZStage
|
|
11
11
|
from dodal.devices.util.lookup_tables import (
|
|
12
12
|
linear_interpolation_lut,
|
|
13
13
|
parse_lookup_table,
|
|
@@ -69,7 +69,7 @@ def setup_beamline_for_collection_plan(
|
|
|
69
69
|
|
|
70
70
|
|
|
71
71
|
def move_detector_stage_to_position_plan(
|
|
72
|
-
detector_stage:
|
|
72
|
+
detector_stage: YZStage,
|
|
73
73
|
detector_distance: float,
|
|
74
74
|
):
|
|
75
75
|
SSX_LOGGER.debug("Setup beamline: moving detector stage.")
|
|
@@ -8,7 +8,7 @@ from enum import IntEnum
|
|
|
8
8
|
import bluesky.plan_stubs as bps
|
|
9
9
|
from bluesky.utils import Msg, MsgGenerator
|
|
10
10
|
from dodal.common import inject
|
|
11
|
-
from dodal.devices.
|
|
11
|
+
from dodal.devices.motors import YZStage
|
|
12
12
|
|
|
13
13
|
from mx_bluesky.beamlines.i24.serial.log import SSX_LOGGER
|
|
14
14
|
from mx_bluesky.beamlines.i24.serial.parameters import SSXType
|
|
@@ -38,9 +38,9 @@ class UnknownDetectorType(Exception):
|
|
|
38
38
|
pass
|
|
39
39
|
|
|
40
40
|
|
|
41
|
-
def get_detector_type(detector_stage:
|
|
41
|
+
def get_detector_type(detector_stage: YZStage) -> Generator[Msg, None, Detector]:
|
|
42
42
|
det_y = yield from bps.rd(detector_stage.y)
|
|
43
|
-
#
|
|
43
|
+
# YZStage should also be used for this.
|
|
44
44
|
# This should be part of https://github.com/DiamondLightSource/mx_bluesky/issues/51
|
|
45
45
|
if float(det_y) < Eiger.det_y_threshold:
|
|
46
46
|
SSX_LOGGER.info("Eiger detector in use.")
|
|
@@ -53,7 +53,7 @@ def get_detector_type(detector_stage: DetectorMotion) -> Generator[Msg, None, De
|
|
|
53
53
|
raise UnknownDetectorType("Detector not found.")
|
|
54
54
|
|
|
55
55
|
|
|
56
|
-
def _move_detector_stage(detector_stage:
|
|
56
|
+
def _move_detector_stage(detector_stage: YZStage, target: float) -> MsgGenerator:
|
|
57
57
|
SSX_LOGGER.info(f"Moving detector stage to target position: {target}.")
|
|
58
58
|
yield from bps.mv(detector_stage.y, target)
|
|
59
59
|
|
|
@@ -82,7 +82,7 @@ def _get_requested_detector(det_type_pv: str) -> str:
|
|
|
82
82
|
|
|
83
83
|
|
|
84
84
|
def setup_detector_stage(
|
|
85
|
-
expt_type: SSXType, detector_stage:
|
|
85
|
+
expt_type: SSXType, detector_stage: YZStage = inject("detector_motion")
|
|
86
86
|
) -> MsgGenerator:
|
|
87
87
|
# Grab the correct PV depending on experiment
|
|
88
88
|
# Its value is set with MUX on edm screen
|