mx-bluesky 1.5.2__tar.gz → 1.5.4__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.5.2 → mx_bluesky-1.5.4}/.github/workflows/_helm.yml +7 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.vscode/mx-bluesky.code-workspace +2 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/PKG-INFO +4 -3
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/conftest.py +1 -1
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/how-to/deploy-a-release.rst +2 -1
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/hyperion/reference/coordinate-systems.rst +1 -1
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/hyperion/reference/readme.md +14 -6
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/serial-crystallography-on-i24/how-to/pmac-docs.rst +2 -2
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/index.rst +7 -0
- mx_bluesky-1.5.4/docs/user/hyperion/alerts.rst +68 -0
- mx_bluesky-1.5.4/docs/user/hyperion/configuration.rst +25 -0
- mx_bluesky-1.5.4/docs/user/hyperion/index.rst +27 -0
- mx_bluesky-1.5.4/docs/user/hyperion/logging.rst +41 -0
- mx_bluesky-1.5.4/docs/user/hyperion/pvs.rst +12 -0
- mx_bluesky-1.5.4/docs/user/hyperion/running.rst +13 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/helm/mx-bluesky-blueapi/values.yaml +0 -6
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/pyproject.toml +8 -4
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/run_hyperion.sh +6 -2
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/_version.py +16 -3
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/aithre_lasershaping/__init__.py +2 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/aithre_lasershaping/beamline_safe.py +17 -0
- mx_bluesky-1.5.4/src/mx_bluesky/beamlines/i04/__init__.py +10 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i04/experiment_plans/i04_grid_detect_then_xray_centre_plan.py +3 -8
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i04/thawing_plan.py +3 -3
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/blueapi_config.yaml +2 -2
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/CustomChip_py3v1.edl +10 -10
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DetStage.edl +1 -1
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DiamondChipI24-py3v1.edl +68 -68
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/ME14E-GeneralPurpose.edl +120 -120
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/MappingLite-oxford_py3v1.edl +135 -135
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/PMAC_Command.edl +2 -2
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/Shutter_Control.edl +3 -3
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/nudgechip.edl +24 -24
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/pumpprobe-py3v1.edl +12 -12
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Manager_py3v1.py +13 -12
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_moveonclick.py +10 -10
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/parameters/utils.py +1 -1
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/set_visit_directory.sh +1 -1
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/pv.py +142 -135
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/device_setup_plans/manipulate_sample.py +2 -2
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/experiment_plans/common_grid_detect_then_xray_centre_plan.py +2 -2
- mx_bluesky-1.5.4/src/mx_bluesky/common/experiment_plans/inner_plans/udc_default_state.py +65 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/experiment_plans/oav_grid_detection_plan.py +12 -2
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/experiment_plans/oav_snapshot_plan.py +2 -2
- mx_bluesky-1.5.4/src/mx_bluesky/common/external_interaction/alerting/__init__.py +13 -0
- mx_bluesky-1.5.4/src/mx_bluesky/common/external_interaction/alerting/_service.py +82 -0
- mx_bluesky-1.5.4/src/mx_bluesky/common/external_interaction/alerting/log_based_service.py +57 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/callbacks/common/grid_detection_callback.py +35 -17
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/callbacks/sample_handling/sample_handling_callback.py +31 -6
- mx_bluesky-1.5.4/src/mx_bluesky/common/external_interaction/config_server.py +154 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/parameters/constants.py +27 -8
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/parameters/gridscan.py +1 -1
- mx_bluesky-1.5.4/src/mx_bluesky/hyperion/__main__.py +195 -0
- mx_bluesky-1.5.4/src/mx_bluesky/hyperion/baton_handler.py +182 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/device_setup_plans/dcm_pitch_roll_mirror_adjuster.py +29 -24
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/experiment_plans/hyperion_flyscan_xray_centre_plan.py +4 -1
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/experiment_plans/load_centre_collect_full_plan.py +17 -5
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/experiment_plans/pin_tip_centring_plan.py +1 -1
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/experiment_plans/robot_load_and_change_energy.py +6 -2
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/experiment_plans/rotation_scan_plan.py +2 -3
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/external_interaction/agamemnon.py +128 -73
- mx_bluesky-1.5.4/src/mx_bluesky/hyperion/external_interaction/alerting/constants.py +12 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/external_interaction/callbacks/__main__.py +9 -0
- mx_bluesky-1.5.4/src/mx_bluesky/hyperion/external_interaction/callbacks/alert_on_container_change.py +54 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/nexus_callback.py +2 -2
- mx_bluesky-1.5.4/src/mx_bluesky/hyperion/external_interaction/config_server.py +16 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/parameters/cli.py +15 -3
- mx_bluesky-1.5.4/src/mx_bluesky/hyperion/parameters/components.py +10 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/parameters/constants.py +20 -4
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/parameters/gridscan.py +22 -14
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/parameters/load_centre_collect.py +1 -14
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/parameters/robot_load.py +1 -4
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/parameters/rotation.py +1 -2
- mx_bluesky-1.5.4/src/mx_bluesky/hyperion/plan_runner.py +78 -0
- mx_bluesky-1.5.4/src/mx_bluesky/hyperion/runner.py +189 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky.egg-info/PKG-INFO +4 -3
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky.egg-info/SOURCES.txt +31 -19
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky.egg-info/entry_points.txt +0 -2
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky.egg-info/requires.txt +3 -2
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/conftest.py +58 -29
- mx_bluesky-1.5.4/tests/system_tests/hyperion/external_interaction/alerting/test_log_based_alerts.py +87 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/system_tests/hyperion/external_interaction/conftest.py +4 -1
- mx_bluesky-1.5.4/tests/system_tests/hyperion/external_interaction/test_agamemnon.py +148 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/system_tests/hyperion/external_interaction/test_baton_handler_soak.py +35 -7
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/system_tests/hyperion/external_interaction/test_ispyb_dev_connection.py +0 -1
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/system_tests/hyperion/external_interaction/test_load_centre_collect_full_plan.py +25 -25
- mx_bluesky-1.5.4/tests/test_data/agamemnon/example_wait.json +3 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/parameter_json_files/good_test_load_centre_collect_params.json +0 -3
- mx_bluesky-1.5.4/tests/test_data/test_domain_properties +73 -0
- mx_bluesky-1.5.4/tests/test_data/test_domain_properties_with_no_gpu +73 -0
- mx_bluesky-1.5.4/tests/test_data/test_domain_properties_with_panda +73 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/aithre_lasershaping/test_beamline_safe.py +25 -1
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i04/test_thawing.py +3 -3
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_chip_manager.py +2 -2
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_ft_collect.py +3 -3
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_moveonclick.py +6 -6
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/web_gui/test_general_plans.py +1 -1
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/device_setup_plans/test_robot_load_unload.py +4 -2
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/device_setup_plans/test_xbpm_feedback.py +0 -5
- mx_bluesky-1.5.4/tests/unit_tests/common/experiment_plans/inner_plans/test_udc_default_state.py +149 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/experiment_plans/test_common_grid_detect_then_xray_centre_plan.py +2 -2
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/experiment_plans/test_grid_detection_plan.py +93 -35
- mx_bluesky-1.5.4/tests/unit_tests/common/external_interaction/alerting/alerting/test_alerting.py +86 -0
- {mx_bluesky-1.5.2/tests/unit_tests/hyperion → mx_bluesky-1.5.4/tests/unit_tests/common}/external_interaction/callbacks/sample_handling/test_sample_handling_callback.py +61 -30
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/external_interaction/conftest.py +1 -3
- mx_bluesky-1.5.4/tests/unit_tests/common/external_interaction/test_config_server.py +158 -0
- mx_bluesky-1.5.4/tests/unit_tests/common/parameters/test_constants.py +25 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/conftest.py +78 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/conftest.py +17 -7
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/device_setup_plans/test_dcm_pitch_roll_mirror_adjuster.py +32 -5
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/device_setup_plans/test_setup_oav.py +4 -2
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/experiment_plans/test_hyperion_flyscan_xray_centre_plan.py +5 -18
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/experiment_plans/test_load_centre_collect_full_plan.py +4 -8
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/experiment_plans/test_pin_centre_then_xray_centre_plan.py +4 -4
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/experiment_plans/test_pin_tip_centring.py +1 -1
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/experiment_plans/test_robot_load_and_change_energy.py +4 -5
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/experiment_plans/test_robot_load_then_centre.py +1 -2
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/experiment_plans/test_rotation_scan_plan.py +67 -61
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/external_interaction/callbacks/robot_load/test_robot_load_ispyb_callback.py +3 -11
- mx_bluesky-1.5.4/tests/unit_tests/hyperion/external_interaction/callbacks/test_alert_on_container_change.py +129 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/external_interaction/callbacks/test_external_callbacks.py +10 -1
- mx_bluesky-1.5.4/tests/unit_tests/hyperion/external_interaction/nexus/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/external_interaction/test_agamemnon.py +124 -59
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/external_interaction/test_write_rotation_nexus.py +3 -3
- mx_bluesky-1.5.4/tests/unit_tests/hyperion/parameters/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/parameters/test_parameter_model.py +32 -46
- mx_bluesky-1.5.4/tests/unit_tests/hyperion/test_baton_handler.py +651 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/test_main_system.py +143 -15
- mx_bluesky-1.5.4/tests/unit_tests/hyperion/test_runner.py +95 -0
- mx_bluesky-1.5.4/tests/unit_tests/hyperion/utils/__init__.py +0 -0
- mx_bluesky-1.5.4/tests/unit_tests/t01.py +22 -0
- mx_bluesky-1.5.4/utility_scripts/request_baton.sh +35 -0
- mx_bluesky-1.5.2/helm/mx-bluesky-blueapi/templates/ispyb-config.yaml +0 -18
- mx_bluesky-1.5.2/hyperion_other/workflows/add_assignee_when_pr_opened.yml +0 -26
- mx_bluesky-1.5.2/hyperion_other/workflows/assigned_issues_to_in_progress.yml +0 -13
- mx_bluesky-1.5.2/hyperion_other/workflows/get_issue_from_pr.yml +0 -51
- mx_bluesky-1.5.2/hyperion_other/workflows/get_project_data_and_move_column.yml +0 -98
- mx_bluesky-1.5.2/hyperion_other/workflows/linkcheck.yml +0 -34
- mx_bluesky-1.5.2/hyperion_other/workflows/open_prs_to_review.yml +0 -19
- mx_bluesky-1.5.2/hyperion_other/workflows/opened_issues_to_backlog.yml +0 -13
- mx_bluesky-1.5.2/hyperion_other/workflows/pin_versions.py +0 -136
- mx_bluesky-1.5.2/hyperion_other/workflows/pre_release_workflow.yml +0 -48
- mx_bluesky-1.5.2/hyperion_other/workflows/rework_prs_to_in_progress.yml +0 -19
- mx_bluesky-1.5.2/hyperion_other/workflows/test_data/pip_freeze.txt +0 -248
- mx_bluesky-1.5.2/hyperion_other/workflows/test_data/setup.cfg +0 -75
- mx_bluesky-1.5.2/hyperion_other/workflows/test_data/setup.cfg.pinned +0 -74
- mx_bluesky-1.5.2/hyperion_other/workflows/test_data/setup.cfg.unpinned +0 -74
- mx_bluesky-1.5.2/hyperion_other/workflows/test_pin_versions.py +0 -79
- mx_bluesky-1.5.2/src/mx_bluesky/beamlines/i04/__init__.py +0 -6
- mx_bluesky-1.5.2/src/mx_bluesky/common/external_interaction/config_server.py +0 -57
- mx_bluesky-1.5.2/src/mx_bluesky/hyperion/__main__.py +0 -323
- mx_bluesky-1.5.2/src/mx_bluesky/hyperion/baton_handler.py +0 -121
- mx_bluesky-1.5.2/src/mx_bluesky/hyperion/external_interaction/config_server.py +0 -35
- mx_bluesky-1.5.2/src/mx_bluesky/hyperion/parameters/components.py +0 -8
- mx_bluesky-1.5.2/tests/system_tests/hyperion/external_interaction/test_agamemnon.py +0 -92
- mx_bluesky-1.5.2/tests/system_tests/hyperion/external_interaction/test_config_service.py +0 -61
- mx_bluesky-1.5.2/tests/unit_tests/common/external_interaction/test_config_server.py +0 -38
- mx_bluesky-1.5.2/tests/unit_tests/hyperion/test_baton_handler.py +0 -266
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.copier-answers.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.coveragerc +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.devcontainer/Dockerfile +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.devcontainer/devcontainer.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.dockerignore +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/CODEOWNERS +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/CONTRIBUTING.md +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/ISSUE_TEMPLATE/issue.md +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/actions/install_requirements/action.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/actions/verify-nexus/Dockerfile +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/actions/verify-nexus/action.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/actions/verify-nexus/entrypoint.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/dependabot.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/pages/index.html +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/pages/make_switcher.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/workflows/_check.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/workflows/_container.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/workflows/_dist.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/workflows/_docs.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/workflows/_pypi.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/workflows/_release.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/workflows/_test.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/workflows/_tox.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/workflows/ci.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.github/workflows/periodic.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.gitignore +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.pre-commit-config.yaml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.vscode/extensions.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.vscode/launch.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.vscode/mxb-with-core-dependencies.code-workspace +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.vscode/settings.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/.vscode/tasks.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/Dockerfile +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/Dockerfile.blueapi +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/Dockerfile.hyperion +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/LICENSE +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/README.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/catalog-info.yaml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/codecov.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/_api.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/_templates/custom-module-template.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/conf.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/code-map/grid_detect_then_xray_centre.drawio.png +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/code-map/grid_detect_xrc.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/code-map/index.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/explanations/callback_and_run_logic.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/explanations/containerised_mx_bluesky.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/explanations/decisions/0001-record-architecture-decisions.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/explanations/decisions/0002-repository-structure.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/explanations/decisions/0003-python-version-support.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/explanations/decisions.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/how-to/contribute.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/how-to/create-a-release.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/how-to/dev-ops/build-docs.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/how-to/dev-ops/dev-ops.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/how-to/dev-ops/lint.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/how-to/dev-ops/run-tests.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/how-to/dev-ops/update-tools.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/how-to/get-started.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/index.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/reference/standards.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/general/tutorials/profile-tests.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/hyperion/deploying-hyperion.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/hyperion/how-to/update-panda-ioc.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/hyperion/index.rst +1 -1
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/hyperion/reference/coordinate-systems.puml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/hyperion/reference/gridscan.puml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/hyperion/reference/param-hierarchy.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/hyperion/system-tests.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/index.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/murko-integration/explanations/architecture.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/murko-integration/images/murko_setup.drawio.png +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/murko-integration/index.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/serial-crystallography-on-i24/explanations/decisions/0001-record-architecture-decisions.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/serial-crystallography-on-i24/explanations/decisions.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/serial-crystallography-on-i24/how-to/environment-setup.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/serial-crystallography-on-i24/how-to/run-a-collection.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/serial-crystallography-on-i24/index.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/serial-crystallography-on-i24/project-planning/roadmap.rst +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/images/176701633-b93bba62-b2e7-4740-a863-c6b388beb14f.png +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/images/207297611-f67dfc25-a3a5-4ade-a1e7-28b54a136fa6.png +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/images/dls-favicon.ico +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/images/dls-logo.svg +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/images/motor coordinate systems.odg +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/images/motor-coords-omega-0.svg +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/images/motor-coords-omega-alpha.svg +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/helm/hyperion/Chart.yaml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/helm/hyperion/templates/deployment.yaml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/helm/hyperion/templates/ingress.yaml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/helm/hyperion/templates/service.yaml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/helm/hyperion/templates/zocalo-config.yaml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/helm/hyperion/values.yaml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/helm/mx-bluesky-blueapi/Chart.yaml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/helm/mx-bluesky-blueapi/templates/zocalo-config.yaml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/helm/redis-to-murko/Chart.yaml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/helm/redis-to-murko/templates/deployment.yaml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/helm/redis-to-murko/values.yaml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/pull_request_template.md +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/run_hyperion_in_podman.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/setup.cfg +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/__main__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/aithre_lasershaping/check_goniometer_performance.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/aithre_lasershaping/goniometer_controls.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i04/callbacks/murko_callback.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i04/experiment_plans/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i04/redis_to_murko_forwarder.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i23/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i23/serial.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/dcid.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DetStage.edl +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DiamondExtruder-I24-py3v1.edl +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/microdrop_alignment.edl +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/extruder/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/extruder/i24ssx_Extruder_Collect_py3v2.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/microdrop_alignment.edl +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/s1l.png +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/s2l.png +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/ft_utils.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Collect_py3v1.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_StartUp_py3v1.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/log.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/parameters/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/parameters/constants.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/parameters/experiment_parameters.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/cs/cs_maker.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/cs/motor_direction.txt +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/pvar_files/minichip-oxford.pvar +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/pvar_files/oxford.pvar +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/run_extruder.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/run_fixed_target.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/run_serial.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/run_ssx.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/ca.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/pv_abstract.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_beamline.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_detector.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_zebra_plans.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/start_blueapi.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/web_gui_plans/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/web_gui_plans/general_plans.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/write_nexus.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/device_setup_plans/position_detector.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/device_setup_plans/robot_load_unload.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/device_setup_plans/setup_oav.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/device_setup_plans/setup_panda.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/device_setup_plans/utils.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/device_setup_plans/xbpm_feedback.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/experiment_plans/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/experiment_plans/change_aperture_then_move_plan.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/experiment_plans/common_flyscan_xray_centre_plan.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/experiment_plans/inner_plans/__init__ .py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/experiment_plans/inner_plans/do_fgs.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/experiment_plans/inner_plans/read_hardware.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/experiment_plans/inner_plans/write_sample_status.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/callbacks/common/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/callbacks/common/abstract_event.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/callbacks/common/ispyb_callback_base.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/callbacks/common/ispyb_mapping.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/callbacks/common/log_uid_tag_callback.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/callbacks/common/logging_callback.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/callbacks/common/plan_reactive_callback.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/callbacks/common/zocalo_callback.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/callbacks/sample_handling/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/ispyb_callback.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/ispyb_mapping.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/nexus_callback.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/ispyb/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/ispyb/data_model.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/ispyb/exp_eye_store.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/ispyb/ispyb_store.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/ispyb/ispyb_utils.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/nexus/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/nexus/nexus_utils.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/external_interaction/nexus/write_nexus.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/parameters/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/parameters/components.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/parameters/device_composites.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/preprocessors/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/preprocessors/preprocessors.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/protocols/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/protocols/protocols.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/utils/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/utils/context.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/utils/exceptions.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/utils/log.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/utils/tracing.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/utils/utils.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/common/xrc_result.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/definitions.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/device_setup_plans/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/device_setup_plans/setup_panda.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/device_setup_plans/setup_zebra.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/device_setup_plans/smargon.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/device_setup_plans/utils.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/experiment_plans/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/experiment_plans/experiment_registry.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/experiment_plans/hyperion_grid_detect_then_xray_centre_plan.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/experiment_plans/optimise_attenuation_plan.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/experiment_plans/pin_centre_then_xray_centre_plan.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/experiment_plans/robot_load_then_centre_plan.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/experiment_plans/set_energy_plan.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/external_interaction/__init__.py +0 -0
- {mx_bluesky-1.5.2/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation → mx_bluesky-1.5.4/src/mx_bluesky/hyperion/external_interaction/alerting}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/external_interaction/callbacks/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/external_interaction/callbacks/robot_actions/ispyb_callback.py +0 -0
- {mx_bluesky-1.5.2/src/mx_bluesky/phase1_zebra/device_setup_plans → mx_bluesky-1.5.4/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_callback.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_mapping.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/external_interaction/callbacks/snapshot_callback.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/parameters/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/parameters/device_composites.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/resources/panda/panda-gridscan.yaml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/utils/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/hyperion/utils/context.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/jupyter_example.ipynb +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/phase1_zebra/__init__.py +0 -0
- {mx_bluesky-1.5.2/tests → mx_bluesky-1.5.4/src/mx_bluesky/phase1_zebra/device_setup_plans}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/phase1_zebra/device_setup_plans/setup_zebra.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky.egg-info/dependency_links.txt +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky.egg-info/top_level.txt +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/start_jupyter.sh +0 -0
- {mx_bluesky-1.5.2/tests/system_tests → mx_bluesky-1.5.4/tests}/__init__.py +0 -0
- {mx_bluesky-1.5.2/tests/system_tests/hyperion → mx_bluesky-1.5.4/tests/system_tests}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/system_tests/common/device_setup_plans/test_robot_load_unload.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/system_tests/conftest.py +0 -0
- {mx_bluesky-1.5.2/tests/system_tests/hyperion/external_interaction → mx_bluesky-1.5.4/tests/system_tests/hyperion}/__init__.py +0 -0
- {mx_bluesky-1.5.2/tests/system_tests/hyperion/external_interaction/callbacks → mx_bluesky-1.5.4/tests/system_tests/hyperion/external_interaction}/__init__.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests → mx_bluesky-1.5.4/tests/system_tests/hyperion/external_interaction/alerting}/__init__.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/beamlines → mx_bluesky-1.5.4/tests/system_tests/hyperion/external_interaction/callbacks}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/system_tests/hyperion/external_interaction/callbacks/test_external_callbacks.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/system_tests/hyperion/external_interaction/test_exp_eye_dev.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/system_tests/hyperion/external_interaction/test_nexgen.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/system_tests/hyperion/external_interaction/test_zocalo_system.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/agamemnon/example_collect_multipin.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/agamemnon/example_native.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/ispyb-test-credentials.cfg +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/nexus_files/README.md +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/nexus_files/fake_data.h5 +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/nexus_files/rotation/ins_8_5.nxs +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/nexus_files/rotation/ins_8_5_expected_output.txt +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/nexus_files/rotation/ins_8_5_meta.h5.gz +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5.nxs +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5_expected_output.txt +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5_meta.h5.gz +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/parameter_json_files/example_load_centre_collect_params.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/parameter_json_files/good_test_grid_with_edge_detect_parameters.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/parameter_json_files/good_test_load_centre_collect_params_multi_rotation.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/parameter_json_files/good_test_multi_rotation_scan_parameters.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/parameter_json_files/good_test_one_multi_rotation_scan_parameters.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/parameter_json_files/good_test_one_multi_rotation_scan_parameters_nomove.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/parameter_json_files/good_test_parameters.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/parameter_json_files/good_test_pin_centre_then_xray_centre_parameters.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/parameter_json_files/good_test_robot_load_and_centre_params.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/parameter_json_files/good_test_robot_load_params.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/parameter_json_files/good_test_rotation_scan_parameters.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/parameter_json_files/ispyb_gridscan_system_test_parameters.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/parameter_json_files/load_centre_collect_params_top_n_by_max_count.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/parameter_json_files/test_gridscan_param_defaults.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/parameter_json_files/test_oav_snapshot_params.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/rabbitmq-test-credentials.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/scratch/README +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_OAVCentring.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_beamline_dcm_pitch_converter.txt +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_beamline_dcm_roll_converter.txt +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_beamline_parameters.txt +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_beamline_vfm_lat_converter.txt +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_config.cfg +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_daq_configuration/OAVCentring_hyperion.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_daq_configuration/display.configuration +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_daq_configuration/domain/beamlineParameters +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_daq_configuration/lookup/BeamLineEnergy_DCM_Pitch_converter.txt +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_daq_configuration/lookup/BeamLineEnergy_DCM_Roll_converter.txt +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_daq_configuration/lookup/BeamLine_Undulator_toGap.txt +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_daq_configuration/lookup/test_det_dist_converter.txt +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_det_dist_converter.txt +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_display.configuration +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_images/generate_snapshot_input.png +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_images/generate_snapshot_output.png +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_images/ins_15_33_0.png +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_images/ins_15_33_90.png +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_images/ins_15_33_expected_0.png +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_images/ins_15_33_expected_270.png +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_images/thau_1_91_0.png +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_images/thau_1_91_90.png +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_images/thau_1_91_expected_0.png +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_images/thau_1_91_expected_270.png +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_jCameraManZoomLevels.xml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_lookup_table.txt +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/test_mirror_focus.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/test_data/zocalo-test-configuration.yaml +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/beamlines/i24 → mx_bluesky-1.5.4/tests/unit_tests}/__init__.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/beamlines/i24/serial → mx_bluesky-1.5.4/tests/unit_tests/beamlines}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/aithre_lasershaping/test_check_goniometer_performance.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/aithre_lasershaping/test_goniometer_controls.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i04/callbacks/test_murko_callback.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i04/test_i04_grid_detect_then_xray_centre_plan.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i04/test_redis_to_murko_forwarder.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i23/test_serial.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/beamlines/i24/serial/extruder → mx_bluesky-1.5.4/tests/unit_tests/beamlines/i24}/__init__.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/beamlines/i24/serial/fixed_target → mx_bluesky-1.5.4/tests/unit_tests/beamlines/i24/serial}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/conftest.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/beamlines/i24/serial/setup_beamline → mx_bluesky-1.5.4/tests/unit_tests/beamlines/i24/serial/extruder}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/extruder/test_extruder_collect.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/beamlines/i24/serial/web_gui → mx_bluesky-1.5.4/tests/unit_tests/beamlines/i24/serial/fixed_target}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/fixed_target/conftest.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_chip_startup.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/parameters/test_parameter_model.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/parameters/test_utils.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/common → mx_bluesky-1.5.4/tests/unit_tests/beamlines/i24/serial/setup_beamline}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_pv_abstract.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_setup_beamline.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_setup_detector.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_zebra_plans.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/test_dcid.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/test_log.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/test_run_serial.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/beamlines/i24/serial/test_write_nexus.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/common/experiment_plans → mx_bluesky-1.5.4/tests/unit_tests/beamlines/i24/serial/web_gui}/__init__.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/common/experiment_plans/inner_plans → mx_bluesky-1.5.4/tests/unit_tests/common}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/device_setup_plans/test_setup_panda.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/common/external_interaction → mx_bluesky-1.5.4/tests/unit_tests/common/experiment_plans}/__init__.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/common/external_interaction/callbacks → mx_bluesky-1.5.4/tests/unit_tests/common/experiment_plans/inner_plans}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/experiment_plans/inner_plans/test_do_fgs.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/experiment_plans/inner_plans/test_read_hardware.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/experiment_plans/inner_plans/test_write_sample_status.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/experiment_plans/test_change_aperture_then_move_plan.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/experiment_plans/test_common_flyscan_xray_centre_plan.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/experiment_plans/test_oav_snapshot_plan.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/common/external_interaction/callbacks/common → mx_bluesky-1.5.4/tests/unit_tests/common/external_interaction}/__init__.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/common/external_interaction/callbacks/ispyb → mx_bluesky-1.5.4/tests/unit_tests/common/external_interaction/alerting}/__init__.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/common/parameters → mx_bluesky-1.5.4/tests/unit_tests/common/external_interaction/alerting/alerting}/__init__.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/common/preprocessors → mx_bluesky-1.5.4/tests/unit_tests/common/external_interaction/callbacks}/__init__.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/common/utils → mx_bluesky-1.5.4/tests/unit_tests/common/external_interaction/callbacks/common}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/external_interaction/callbacks/common/test_abstract_event.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/external_interaction/callbacks/common/test_snapshot_callback.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/hyperion → mx_bluesky-1.5.4/tests/unit_tests/common/external_interaction/callbacks/ispyb}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/external_interaction/callbacks/ispyb/conftest.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_expeye_interaction.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_gridscan_ispyb_store_3d.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_rotation_ispyb_store.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/external_interaction/callbacks/test_plan_reactive_callback.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/external_interaction/callbacks/test_zocalo_handler.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/external_interaction/nexus/test_nexus_utils.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/external_interaction/test_ispyb_utils.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/external_interaction/xray_centre/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_callback.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_handler.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_mapping.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/external_interaction/xray_centre/test_nexus_handler.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/hyperion/device_setup_plans → mx_bluesky-1.5.4/tests/unit_tests/common/parameters}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/parameters/test_components.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/hyperion/experiment_plans → mx_bluesky-1.5.4/tests/unit_tests/common/preprocessors}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/preprocessors/test_preprocessors.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/hyperion/external_interaction → mx_bluesky-1.5.4/tests/unit_tests/common/utils}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/common/utils/test_log.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/hyperion/external_interaction/callbacks → mx_bluesky-1.5.4/tests/unit_tests/hyperion}/__init__.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/hyperion/external_interaction/callbacks/rotation → mx_bluesky-1.5.4/tests/unit_tests/hyperion/device_setup_plans}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/device_setup_plans/test_manipulate_sample.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/device_setup_plans/test_setup_panda.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/device_setup_plans/test_utils.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/device_setup_plans/test_zebra_setup.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/hyperion/external_interaction/callbacks/sample_handling → mx_bluesky-1.5.4/tests/unit_tests/hyperion/experiment_plans}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/experiment_plans/common/test_flyscan_result.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/experiment_plans/conftest.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/experiment_plans/test_experiment_registry.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/experiment_plans/test_hyperion_grid_detect_then_xray_centre_plan.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/experiment_plans/test_optimise_attenuation_plan.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/experiment_plans/test_set_energy_plan.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/hyperion/external_interaction/nexus → mx_bluesky-1.5.4/tests/unit_tests/hyperion/external_interaction}/__init__.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/hyperion/parameters → mx_bluesky-1.5.4/tests/unit_tests/hyperion/external_interaction/callbacks}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/external_interaction/callbacks/conftest.py +0 -0
- {mx_bluesky-1.5.2/tests/unit_tests/hyperion/utils → mx_bluesky-1.5.4/tests/unit_tests/hyperion/external_interaction/callbacks/rotation}/__init__.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/external_interaction/callbacks/rotation/test_ispyb_callback.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/external_interaction/callbacks/test_rotation_callbacks.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/external_interaction/conftest.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/external_interaction/nexus/test_compare_nexus_to_gda_exhaustively.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/external_interaction/nexus/test_write_nexus.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000001.h5 +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000002.h5 +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000003.h5 +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/test_exceptions.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/test_utils.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/utils/test_callback_sim.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/hyperion/utils/test_context.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/tests/unit_tests/test_cli.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/beam_off_trickery.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/build_docker_image.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/build_imginfo.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/deploy/create_venv.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/deploy/deploy_edm_for_ssx.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/deploy/deploy_mx_bluesky.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/deploy/deploy_mx_bluesky_app_to_k8s.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/deploy/test_deploy.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/dev_jaeger_container.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/dls_dev_env.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/docker/entrypoint.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/docker/healthcheck.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/docker/i03-compose.yml +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/generate_plantuml.py +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/graylog/Dockerfile +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/graylog/tcp_input.json +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/procserv_ioc_start.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/run_imginfo.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/setup_graylog.sh +0 -0
- {mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/utility_scripts/strip_metafile.py +0 -0
|
@@ -13,6 +13,8 @@
|
|
|
13
13
|
"editor.defaultFormatter": "ms-python.black-formatter"
|
|
14
14
|
},
|
|
15
15
|
"python.defaultInterpreterPath": ".venv/bin/python",
|
|
16
|
+
"python.analysis.extraPaths": ["../dodal"],
|
|
17
|
+
"python.analysis.autoImportCompletions": true,
|
|
16
18
|
"terminal.integrated.gpuAcceleration": "off",
|
|
17
19
|
"esbonio.sphinx.confDir": ""
|
|
18
20
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mx-bluesky
|
|
3
|
-
Version: 1.5.
|
|
3
|
+
Version: 1.5.4
|
|
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
|
|
@@ -235,12 +235,13 @@ Requires-Dist: scipy
|
|
|
235
235
|
Requires-Dist: semver
|
|
236
236
|
Requires-Dist: deepdiff
|
|
237
237
|
Requires-Dist: matplotlib
|
|
238
|
+
Requires-Dist: cachetools
|
|
239
|
+
Requires-Dist: daq-config-server>=v1.0.0-rc.2
|
|
238
240
|
Requires-Dist: blueapi>=0.15.0
|
|
239
|
-
Requires-Dist: daq-config-server==0.1.1
|
|
240
241
|
Requires-Dist: ophyd>=1.10.5
|
|
241
242
|
Requires-Dist: ophyd-async>=0.10.0a2
|
|
242
243
|
Requires-Dist: bluesky>=1.13.1
|
|
243
|
-
Requires-Dist: dls-dodal==1.
|
|
244
|
+
Requires-Dist: dls-dodal==1.56.0
|
|
244
245
|
Provides-Extra: dev
|
|
245
246
|
Requires-Dist: black; extra == "dev"
|
|
246
247
|
Requires-Dist: build; extra == "dev"
|
|
@@ -19,5 +19,5 @@ def pytest_addoption(parser):
|
|
|
19
19
|
@pytest.fixture(scope="session", autouse=True)
|
|
20
20
|
def default_session_fixture() -> Iterator[None]:
|
|
21
21
|
print("Patching bluesky 0MQ Publisher in __main__ for the whole session")
|
|
22
|
-
with patch("mx_bluesky.hyperion.
|
|
22
|
+
with patch("mx_bluesky.hyperion.runner.Publisher"):
|
|
23
23
|
yield
|
|
@@ -38,7 +38,7 @@ For building and deploying a Docker image please see :doc:`../../hyperion/deploy
|
|
|
38
38
|
|
|
39
39
|
.. note::
|
|
40
40
|
|
|
41
|
-
On i03 the installation will succeed with error messages due to RedHat7 versions of
|
|
41
|
+
On i03 the installation will succeed with error messages due to RedHat7 versions of dependencies being unavailable.
|
|
42
42
|
This results in the installation being incomplete, thus requiring the following post-installation steps:
|
|
43
43
|
|
|
44
44
|
First, on a RedHat8 workstation, run
|
|
@@ -47,6 +47,7 @@ For building and deploying a Docker image please see :doc:`../../hyperion/deploy
|
|
|
47
47
|
|
|
48
48
|
. ./.venv/bin/activate
|
|
49
49
|
pip install confluent-kafka
|
|
50
|
+
pip install contourpy
|
|
50
51
|
|
|
51
52
|
Then, on the control machine, run
|
|
52
53
|
|
{mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/docs/developer/hyperion/reference/coordinate-systems.rst
RENAMED
|
@@ -20,7 +20,7 @@ defined by ``rotation_direction`` which can be ``POSITIVE`` or ``NEGATIVE``
|
|
|
20
20
|
|
|
21
21
|
The coordinate systems of the underlying hardware may differ from the request. At Diamond traditionally the omega
|
|
22
22
|
axis is implemented to be in the opposite direction, therefore the commands sent to the hardware are transformed and
|
|
23
|
-
the ``omega_flip``
|
|
23
|
+
the ``omega_flip`` flag controls this behaviour, which by default is set to ``True`` as this is
|
|
24
24
|
generally expected to be required for the beamlines here.
|
|
25
25
|
|
|
26
26
|
In the Nexus output file, there is provision for describing the choice of axis orientations in the nexus file, and
|
|
@@ -1,17 +1,18 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Hyperion Overview
|
|
2
2
|
|
|
3
3
|
Repository for the Hyperion project to implement Unattended Data Collections on the Diamond MX beamlines using the [BlueSky](https://nsls-ii.github.io/bluesky/) / Ophyd framework from BNL.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
The software is able to:
|
|
6
6
|
|
|
7
|
+
- Fetch and decode UDC instructions from Agamemnon
|
|
8
|
+
- Mount/unmount samples
|
|
9
|
+
- Change energy of the beamline
|
|
7
10
|
- Centre a sample, first using an optical camera, then using an xray grid scan. This centring is done at two orthogonal angles so that the sample is centred in 3D.
|
|
8
11
|
- Perform a rotation scan to take diffraction data of the sample
|
|
9
12
|
|
|
10
13
|
Left to do is:
|
|
11
14
|
|
|
12
|
-
- Mount/unmount samples
|
|
13
15
|
- Set up the beamline to be in a standard state for collection
|
|
14
|
-
- Change energy of the beamline
|
|
15
16
|
|
|
16
17
|
# Development Installation
|
|
17
18
|
|
|
@@ -41,8 +42,6 @@ If in a dev environment Hyperion will log to a local graylog instance instead an
|
|
|
41
42
|
|
|
42
43
|
This uses the generic defaults for a local graylog instance. It can be accessed on `localhost:9000` where the username and password for the graylog portal are both admin.
|
|
43
44
|
|
|
44
|
-
The hyperion python module can also be run directly without the startup script. It takes the same command line options, including:
|
|
45
|
-
|
|
46
45
|
## Testing
|
|
47
46
|
|
|
48
47
|
Unit tests can be run with `pytest --random-order`. To see log output from tests you can turn on logging with the `--logging` command line option and then use the `-s` command line option to print logs into the console. So to run the unit tests such that all logs are at printed to the terminal, you can use `python -m pytest --random-order --logging -s`. Note that this will likely overrun your terminal buffer, so you can narrow the selection of tests with the `-k "<test name pattern>"` option.
|
|
@@ -53,6 +52,11 @@ To fake interaction and processing with Zocalo, you can run `fake_zocalo/dls_sta
|
|
|
53
52
|
|
|
54
53
|
Tracing information (the time taken to complete different steps of experiments) is collected by an [OpenTelemetry](https://opentelemetry.io/) tracer, and currently we export this information to a local Jaeger monitor (if available). To see the tracing output, run the [Jaeger all-in-one container](https://www.jaegertracing.io/docs/1.6/getting-started/), and go to the web interface at http://localhost:16686.
|
|
55
54
|
|
|
55
|
+
|
|
56
|
+
# REST API (GDA Mode)
|
|
57
|
+
|
|
58
|
+
When running in GDA mode, Hyperion offers the following API
|
|
59
|
+
|
|
56
60
|
## Starting a scan
|
|
57
61
|
|
|
58
62
|
To start a scan you can do the following:
|
|
@@ -86,3 +90,7 @@ To make the app write the `DEBUG` level logs stored in the `CircularMemoryHandle
|
|
|
86
90
|
curl -X PUT http://127.0.0.1:5005/flush_debug_log
|
|
87
91
|
|
|
88
92
|
```
|
|
93
|
+
|
|
94
|
+
# REST API (UDC Mode)
|
|
95
|
+
|
|
96
|
+
In UDC Mode, the only endpoint available is the `/status` endpoint.
|
|
@@ -55,7 +55,7 @@ in a couple of different ways.
|
|
|
55
55
|
|
|
56
56
|
- The ``hmz`` strings are homing commands which will reset the
|
|
57
57
|
encoders counts to 0 for the axis. All three motors are homed by
|
|
58
|
-
sending the string: ``#
|
|
58
|
+
sending the string: ``#5hmz#6hmz#7hmz``. In the plans this is done
|
|
59
59
|
by triggering the home move:
|
|
60
60
|
|
|
61
61
|
.. code:: python
|
|
@@ -74,7 +74,7 @@ in a couple of different ways.
|
|
|
74
74
|
|
|
75
75
|
|
|
76
76
|
2. The stage motors can also be moved directly through the existing PVs
|
|
77
|
-
``
|
|
77
|
+
``BL24I-EA-CHIP-01:{X,Y,Z}``, for example:
|
|
78
78
|
|
|
79
79
|
.. code:: python
|
|
80
80
|
|
|
@@ -16,7 +16,14 @@ The documentation consists of a Developer Guide for MX-Bluesky, which also inclu
|
|
|
16
16
|
|
|
17
17
|
The Developer Guide contains documentation on how to install, develop and contribute changes to MX-Bluesky; explanations about the purpose of the software and some of the technical concepts; as well as how-to guides and tutorials.
|
|
18
18
|
|
|
19
|
+
.. grid-item-card:: :material-regular:`code;4em`
|
|
20
|
+
:link: user/hyperion/index
|
|
21
|
+
:link-type: doc
|
|
22
|
+
|
|
23
|
+
The User Guide for the Hyperion UDC Service
|
|
24
|
+
|
|
19
25
|
.. toctree::
|
|
20
26
|
:hidden:
|
|
21
27
|
|
|
22
28
|
developer/index
|
|
29
|
+
user/hyperion/index
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
Alerts
|
|
2
|
+
------
|
|
3
|
+
|
|
4
|
+
Hyperion can be configured to raise alerts in order to notify staff of issues with data collections or with Hyperion
|
|
5
|
+
itself.
|
|
6
|
+
|
|
7
|
+
The currently supported alerting backend uses graylog alerting to send email alert notifications.
|
|
8
|
+
|
|
9
|
+
Graylog Alert Configuration
|
|
10
|
+
===========================
|
|
11
|
+
|
|
12
|
+
When hyperion generates an alert it will generate the alert in the form of a log message that will be logged to graylog
|
|
13
|
+
in the normal way.
|
|
14
|
+
|
|
15
|
+
The log message will have the message ``***ALERT*** summary=<summary> content=<content>`` and will have the following
|
|
16
|
+
metadata as fields in the log message.
|
|
17
|
+
|
|
18
|
+
.. csv-table:: Log message fields
|
|
19
|
+
:widths: auto
|
|
20
|
+
:header: "Field", "Description"
|
|
21
|
+
|
|
22
|
+
"alert_summary", "A single line summary of the alert, that could e.g. be used in an email summary"
|
|
23
|
+
"alert_content", "The plain text body of the alert message"
|
|
24
|
+
"beamline", "Beamline on which the alert was raised"
|
|
25
|
+
"container", "Container ID that was being processed"
|
|
26
|
+
"ispyb_url", "Link to the ISPyB page of the affected sample"
|
|
27
|
+
"graylog_url", "Link to the graylog stream in the minutes up to the event"
|
|
28
|
+
"proposal", "Proposal that was being processed"
|
|
29
|
+
"sample_id", "Sample ID that was being processed"
|
|
30
|
+
"visit", "Visit that was being processed"
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
In order to configure alerts in Graylog you will need appropriate Graylog permissions to edit Event Definitions and
|
|
34
|
+
Notifications.
|
|
35
|
+
|
|
36
|
+
Event Definitions define which log messages will trigger a Graylog Event, and the information that is contained in
|
|
37
|
+
the event.
|
|
38
|
+
|
|
39
|
+
Notifications are triggered by a Graylog Event and define how the information in the event is dispatched to the
|
|
40
|
+
recipient(s).
|
|
41
|
+
|
|
42
|
+
For the authoritative Graylog documentation, please see https://go2docs.graylog.org/current/interacting_with_your_log_data/alerts.html
|
|
43
|
+
|
|
44
|
+
Notification Configuration
|
|
45
|
+
--------------------------
|
|
46
|
+
|
|
47
|
+
Go to the Alerts->Notifications tab in Graylog, you should see a searchable list of notifications, clicking on the
|
|
48
|
+
notification you want to edit and click the "Edit Notification" button.
|
|
49
|
+
|
|
50
|
+
For an email notification, you can edit the subject, recipients, and the plain-text and HTML body.
|
|
51
|
+
|
|
52
|
+
Inside the subject and body fields, you can include metadata from the event, for example ``${event.timestamp}`` will
|
|
53
|
+
expand to the event timestamp.
|
|
54
|
+
|
|
55
|
+
All the fields that are available in the event are available under the ``event.fields`` object, e.g. ``${event.fields.alert_summary}``
|
|
56
|
+
|
|
57
|
+
Event Definitions
|
|
58
|
+
-----------------
|
|
59
|
+
|
|
60
|
+
In order to access fields from the log message, including the ones explicitly added by Hyperion and also any other
|
|
61
|
+
ones that graylog appends to the message, you must configure the Event Definition.
|
|
62
|
+
|
|
63
|
+
To configure the Event Definition, go to the Alerts->Event Definitions tab and click on the notification definition,
|
|
64
|
+
then click "Edit Event Definition".
|
|
65
|
+
|
|
66
|
+
Under Filter & Aggregation you can configure the conditions under which an event will be generated.
|
|
67
|
+
Under Fields you can add custom fields to the event, for each additional field that you want to use in the
|
|
68
|
+
notification, you should click Add Custom Field, then populate the fields, see the existing definitions as a guide.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
Configuration
|
|
2
|
+
-------------
|
|
3
|
+
|
|
4
|
+
Configuration of several properties that control Hyperion execution are available. These can be edited in the
|
|
5
|
+
``domain.properties`` file typically found in
|
|
6
|
+
|
|
7
|
+
::
|
|
8
|
+
|
|
9
|
+
/dls_sw/<beamline>/software/daq_configuration/domain.properties
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
.. csv-table:: Configuration properties
|
|
13
|
+
:widths: auto
|
|
14
|
+
:header: "Property Name", "Type", "Description"
|
|
15
|
+
|
|
16
|
+
"gda.gridscan.hyperion.flaskServerAddress", "host:port", "Configures the Hyperion server address that GDA connects to."
|
|
17
|
+
"gda.gridscan.hyperion.multipin", "boolean", "Controls whether multipin collection is enabled."
|
|
18
|
+
"gda.hyperion.use_grid_snapshots_for_rotation", "boolean", "If true, then rotation snapshots are generated from the grid snapshots instead of directly capturing them"
|
|
19
|
+
"gda.mx.hyperion.enabled", "boolean", "Controls whether GDA invokes Hyperion or performs collection itself"
|
|
20
|
+
"gda.mx.hyperion.panda.runnup_distance_mm", "double", "Controls the panda runup distance."
|
|
21
|
+
"gda.mx.hyperion.xrc.box_size", "double", "Configures the grid scan box size in microns."
|
|
22
|
+
"gda.mx.hyperion.use_panda_for_gridscans", "boolean", "If true then the Panda is used instead of the Zebra for XRC gridscans"
|
|
23
|
+
"gda.mx.hyperion.xrc.use_gpu_results", "boolean", "If true, then zocalo gridscan processing uses the GPU results"
|
|
24
|
+
"gda.mx.hyperion.xrc.use_roi_mode", "boolean", "If true then ROI mode is used."
|
|
25
|
+
"gda.mx.udc.hyperion.enable", "boolean", "Enables Hyperion UDC mode."
|
|
@@ -0,0 +1,27 @@
|
|
|
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
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
.. toctree::
|
|
23
|
+
:caption: Topics
|
|
24
|
+
:maxdepth: 1
|
|
25
|
+
:glob:
|
|
26
|
+
|
|
27
|
+
*
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
Logging
|
|
2
|
+
-------
|
|
3
|
+
|
|
4
|
+
Hyperion logs to a number of different locations. The sections below describe the locations that are configured via
|
|
5
|
+
environment variables for a standard server install; for kubernetes deployments please check the deployment
|
|
6
|
+
``values.yaml`` for the configured locations.
|
|
7
|
+
|
|
8
|
+
Graylog
|
|
9
|
+
~~~~~~~
|
|
10
|
+
|
|
11
|
+
Graylog is the recommended way to view logs. It is used for more centralised logging which is also more easily
|
|
12
|
+
searched and archived. Log messages are sent to the `Hyperion graylog stream <https://graylog.diamond.ac.uk/streams/66264f5519ccca6d1c9e4e03/search>`_.
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
Startup Log
|
|
16
|
+
~~~~~~~~~~~
|
|
17
|
+
|
|
18
|
+
When ``hyperion_restart()`` is called by GDA, it will log the initial console output to a log file. This log file
|
|
19
|
+
location is
|
|
20
|
+
controlled by the ``gda.logs.dir`` property and is typically ``/dls_sw/<beamline>/logs/bluesky``.
|
|
21
|
+
|
|
22
|
+
On kubernetes deployments, the initial startup is sent to standard IO and is captured as part of the standard
|
|
23
|
+
kubernetes logging facility.
|
|
24
|
+
|
|
25
|
+
Log files
|
|
26
|
+
~~~~~~~~~
|
|
27
|
+
|
|
28
|
+
By default, Hyperion logs to the filesystem.
|
|
29
|
+
|
|
30
|
+
The log file location is controlled by the ``LOG_DIR`` environment value. Typically this can be found in
|
|
31
|
+
``/dls_sw/<beamline>/logs/bluesky``
|
|
32
|
+
|
|
33
|
+
Debug Log
|
|
34
|
+
~~~~~~~~~
|
|
35
|
+
|
|
36
|
+
The standard logs files do not record all messages, only those at INFO level or higher, in order to keep storage
|
|
37
|
+
requirements to a minimum.
|
|
38
|
+
In the event of an error occurring, then trace-level logging for the most recent events (by default 5000) is flushed
|
|
39
|
+
to a separate set of log files. Due to the size of these files, they are stored separately from the main log files
|
|
40
|
+
. These logs are located in ``/dls/tmp/<beamline>/logs/bluesky`` by default, or
|
|
41
|
+
otherwise as specified by the ``DEBUG_LOG_DIR`` environment variable.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
Special PVs
|
|
2
|
+
-----------
|
|
3
|
+
|
|
4
|
+
Baton
|
|
5
|
+
~~~~~
|
|
6
|
+
|
|
7
|
+
In order to arbitrate access to the beamline between Hyperion and GDA there are two baton string PVs REQUESTED_USER and
|
|
8
|
+
CURRENT_USER.
|
|
9
|
+
|
|
10
|
+
Hyperion will only start operating once REQUESTED_USER has been set to Hyperion, at which point it will set
|
|
11
|
+
CURRENT_USER. To request the baton from Hyperion, set REQUESTED_USER to some other value, when Hyperion completes the
|
|
12
|
+
current action, it will relinquish CURRENT_USER.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
Running Hyperion
|
|
2
|
+
----------------
|
|
3
|
+
|
|
4
|
+
When installed, Hyperion should be running automatically.
|
|
5
|
+
|
|
6
|
+
Restarting Hyperion
|
|
7
|
+
-------------------
|
|
8
|
+
|
|
9
|
+
If Hyperion is running as a standalone server installation, it can be (re)started from GDA by
|
|
10
|
+
invoking ``hyperion_restart()`` from the Jython console.
|
|
11
|
+
|
|
12
|
+
If Hyperion is running in a Kubernetes container, then it can be restarted by scaling the deployment or
|
|
13
|
+
deleting the pod (which will cause a new instance to be created)
|
|
@@ -38,16 +38,17 @@ dependencies = [
|
|
|
38
38
|
"semver",
|
|
39
39
|
"deepdiff",
|
|
40
40
|
"matplotlib",
|
|
41
|
+
"cachetools",
|
|
41
42
|
#
|
|
42
43
|
# These dependencies may be issued as pre-release versions and should have a pin constraint
|
|
43
44
|
# as by default pip-install will not upgrade to a pre-release.
|
|
44
45
|
#
|
|
46
|
+
"daq-config-server>=v1.0.0-rc.2",
|
|
45
47
|
"blueapi >= 0.15.0",
|
|
46
|
-
"daq-config-server == 0.1.1",
|
|
47
48
|
"ophyd >= 1.10.5",
|
|
48
49
|
"ophyd-async >= 0.10.0a2",
|
|
49
50
|
"bluesky >= 1.13.1",
|
|
50
|
-
"dls-dodal == 1.
|
|
51
|
+
"dls-dodal == 1.56.0",
|
|
51
52
|
]
|
|
52
53
|
|
|
53
54
|
|
|
@@ -94,8 +95,6 @@ run_extruder = "mx_bluesky.beamlines.i24.serial.run_serial:run_extruder"
|
|
|
94
95
|
run_fixed_target = "mx_bluesky.beamlines.i24.serial.run_serial:run_fixed_target"
|
|
95
96
|
hyperion = "mx_bluesky.hyperion.__main__:main"
|
|
96
97
|
hyperion-callbacks = "mx_bluesky.hyperion.external_interaction.callbacks.__main__:main"
|
|
97
|
-
hyperion-generate-test-nexus = "mx_bluesky.hyperion.utils.validation:generate_test_nexus"
|
|
98
|
-
hyperion-populate-test-and-meta-files = "mx_bluesky.hyperion.utils.validation:copy_test_meta_data_files"
|
|
99
98
|
redis_to_murko = "mx_bluesky.beamlines.i04.redis_to_murko_forwarder:main"
|
|
100
99
|
|
|
101
100
|
[project.urls]
|
|
@@ -122,6 +121,7 @@ markers = [
|
|
|
122
121
|
"skip_log_setup: marks tests so that loggers are not setup before the test.",
|
|
123
122
|
"skip_in_pycharm: marks test as not working in pycharm testrunner",
|
|
124
123
|
"system_test: marks tests as a system test",
|
|
124
|
+
"requires: marks a test as having an external dependency such as a service or hardware",
|
|
125
125
|
]
|
|
126
126
|
addopts = """
|
|
127
127
|
--tb=native -vv --doctest-modules --doctest-glob="*.rst" --durations=10
|
|
@@ -142,6 +142,10 @@ filterwarnings = [
|
|
|
142
142
|
# Ignore warning about deprecations in python-workflows encountered during system tests
|
|
143
143
|
# https://github.com/DiamondLightSource/python-workflows/issues/188
|
|
144
144
|
"ignore:.*`Field` should not be instantiated.*:marshmallow.warnings.ChangedInMarshmallow4Warning",
|
|
145
|
+
#Remove when we drop python 3.11
|
|
146
|
+
"ignore:.*__contains__ will no longer raise TypeError.*:DeprecationWarning",
|
|
147
|
+
# epicscorelibs requires setuptools >= 70.1
|
|
148
|
+
"ignore:.*The 'wheel' package is no longer the canonical location of the 'bdist_wheel' command.*:DeprecationWarning",
|
|
145
149
|
]
|
|
146
150
|
# Doctest python code in docs, python code in src docstrings, test functions in tests
|
|
147
151
|
testpaths = "docs src tests/unit_tests"
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
STOP=0
|
|
6
6
|
START=1
|
|
7
7
|
IN_DEV=false
|
|
8
|
+
MODE=gda
|
|
8
9
|
|
|
9
10
|
for option in "$@"; do
|
|
10
11
|
case $option in
|
|
@@ -22,7 +23,9 @@ for option in "$@"; do
|
|
|
22
23
|
--dev)
|
|
23
24
|
IN_DEV=true
|
|
24
25
|
;;
|
|
25
|
-
|
|
26
|
+
--udc)
|
|
27
|
+
MODE=udc
|
|
28
|
+
;;
|
|
26
29
|
--help|--info|--h)
|
|
27
30
|
source .venv/bin/activate
|
|
28
31
|
echo "`basename $0` [options]"
|
|
@@ -38,6 +41,7 @@ Options:
|
|
|
38
41
|
--skip-startup-connection
|
|
39
42
|
Do not connect to devices at startup
|
|
40
43
|
--dev Enable dev mode to run from a local workspace on a development machine.
|
|
44
|
+
--udc Start hyperion in UDC mode instead of taking commands from GDA
|
|
41
45
|
--help This help
|
|
42
46
|
|
|
43
47
|
By default this script will start an Hyperion server unless the --no-start flag is specified.
|
|
@@ -121,7 +125,7 @@ if [[ $START == 1 ]]; then
|
|
|
121
125
|
declare -A h_and_cb_args=( ["IN_DEV"]="$IN_DEV" )
|
|
122
126
|
declare -A h_and_cb_arg_strings=( ["IN_DEV"]="--dev" )
|
|
123
127
|
|
|
124
|
-
h_commands=
|
|
128
|
+
h_commands="--mode $MODE"
|
|
125
129
|
cb_commands=()
|
|
126
130
|
for i in "${!h_and_cb_args[@]}"
|
|
127
131
|
do
|
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
# file generated by setuptools-scm
|
|
2
2
|
# don't change, don't track in version control
|
|
3
3
|
|
|
4
|
-
__all__ = [
|
|
4
|
+
__all__ = [
|
|
5
|
+
"__version__",
|
|
6
|
+
"__version_tuple__",
|
|
7
|
+
"version",
|
|
8
|
+
"version_tuple",
|
|
9
|
+
"__commit_id__",
|
|
10
|
+
"commit_id",
|
|
11
|
+
]
|
|
5
12
|
|
|
6
13
|
TYPE_CHECKING = False
|
|
7
14
|
if TYPE_CHECKING:
|
|
@@ -9,13 +16,19 @@ if TYPE_CHECKING:
|
|
|
9
16
|
from typing import Union
|
|
10
17
|
|
|
11
18
|
VERSION_TUPLE = Tuple[Union[int, str], ...]
|
|
19
|
+
COMMIT_ID = Union[str, None]
|
|
12
20
|
else:
|
|
13
21
|
VERSION_TUPLE = object
|
|
22
|
+
COMMIT_ID = object
|
|
14
23
|
|
|
15
24
|
version: str
|
|
16
25
|
__version__: str
|
|
17
26
|
__version_tuple__: VERSION_TUPLE
|
|
18
27
|
version_tuple: VERSION_TUPLE
|
|
28
|
+
commit_id: COMMIT_ID
|
|
29
|
+
__commit_id__: COMMIT_ID
|
|
19
30
|
|
|
20
|
-
__version__ = version = '1.5.
|
|
21
|
-
__version_tuple__ = version_tuple = (1, 5,
|
|
31
|
+
__version__ = version = '1.5.4'
|
|
32
|
+
__version_tuple__ = version_tuple = (1, 5, 4)
|
|
33
|
+
|
|
34
|
+
__commit_id__ = commit_id = 'gb4b359fcc'
|
{mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/aithre_lasershaping/__init__.py
RENAMED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
from mx_bluesky.beamlines.aithre_lasershaping.beamline_safe import (
|
|
2
|
+
go_to_zero,
|
|
2
3
|
set_beamline_safe_on_robot,
|
|
3
4
|
)
|
|
4
5
|
from mx_bluesky.beamlines.aithre_lasershaping.check_goniometer_performance import (
|
|
@@ -18,4 +19,5 @@ __all__ = [
|
|
|
18
19
|
"go_to_furthest_maximum",
|
|
19
20
|
"rotate_goniometer_relative",
|
|
20
21
|
"jog_sample",
|
|
22
|
+
"go_to_zero",
|
|
21
23
|
]
|
{mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/aithre_lasershaping/beamline_safe.py
RENAMED
|
@@ -34,3 +34,20 @@ def set_beamline_safe_on_robot(
|
|
|
34
34
|
else ForceBit.NO.value
|
|
35
35
|
)
|
|
36
36
|
yield from bps.abs_set(robot.set_beamline_safe, set_value, wait=True)
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
def go_to_zero(
|
|
40
|
+
goniometer: Goniometer = inject("goniometer"), group="move_to_zero", wait=True
|
|
41
|
+
) -> MsgGenerator:
|
|
42
|
+
"""
|
|
43
|
+
Rotate the goniometer and set stages to zero in preparation for robot load/unload.
|
|
44
|
+
Pass wait=False to avoid waiting for the move to complete.
|
|
45
|
+
"""
|
|
46
|
+
yield from bps.abs_set(goniometer.omega, 0, group=group)
|
|
47
|
+
yield from bps.abs_set(goniometer.x, 0, group=group)
|
|
48
|
+
yield from bps.abs_set(goniometer.y, 0, group=group)
|
|
49
|
+
yield from bps.abs_set(goniometer.z, 0, group=group)
|
|
50
|
+
yield from bps.abs_set(goniometer.sampy, 0, group=group)
|
|
51
|
+
yield from bps.abs_set(goniometer.sampz, 0, group=group)
|
|
52
|
+
if wait:
|
|
53
|
+
yield from bps.wait(group=group)
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
from mx_bluesky.beamlines.i04.experiment_plans.i04_grid_detect_then_xray_centre_plan import (
|
|
2
|
+
i04_grid_detect_then_xray_centre,
|
|
3
|
+
)
|
|
4
|
+
from mx_bluesky.beamlines.i04.thawing_plan import thaw, thaw_and_stream_to_redis
|
|
5
|
+
|
|
6
|
+
__all__ = [
|
|
7
|
+
"thaw",
|
|
8
|
+
"thaw_and_stream_to_redis",
|
|
9
|
+
"i04_grid_detect_then_xray_centre",
|
|
10
|
+
]
|
|
@@ -4,7 +4,6 @@ from functools import partial
|
|
|
4
4
|
|
|
5
5
|
import bluesky.plan_stubs as bps
|
|
6
6
|
import bluesky.preprocessors as bpp
|
|
7
|
-
from blueapi.core import BlueskyContext
|
|
8
7
|
from bluesky.utils import MsgGenerator
|
|
9
8
|
from dodal.common import inject
|
|
10
9
|
from dodal.devices.aperturescatterguard import ApertureScatterguard
|
|
@@ -66,19 +65,13 @@ from mx_bluesky.common.parameters.gridscan import GridCommon, SpecifiedThreeDGri
|
|
|
66
65
|
from mx_bluesky.common.preprocessors.preprocessors import (
|
|
67
66
|
transmission_and_xbpm_feedback_for_collection_decorator,
|
|
68
67
|
)
|
|
69
|
-
from mx_bluesky.common.utils.
|
|
68
|
+
from mx_bluesky.common.utils.log import LOGGER
|
|
70
69
|
from mx_bluesky.phase1_zebra.device_setup_plans.setup_zebra import (
|
|
71
70
|
setup_zebra_for_gridscan,
|
|
72
71
|
tidy_up_zebra_after_gridscan,
|
|
73
72
|
)
|
|
74
73
|
|
|
75
74
|
|
|
76
|
-
def create_devices(
|
|
77
|
-
context: BlueskyContext,
|
|
78
|
-
) -> GridDetectThenXRayCentreComposite:
|
|
79
|
-
return device_composite_from_context(context, GridDetectThenXRayCentreComposite)
|
|
80
|
-
|
|
81
|
-
|
|
82
75
|
# See https://github.com/DiamondLightSource/blueapi/issues/506 for using device composites
|
|
83
76
|
def i04_grid_detect_then_xray_centre(
|
|
84
77
|
parameters: GridCommon,
|
|
@@ -184,9 +177,11 @@ def get_ready_for_oav_and_close_shutter(
|
|
|
184
177
|
):
|
|
185
178
|
yield from bps.wait(PlanGroupCheckpointConstants.GRID_READY_FOR_DC)
|
|
186
179
|
group = "get_ready_for_oav_and_close_shutter"
|
|
180
|
+
LOGGER.info("Non-udc tidy: Seting up beamline for OAV")
|
|
187
181
|
yield from setup_beamline_for_OAV(
|
|
188
182
|
smargon, backlight, aperture_scatterguard, group=group
|
|
189
183
|
)
|
|
184
|
+
LOGGER.info("Non-udc tidy: Closing detector shutter")
|
|
190
185
|
yield from bps.abs_set(
|
|
191
186
|
detector_motion.shutter,
|
|
192
187
|
0,
|
|
@@ -10,7 +10,7 @@ from dodal.devices.oav.oav_detector import OAV
|
|
|
10
10
|
from dodal.devices.oav.oav_to_redis_forwarder import OAVToRedisForwarder, Source
|
|
11
11
|
from dodal.devices.robot import BartRobot
|
|
12
12
|
from dodal.devices.smargon import Smargon
|
|
13
|
-
from dodal.devices.thawer import
|
|
13
|
+
from dodal.devices.thawer import OnOff, Thawer
|
|
14
14
|
|
|
15
15
|
from mx_bluesky.beamlines.i04.callbacks.murko_callback import MurkoCallback
|
|
16
16
|
|
|
@@ -117,7 +117,7 @@ def _thaw(
|
|
|
117
117
|
|
|
118
118
|
def do_thaw():
|
|
119
119
|
yield from bps.abs_set(smargon.omega.velocity, new_velocity, wait=True)
|
|
120
|
-
yield from bps.abs_set(thawer.control,
|
|
120
|
+
yield from bps.abs_set(thawer.control, OnOff.ON, wait=True)
|
|
121
121
|
yield from bps.rel_set(smargon.omega, rotation, wait=True)
|
|
122
122
|
if plan_between_rotations:
|
|
123
123
|
yield from plan_between_rotations()
|
|
@@ -125,7 +125,7 @@ def _thaw(
|
|
|
125
125
|
|
|
126
126
|
def cleanup():
|
|
127
127
|
yield from bps.abs_set(smargon.omega.velocity, inital_velocity, wait=True)
|
|
128
|
-
yield from bps.abs_set(thawer.control,
|
|
128
|
+
yield from bps.abs_set(thawer.control, OnOff.OFF, wait=True)
|
|
129
129
|
|
|
130
130
|
# Always cleanup even if there is a failure
|
|
131
131
|
yield from bpp.contingency_wrapper(
|
{mx_bluesky-1.5.2 → mx_bluesky-1.5.4}/src/mx_bluesky/beamlines/i24/serial/blueapi_config.yaml
RENAMED
|
@@ -7,11 +7,11 @@ env:
|
|
|
7
7
|
events:
|
|
8
8
|
broadcast_status_events: false
|
|
9
9
|
api:
|
|
10
|
-
|
|
10
|
+
url: http://localhost:25565
|
|
11
11
|
cors:
|
|
12
12
|
allow_credentials: True
|
|
13
13
|
origins:
|
|
14
14
|
- "*"
|
|
15
15
|
stomp:
|
|
16
16
|
enabled: true
|
|
17
|
-
|
|
17
|
+
url: http://i24-control.diamond.ac.uk:61613
|