dls-dodal 1.33.0__tar.gz → 1.34.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.
Files changed (369) hide show
  1. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.copier-answers.yml +3 -1
  2. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.github/CONTRIBUTING.md +1 -1
  3. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.github/pages/make_switcher.py +8 -6
  4. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.github/workflows/_pypi.yml +2 -0
  5. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.github/workflows/_release.yml +1 -1
  6. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.github/workflows/ci.yml +1 -1
  7. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.gitignore +1 -0
  8. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/Dockerfile +1 -1
  9. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/PKG-INFO +3 -3
  10. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/README.md +1 -1
  11. dls_dodal-1.34.1/docs/_api.rst +16 -0
  12. dls_dodal-1.34.1/docs/_templates/custom-module-template.rst +37 -0
  13. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/conf.py +13 -5
  14. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to/create-beamline.rst +1 -1
  15. dls_dodal-1.34.1/docs/how-to/write-tests.md +8 -0
  16. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/reference/standards.rst +1 -1
  17. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/reference.md +1 -1
  18. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/pyproject.toml +8 -6
  19. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dls_dodal.egg-info/PKG-INFO +3 -3
  20. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dls_dodal.egg-info/SOURCES.txt +40 -19
  21. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dls_dodal.egg-info/requires.txt +1 -1
  22. dls_dodal-1.34.1/src/dodal/__init__.py +11 -0
  23. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/_version.py +2 -2
  24. dls_dodal-1.34.1/src/dodal/beamline_specific_utils/i03.py +17 -0
  25. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/beamlines/__init__.py +2 -3
  26. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/beamlines/i03.py +41 -9
  27. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/beamlines/i04.py +26 -4
  28. dls_dodal-1.34.1/src/dodal/beamlines/i10.py +257 -0
  29. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/beamlines/i22.py +1 -2
  30. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/beamlines/i24.py +7 -7
  31. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/beamlines/p38.py +1 -2
  32. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/common/types.py +2 -7
  33. dls_dodal-1.34.1/src/dodal/devices/apple2_undulator.py +602 -0
  34. dls_dodal-1.34.1/src/dodal/devices/areadetector/plugins/CAM.py +31 -0
  35. dls_dodal-1.34.1/src/dodal/devices/areadetector/plugins/MJPG.py +83 -0
  36. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/backlight.py +7 -6
  37. dls_dodal-1.34.1/src/dodal/devices/diamond_filter.py +47 -0
  38. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/eiger.py +6 -2
  39. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/eiger_odin.py +48 -39
  40. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/focusing_mirror.py +14 -8
  41. dls_dodal-1.34.1/src/dodal/devices/i10/i10_apple2.py +398 -0
  42. dls_dodal-1.34.1/src/dodal/devices/i10/i10_setting_data.py +7 -0
  43. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/i22/dcm.py +7 -8
  44. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/i24/dual_backlight.py +5 -5
  45. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/oav/oav_calculations.py +22 -0
  46. dls_dodal-1.34.1/src/dodal/devices/oav/oav_detector.py +127 -0
  47. dls_dodal-1.34.1/src/dodal/devices/oav/oav_parameters.py +160 -0
  48. dls_dodal-1.34.1/src/dodal/devices/oav/oav_to_redis_forwarder.py +170 -0
  49. {dls_dodal-1.33.0/src/dodal/devices/oav → dls_dodal-1.34.1/src/dodal/devices/oav/snapshots}/grid_overlay.py +0 -43
  50. dls_dodal-1.34.1/src/dodal/devices/oav/snapshots/snapshot_with_beam_centre.py +64 -0
  51. dls_dodal-1.34.1/src/dodal/devices/oav/snapshots/snapshot_with_grid.py +57 -0
  52. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/oav/utils.py +26 -25
  53. dls_dodal-1.34.1/src/dodal/devices/pgm.py +41 -0
  54. dls_dodal-1.34.1/src/dodal/devices/qbpm.py +18 -0
  55. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/robot.py +2 -2
  56. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/smargon.py +2 -2
  57. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/tetramm.py +2 -2
  58. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/undulator.py +2 -1
  59. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/util/adjuster_plans.py +1 -1
  60. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/util/lookup_tables.py +4 -5
  61. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/zebra.py +5 -2
  62. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/zocalo/zocalo_results.py +13 -10
  63. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/plans/data_session_metadata.py +2 -2
  64. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/plans/motor_util_plans.py +11 -9
  65. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/utils.py +7 -0
  66. {dls_dodal-1.33.0/tests/devices → dls_dodal-1.34.1}/system_tests/test_aperturescatterguard_system.py +2 -2
  67. {dls_dodal-1.33.0/tests/devices → dls_dodal-1.34.1}/system_tests/test_eiger_system.py +1 -1
  68. dls_dodal-1.34.1/system_tests/test_oav_system.py +55 -0
  69. {dls_dodal-1.33.0/tests/devices → dls_dodal-1.34.1}/system_tests/test_oav_to_redis_system.py +11 -6
  70. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/beamlines/unit_tests/test_i24.py +2 -1
  71. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/beamlines/unit_tests/test_mapping.py +2 -2
  72. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/common/beamlines/test_device_instantiation.py +3 -2
  73. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/common/test_coordination.py +1 -1
  74. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/conftest.py +38 -15
  75. dls_dodal-1.34.1/tests/devices/i10/lookupTables/IDEnergy2GapCalibrations.csv +53 -0
  76. dls_dodal-1.34.1/tests/devices/i10/lookupTables/IDEnergy2PhaseCalibrations.csv +29 -0
  77. dls_dodal-1.34.1/tests/devices/i10/lookupTables/expectedIDEnergy2GapCalibrationsIdd.pkl +0 -0
  78. dls_dodal-1.34.1/tests/devices/i10/lookupTables/expectedIDEnergy2GapCalibrationsIdu.pkl +0 -0
  79. dls_dodal-1.34.1/tests/devices/i10/lookupTables/expectedIDEnergy2PhaseCalibrationsidd.pkl +0 -0
  80. dls_dodal-1.34.1/tests/devices/i10/lookupTables/expectedIDEnergy2PhaseCalibrationsidu.pkl +0 -0
  81. dls_dodal-1.34.1/tests/devices/i10/test_i10Apple2.py +485 -0
  82. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/i22/test_dcm.py +2 -2
  83. dls_dodal-1.34.1/tests/devices/test_diamond_filter.py +57 -0
  84. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/i24/test_pmac.py +1 -1
  85. dls_dodal-1.34.1/tests/devices/unit_tests/oav/conftest.py +25 -0
  86. {dls_dodal-1.33.0/tests/devices/unit_tests → dls_dodal-1.34.1/tests/devices/unit_tests/oav}/test_grid_overlay.py +3 -3
  87. dls_dodal-1.34.1/tests/devices/unit_tests/oav/test_oav.py +129 -0
  88. dls_dodal-1.34.1/tests/devices/unit_tests/oav/test_oav_parameters.py +78 -0
  89. dls_dodal-1.34.1/tests/devices/unit_tests/oav/test_oav_to_redis_forwarder.py +202 -0
  90. dls_dodal-1.34.1/tests/devices/unit_tests/oav/test_oav_utils.py +110 -0
  91. dls_dodal-1.34.1/tests/devices/unit_tests/oav/test_snapshots.py +188 -0
  92. dls_dodal-1.34.1/tests/devices/unit_tests/test_apple2_undulator.py +359 -0
  93. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_backlight.py +4 -4
  94. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_eiger.py +24 -18
  95. dls_dodal-1.34.1/tests/devices/unit_tests/test_focusing_mirror.py +259 -0
  96. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_odin.py +87 -18
  97. dls_dodal-1.34.1/tests/devices/unit_tests/test_qbpm.py +29 -0
  98. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_tetramm.py +26 -14
  99. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_zebra.py +3 -3
  100. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_zocalo_results.py +15 -0
  101. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/util/test_beamline_specific_utils.py +3 -2
  102. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/util/test_lookup_tables.py +4 -4
  103. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/util/test_save_panda.py +1 -1
  104. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/preprocessors/test_filesystem_metadata.py +2 -1
  105. dls_dodal-1.33.0/docs/reference/api.md +0 -26
  106. dls_dodal-1.33.0/src/dodal/__init__.py +0 -3
  107. dls_dodal-1.33.0/src/dodal/beamline_specific_utils/i03.py +0 -13
  108. dls_dodal-1.33.0/src/dodal/beamlines/i04_1.py +0 -140
  109. dls_dodal-1.33.0/src/dodal/devices/areadetector/plugins/MJPG.py +0 -138
  110. dls_dodal-1.33.0/src/dodal/devices/oav/oav_detector.py +0 -92
  111. dls_dodal-1.33.0/src/dodal/devices/oav/oav_errors.py +0 -35
  112. dls_dodal-1.33.0/src/dodal/devices/oav/oav_parameters.py +0 -214
  113. dls_dodal-1.33.0/src/dodal/devices/oav/oav_to_redis_forwarder.py +0 -129
  114. dls_dodal-1.33.0/tests/devices/system_tests/test_oav_system.py +0 -46
  115. dls_dodal-1.33.0/tests/devices/unit_tests/areadetector/plugins/test_MJPG.py +0 -45
  116. dls_dodal-1.33.0/tests/devices/unit_tests/oav/test_oav.py +0 -133
  117. dls_dodal-1.33.0/tests/devices/unit_tests/oav/test_oav_parameters.py +0 -48
  118. dls_dodal-1.33.0/tests/devices/unit_tests/oav/test_oav_to_redis_forwarder.py +0 -140
  119. dls_dodal-1.33.0/tests/devices/unit_tests/test_focusing_mirror.py +0 -270
  120. dls_dodal-1.33.0/tests/devices/unit_tests/test_oav.py +0 -262
  121. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.devcontainer/devcontainer.json +0 -0
  122. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.github/ISSUE_TEMPLATE/issue_template.md +0 -0
  123. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.github/actions/install_requirements/action.yml +0 -0
  124. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.github/dependabot.yml +0 -0
  125. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.github/pages/index.html +0 -0
  126. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.github/workflows/_check.yml +0 -0
  127. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.github/workflows/_dist.yml +0 -0
  128. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.github/workflows/_docs.yml +0 -0
  129. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.github/workflows/_test.yml +0 -0
  130. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.github/workflows/_tox.yml +0 -0
  131. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.github/workflows/periodic.yml +0 -0
  132. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.pre-commit-config.yaml +0 -0
  133. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.vscode/extensions.json +0 -0
  134. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.vscode/launch.json +0 -0
  135. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.vscode/settings.json +0 -0
  136. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/.vscode/tasks.json +0 -0
  137. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/LICENSE +0 -0
  138. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/catalog-info.yaml +0 -0
  139. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/_templates/autosummary/class.rst +0 -0
  140. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/_templates/autosummary/module.rst +0 -0
  141. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/assets/zocalo.png +0 -0
  142. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/explanations/decisions/0001-record-architecture-decisions.md +0 -0
  143. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/explanations/decisions/0002-switched-to-python-copier-template.md +0 -0
  144. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/explanations/decisions/COPYME +0 -0
  145. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/explanations/decisions.md +0 -0
  146. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/explanations.md +0 -0
  147. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/genindex.md +0 -0
  148. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to/build-docs.md +0 -0
  149. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to/contribute.md +0 -0
  150. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to/coverage.md +0 -0
  151. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to/dev-install.md +0 -0
  152. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to/excalidraw.md +0 -0
  153. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to/lint.md +0 -0
  154. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to/lock-requirements.md +0 -0
  155. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to/make-new-ophyd-async-device.rst +0 -0
  156. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to/make-release.md +0 -0
  157. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to/move-code.rst +0 -0
  158. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to/pypi.md +0 -0
  159. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to/run-tests.md +0 -0
  160. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to/static-analysis.md +0 -0
  161. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to/update-template.md +0 -0
  162. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to/zocalo.rst +0 -0
  163. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/how-to.md +0 -0
  164. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/images/dls-logo.svg +0 -0
  165. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/images/excalidraw-example.svg +0 -0
  166. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/index.md +0 -0
  167. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/reference/device-standards.rst +0 -0
  168. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/tutorials/get_started.rst +0 -0
  169. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/tutorials/installation.md +0 -0
  170. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/docs/tutorials.md +0 -0
  171. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/pull_request_template.md +0 -0
  172. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/setup.cfg +0 -0
  173. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/__init__.py +0 -0
  174. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dls_dodal.egg-info/dependency_links.txt +0 -0
  175. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dls_dodal.egg-info/entry_points.txt +0 -0
  176. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dls_dodal.egg-info/top_level.txt +0 -0
  177. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/__main__.py +0 -0
  178. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/adsim.py +0 -0
  179. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/beamline_specific_utils/__init__.py +0 -0
  180. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/beamlines/README.md +0 -0
  181. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/beamlines/b01_1.py +0 -0
  182. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/beamlines/i13_1.py +0 -0
  183. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/beamlines/i20_1.py +0 -0
  184. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/beamlines/i23.py +0 -0
  185. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/beamlines/p45.py +0 -0
  186. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/beamlines/p99.py +0 -0
  187. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/beamlines/training_rig.py +0 -0
  188. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/cli.py +0 -0
  189. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/common/__init__.py +0 -0
  190. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/common/beamlines/__init__.py +0 -0
  191. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/common/beamlines/beamline_parameters.py +0 -0
  192. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/common/beamlines/beamline_utils.py +0 -0
  193. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/common/beamlines/device_helpers.py +0 -0
  194. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/common/coordination.py +0 -0
  195. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/common/maths.py +0 -0
  196. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/common/signal_utils.py +0 -0
  197. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/common/udc_directory_provider.py +0 -0
  198. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/common/visit.py +0 -0
  199. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/CTAB.py +0 -0
  200. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/__init__.py +0 -0
  201. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/adsim.py +0 -0
  202. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/aperture.py +0 -0
  203. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/aperturescatterguard.py +0 -0
  204. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/areadetector/__init__.py +0 -0
  205. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/areadetector/adaravis.py +0 -0
  206. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/areadetector/adsim.py +0 -0
  207. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/areadetector/adutils.py +0 -0
  208. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/attenuator.py +0 -0
  209. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/cryostream.py +0 -0
  210. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/dcm.py +0 -0
  211. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/detector/__init__.py +0 -0
  212. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/detector/det_dim_constants.py +0 -0
  213. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/detector/det_dist_to_beam_converter.py +0 -0
  214. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/detector/det_resolution.py +0 -0
  215. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/detector/detector.py +0 -0
  216. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/detector/detector_motion.py +0 -0
  217. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/fast_grid_scan.py +0 -0
  218. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/fluorescence_detector_motion.py +0 -0
  219. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/flux.py +0 -0
  220. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/hutch_shutter.py +0 -0
  221. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/i03/__init__.py +0 -0
  222. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/i04/transfocator.py +0 -0
  223. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/i20_1/__init__.py +0 -0
  224. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/i22/fswitch.py +0 -0
  225. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/i22/nxsas.py +0 -0
  226. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/i24/__init__.py +0 -0
  227. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/i24/aperture.py +0 -0
  228. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/i24/beamstop.py +0 -0
  229. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/i24/dcm.py +0 -0
  230. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/i24/i24_detector_motion.py +0 -0
  231. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/i24/i24_vgonio.py +0 -0
  232. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/i24/pmac.py +0 -0
  233. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/ipin.py +0 -0
  234. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/linkam3.py +0 -0
  235. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/logging_ophyd_device.py +0 -0
  236. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/motors.py +0 -0
  237. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/oav/__init__.py +0 -0
  238. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/oav/microns_for_zoom_levels.json +0 -0
  239. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/oav/pin_image_recognition/__init__.py +0 -0
  240. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/oav/pin_image_recognition/manual_test.py +0 -0
  241. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/oav/pin_image_recognition/utils.py +0 -0
  242. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/p45.py +0 -0
  243. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/p99/__init__.py +0 -0
  244. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/p99/sample_stage.py +0 -0
  245. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/s4_slit_gaps.py +0 -0
  246. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/scatterguard.py +0 -0
  247. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/scintillator.py +0 -0
  248. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/slits.py +0 -0
  249. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/status.py +0 -0
  250. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/synchrotron.py +0 -0
  251. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/thawer.py +0 -0
  252. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/training_rig/__init__.py +0 -0
  253. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/training_rig/sample_stage.py +0 -0
  254. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/turbo_slit.py +0 -0
  255. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/undulator_dcm.py +0 -0
  256. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/util/__init__.py +0 -0
  257. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/util/epics_util.py +0 -0
  258. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/util/motor_utils.py +0 -0
  259. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/util/save_panda.py +0 -0
  260. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/util/test_utils.py +0 -0
  261. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/webcam.py +0 -0
  262. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/xbpm_feedback.py +0 -0
  263. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/xspress3/xspress3.py +0 -0
  264. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/xspress3/xspress3_channel.py +0 -0
  265. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/zebra_controlled_shutter.py +0 -0
  266. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/zocalo/__init__.py +0 -0
  267. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/devices/zocalo/zocalo_interaction.py +0 -0
  268. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/log.py +0 -0
  269. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/parameters/experiment_parameter_base.py +0 -0
  270. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/src/dodal/plans/check_topup.py +0 -0
  271. {dls_dodal-1.33.0/tests → dls_dodal-1.34.1/system_tests}/__init__.py +0 -0
  272. {dls_dodal-1.33.0/tests/devices → dls_dodal-1.34.1}/system_tests/test_gridscan_system.py +0 -0
  273. {dls_dodal-1.33.0/tests/devices → dls_dodal-1.34.1}/system_tests/test_slit_gaps_system.py +0 -0
  274. {dls_dodal-1.33.0/tests/devices → dls_dodal-1.34.1}/system_tests/test_smargon_system.py +0 -0
  275. {dls_dodal-1.33.0/tests/devices → dls_dodal-1.34.1}/system_tests/test_synchrotron_system.py +0 -0
  276. {dls_dodal-1.33.0/tests/devices → dls_dodal-1.34.1}/system_tests/test_undulator_system.py +0 -0
  277. {dls_dodal-1.33.0/tests/devices → dls_dodal-1.34.1}/system_tests/test_zebra_system.py +0 -0
  278. {dls_dodal-1.33.0/tests/devices → dls_dodal-1.34.1}/system_tests/test_zocalo_results.py +0 -0
  279. {dls_dodal-1.33.0/tests/beamlines → dls_dodal-1.34.1/tests}/__init__.py +0 -0
  280. {dls_dodal-1.33.0/tests/beamlines/unit_tests → dls_dodal-1.34.1/tests/beamlines}/__init__.py +0 -0
  281. {dls_dodal-1.33.0/tests/common → dls_dodal-1.34.1/tests/beamlines/unit_tests}/__init__.py +0 -0
  282. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/beamlines/unit_tests/test_i03.py +0 -0
  283. {dls_dodal-1.33.0/tests/common/beamlines → dls_dodal-1.34.1/tests/common}/__init__.py +0 -0
  284. {dls_dodal-1.33.0/tests/devices → dls_dodal-1.34.1/tests/common/beamlines}/__init__.py +0 -0
  285. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/common/beamlines/test_beamline_parameters.py +0 -0
  286. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/common/beamlines/test_beamline_utils.py +0 -0
  287. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/common/beamlines/test_device_helpers.py +0 -0
  288. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/common/test_maths.py +0 -0
  289. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/common/test_udc_directory_provider.py +0 -0
  290. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/common/test_visit.py +0 -0
  291. {dls_dodal-1.33.0/tests/devices/i04 → dls_dodal-1.34.1/tests/devices}/__init__.py +0 -0
  292. {dls_dodal-1.33.0/tests/devices/system_tests → dls_dodal-1.34.1/tests/devices/i04}/__init__.py +0 -0
  293. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/i04/test_transfocator.py +0 -0
  294. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/i22/test_fswitch.py +0 -0
  295. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/i22/test_metadataholder.py +0 -0
  296. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/training_rig/test_sample_stage.py +0 -0
  297. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/__init__.py +0 -0
  298. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/conftest.py +0 -0
  299. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/detector/test_det_dim_constants.py +0 -0
  300. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/detector/test_det_resolution.py +0 -0
  301. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/detector/test_detector.py +0 -0
  302. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/i24/__init__.py +0 -0
  303. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/i24/test_dual_backlight.py +0 -0
  304. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/oav/__init__.py +0 -0
  305. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/oav/image_recognition/test_pin_tip_detect.py +0 -0
  306. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/oav/image_recognition/test_pin_tip_detect_utils.py +0 -0
  307. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/p99/test_p99_stage.py +0 -0
  308. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_OAVCentring.json +0 -0
  309. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_aperture.py +0 -0
  310. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_aperture_scatterguard.py +0 -0
  311. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_attenuator.py +0 -0
  312. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_bart_robot.py +0 -0
  313. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_beam_converter.py +0 -0
  314. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_beamline_undulator_to_gap_lookup_table.txt +0 -0
  315. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_daq_configuration/domain/beamlineParameters +0 -0
  316. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_daq_configuration/lookup/BeamLineEnergy_DCM_Pitch_converter.txt +0 -0
  317. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_daq_configuration/lookup/BeamLineEnergy_DCM_Roll_converter.txt +0 -0
  318. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_dcm.py +0 -0
  319. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_display.configuration +0 -0
  320. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_gridscan.py +0 -0
  321. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_hutch_shutter.py +0 -0
  322. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_jCameraManZoomLevels.xml +0 -0
  323. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_linkam3.py +0 -0
  324. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_lookup_table.txt +0 -0
  325. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_lookup_table_2.txt +0 -0
  326. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_shutter.py +0 -0
  327. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_slits.py +0 -0
  328. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_smargon.py +0 -0
  329. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_status.py +0 -0
  330. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_synchrotron.py +0 -0
  331. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_thawer.py +0 -0
  332. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_undulator.py +0 -0
  333. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_undulator_dcm.py +0 -0
  334. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_utils.py +0 -0
  335. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_webcam.py +0 -0
  336. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_xbpm_feedback.py +0 -0
  337. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_xspress3.py +0 -0
  338. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/test_zocalo_interaction.py +0 -0
  339. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/util/__init__.py +0 -0
  340. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/devices/unit_tests/util/test_adjuster_plans.py +0 -0
  341. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/fake_beamline.py +0 -0
  342. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/fake_beamline_all_devices_raise_exception.py +0 -0
  343. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/fake_beamline_broken_dependency.py +0 -0
  344. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/fake_beamline_dependencies.py +0 -0
  345. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/fake_beamline_disordered_dependencies.py +0 -0
  346. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/fake_beamline_misbehaving_builtins.py +0 -0
  347. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/fake_beamline_some_devices_working.py +0 -0
  348. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/fake_zocalo/README.rst +0 -0
  349. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/fake_zocalo/__init__.py +0 -0
  350. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/fake_zocalo/__main__.py +0 -0
  351. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/fake_zocalo/dls_start_fake_zocalo.sh +0 -0
  352. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/plans/test_motor_util_plans.py +0 -0
  353. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/plans/test_topup_plan.py +0 -0
  354. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/test_cli.py +0 -0
  355. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/test_data/bad_beamlineParameters +0 -0
  356. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/test_data/i04_beamlineParameters +0 -0
  357. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/test_data/test_beamline_dcm_roll_converter.txt +0 -0
  358. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/test_data/test_beamline_dcm_roll_converter_non_monotonic.txt +0 -0
  359. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/test_data/test_beamline_dcm_roll_converter_reversed.txt +0 -0
  360. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/test_data/test_beamline_parameters.txt +0 -0
  361. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/test_data/test_det_dist_converter.txt +0 -0
  362. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/test_data/test_images/oav_snapshot_expected.png +0 -0
  363. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/test_data/test_images/oav_snapshot_test.png +0 -0
  364. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/test_data/topup_long_delay.txt +0 -0
  365. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/test_data/topup_short_params.txt +0 -0
  366. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/test_utils.py +0 -0
  367. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/unit_tests/__init__.py +0 -0
  368. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/unit_tests/test_cli.py +0 -0
  369. {dls_dodal-1.33.0 → dls_dodal-1.34.1}/tests/unit_tests/test_log.py +0 -0
@@ -1,9 +1,11 @@
1
1
  # Changes here will be overwritten by Copier
2
- _commit: 2.2.0
2
+ _commit: 2.5.0
3
3
  _src_path: gh:DiamondLightSource/python-copier-template
4
4
  author_email: dominic.oram@diamond.ac.uk
5
5
  author_name: Dominic Oram
6
+ component_lifecycle: production
6
7
  component_owner: group:data-acquisition
8
+ component_type: library
7
9
  description: Ophyd devices and other utils that could be used across DLS beamlines
8
10
  distribution_name: dls-dodal
9
11
  docker: false
@@ -24,4 +24,4 @@ It is recommended that developers use a [vscode devcontainer](https://code.visua
24
24
 
25
25
  This project was created using the [Diamond Light Source Copier Template](https://github.com/DiamondLightSource/python-copier-template) for Python projects.
26
26
 
27
- For more information on common tasks like setting up a developer environment, running the tests, and setting a pre-commit hook, see the template's [How-to guides](https://diamondlightsource.github.io/python-copier-template/2.2.0/how-to.html).
27
+ For more information on common tasks like setting up a developer environment, running the tests, and setting a pre-commit hook, see the template's [How-to guides](https://diamondlightsource.github.io/python-copier-template/2.5.0/how-to.html).
@@ -1,3 +1,5 @@
1
+ """Make switcher.json to allow docs to switch between different versions."""
2
+
1
3
  import json
2
4
  import logging
3
5
  from argparse import ArgumentParser
@@ -6,6 +8,7 @@ from subprocess import CalledProcessError, check_output
6
8
 
7
9
 
8
10
  def report_output(stdout: bytes, label: str) -> list[str]:
11
+ """Print and return something received frm stdout."""
9
12
  ret = stdout.decode().strip().split("\n")
10
13
  print(f"{label}: {ret}")
11
14
  return ret
@@ -52,14 +55,12 @@ def get_versions(ref: str, add: str | None) -> list[str]:
52
55
  return versions
53
56
 
54
57
 
55
- def write_json(path: Path, repository: str, versions: str):
58
+ def write_json(path: Path, repository: str, versions: list[str]):
59
+ """Write the JSON switcher to path."""
56
60
  org, repo_name = repository.split("/")
57
- pages_url = f"https://{org}.github.io"
58
- if repo_name != f"{org}.github.io":
59
- # Only add the repo name if it isn't the source for the org pages site
60
- pages_url += f"/{repo_name}"
61
61
  struct = [
62
- {"version": version, "url": f"{pages_url}/{version}/"} for version in versions
62
+ {"version": version, "url": f"https://{org}.github.io/{repo_name}/{version}/"}
63
+ for version in versions
63
64
  ]
64
65
  text = json.dumps(struct, indent=2)
65
66
  print(f"JSON switcher:\n{text}")
@@ -67,6 +68,7 @@ def write_json(path: Path, repository: str, versions: str):
67
68
 
68
69
 
69
70
  def main(args=None):
71
+ """Parse args and write switcher."""
70
72
  parser = ArgumentParser(
71
73
  description="Make a versions.json file from gh-pages directories"
72
74
  )
@@ -15,3 +15,5 @@ jobs:
15
15
 
16
16
  - name: Publish to PyPI using trusted publishing
17
17
  uses: pypa/gh-action-pypi-publish@release/v1
18
+ with:
19
+ attestations: false
@@ -23,7 +23,7 @@ jobs:
23
23
  - name: Create GitHub Release
24
24
  # We pin to the SHA, not the tag, for security reasons.
25
25
  # https://docs.github.com/en/actions/learn-github-actions/security-hardening-for-github-actions#using-third-party-actions
26
- uses: softprops/action-gh-release@c062e08bd532815e2082a85e87e3ef29c3e6d191 # v2.0.8
26
+ uses: softprops/action-gh-release@e7a8f85e1c67a31e6ed99a94b41bd0b71bbee6b8 # v2.0.9
27
27
  with:
28
28
  prerelease: ${{ contains(github.ref_name, 'a') || contains(github.ref_name, 'b') || contains(github.ref_name, 'rc') }}
29
29
  files: "*"
@@ -21,7 +21,7 @@ jobs:
21
21
  strategy:
22
22
  matrix:
23
23
  runs-on: ["ubuntu-latest"] # can add windows-latest, macos-latest
24
- python-version: ["3.10", "3.11"] # add 3.12 when p4p #145 is fixed
24
+ python-version: ["3.10", "3.11", "3.12"]
25
25
  include:
26
26
  # Include one that runs in the dev environment
27
27
  - runs-on: "ubuntu-latest"
@@ -57,6 +57,7 @@ tmp/
57
57
  # Sphinx documentation
58
58
  docs/_build/
59
59
  docs/reference/generated/
60
+ docs/_api
60
61
 
61
62
  # PyBuilder
62
63
  target/
@@ -1,7 +1,7 @@
1
1
  # The devcontainer should use the developer target and run as root with podman
2
2
  # or docker with user namespaces.
3
3
  ARG PYTHON_VERSION=3.11
4
- FROM python:${PYTHON_VERSION} as developer
4
+ FROM python:${PYTHON_VERSION} AS developer
5
5
 
6
6
  # Add any system dependencies for the developer/build environment here
7
7
  RUN apt-get update && apt-get install -y --no-install-recommends \
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dls-dodal
3
- Version: 1.33.0
3
+ Version: 1.34.1
4
4
  Summary: Ophyd devices and other utils that could be used across DLS beamlines
5
5
  Author-email: Dominic Oram <dominic.oram@diamond.ac.uk>
6
6
  License: Apache License
@@ -216,7 +216,7 @@ Description-Content-Type: text/markdown
216
216
  License-File: LICENSE
217
217
  Requires-Dist: click
218
218
  Requires-Dist: ophyd
219
- Requires-Dist: ophyd-async<0.7,>=0.6
219
+ Requires-Dist: ophyd-async<0.8,>=0.7.0a1
220
220
  Requires-Dist: bluesky
221
221
  Requires-Dist: pyepics
222
222
  Requires-Dist: dataclasses-json
@@ -263,7 +263,7 @@ Requires-Dist: types-aiofiles; extra == "dev"
263
263
  [![CI](https://github.com/DiamondLightSource/dodal/actions/workflows/ci.yml/badge.svg)](https://github.com/DiamondLightSource/dodal/actions/workflows/ci.yml)
264
264
  [![Coverage](https://codecov.io/gh/DiamondLightSource/dodal/branch/main/graph/badge.svg)](https://codecov.io/gh/DiamondLightSource/dodal)
265
265
  [![PyPI](https://img.shields.io/pypi/v/dls-dodal.svg)](https://pypi.org/project/dls-dodal)
266
- [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
266
+ [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)
267
267
 
268
268
  # dodal
269
269
 
@@ -1,7 +1,7 @@
1
1
  [![CI](https://github.com/DiamondLightSource/dodal/actions/workflows/ci.yml/badge.svg)](https://github.com/DiamondLightSource/dodal/actions/workflows/ci.yml)
2
2
  [![Coverage](https://codecov.io/gh/DiamondLightSource/dodal/branch/main/graph/badge.svg)](https://codecov.io/gh/DiamondLightSource/dodal)
3
3
  [![PyPI](https://img.shields.io/pypi/v/dls-dodal.svg)](https://pypi.org/project/dls-dodal)
4
- [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
4
+ [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)
5
5
 
6
6
  # dodal
7
7
 
@@ -0,0 +1,16 @@
1
+ :orphan:
2
+
3
+ ..
4
+ This page is not included in the TOC tree, but must exist so that the
5
+ autosummary pages are generated for dodal and all its
6
+ subpackages
7
+
8
+ API
9
+ ===
10
+
11
+ .. autosummary::
12
+ :toctree: _api
13
+ :template: custom-module-template.rst
14
+ :recursive:
15
+
16
+ dodal
@@ -0,0 +1,37 @@
1
+ {{ ('``' + fullname + '``') | underline }}
2
+
3
+ {%- set filtered_members = [] %}
4
+ {%- for item in members %}
5
+ {%- if item in functions + classes + exceptions + attributes %}
6
+ {% set _ = filtered_members.append(item) %}
7
+ {%- endif %}
8
+ {%- endfor %}
9
+
10
+ .. automodule:: {{ fullname }}
11
+ :members:
12
+
13
+ {% block modules %}
14
+ {% if modules %}
15
+ .. rubric:: Submodules
16
+
17
+ .. autosummary::
18
+ :toctree:
19
+ :template: custom-module-template.rst
20
+ :recursive:
21
+ {% for item in modules %}
22
+ {{ item }}
23
+ {%- endfor %}
24
+ {% endif %}
25
+ {% endblock %}
26
+
27
+ {% block members %}
28
+ {% if filtered_members %}
29
+ .. rubric:: Members
30
+
31
+ .. autosummary::
32
+ :nosignatures:
33
+ {% for item in filtered_members %}
34
+ {{ item }}
35
+ {%- endfor %}
36
+ {% endif %}
37
+ {% endblock %}
@@ -1,8 +1,9 @@
1
- # Configuration file for the Sphinx documentation builder.
2
- #
3
- # This file only contains a selection of the most common options. For a full
4
- # list see the documentation:
5
- # https://www.sphinx-doc.org/en/master/usage/configuration.html
1
+ """Configuration file for the Sphinx documentation builder.
2
+
3
+ This file only contains a selection of the most common options. For a full
4
+ list see the documentation:
5
+ https://www.sphinx-doc.org/en/master/usage/configuration.html
6
+ """
6
7
 
7
8
  import sys
8
9
  from inspect import isclass
@@ -33,6 +34,7 @@ else:
33
34
  extensions = [
34
35
  # Use this for generating API docs
35
36
  "sphinx.ext.autodoc",
37
+ # and making summary tables at the top of API docs
36
38
  "sphinx.ext.autosummary",
37
39
  # This can parse google style docstrings
38
40
  "sphinx.ext.napoleon",
@@ -91,6 +93,12 @@ autodoc_preserve_defaults = True
91
93
  autosummary_generate = True
92
94
  autosummary_imported_members = False
93
95
 
96
+ # Document only what is in __all__
97
+ autosummary_ignore_module_all = False
98
+
99
+ # Add any paths that contain templates here, relative to this directory.
100
+ templates_path = ["_templates"]
101
+
94
102
  # Output graphviz directive produced images in a scalable format
95
103
  graphviz_output_format = "svg"
96
104
 
@@ -11,7 +11,7 @@ Each beamline should have its own file in the ``doodal.beamlines`` folder, in wh
11
11
  beamline are instantiated. The file should be named after the colloquial name for the beamline. For example:
12
12
 
13
13
  * ``i03.py``
14
- * ``i04_1.py``
14
+ * ``i20_1.py``
15
15
  * ``vmxi.py``
16
16
 
17
17
  Beamline modules (in ``dodal.beamlines``) are code-as-configuration. They define the set of devices and common device
@@ -0,0 +1,8 @@
1
+ # Writing Tests in This Python Project
2
+
3
+ Testing is essential to maintain the integrity and reliability of the codebase. Follow the guidelines below to write tests for this project effectively.
4
+
5
+ ## Test Organization
6
+
7
+ - **Unit Tests**: Place unit tests for individual components in the `tests` directory, but take care to mirror the file structure of the `src` folder with the corresponding code files. Use the `test_*.py` naming convention for test files.
8
+ - **System Tests**: Tests that interact with DLS infrastructure, network, and filesystem should be placed in the top-level `systems_test` folder. This separation ensures that these tests are easily identifiable and can be run independently from unit tests.
@@ -29,7 +29,7 @@ Supported Python Versions
29
29
  As a standard for the python versions to support, we should be matching the deprecation policy at
30
30
  https://numpy.org/neps/nep-0029-deprecation_policy.html.
31
31
 
32
- Currently supported versions are: 3.10, 3.11.
32
+ Currently supported versions are: 3.10, 3.11, 3.12. (As of the last edit of this document.)
33
33
 
34
34
  .. _documentation_standards:
35
35
 
@@ -6,7 +6,7 @@ Technical reference material including APIs and release notes.
6
6
  :maxdepth: 1
7
7
  :glob:
8
8
 
9
- reference/*
9
+ API <_api/dodal>
10
10
  genindex
11
11
  Release Notes <https://github.com/DiamondLightSource/dodal/releases>
12
12
  ```
@@ -15,7 +15,7 @@ description = "Ophyd devices and other utils that could be used across DLS beaml
15
15
  dependencies = [
16
16
  "click",
17
17
  "ophyd",
18
- "ophyd-async>=0.6,<0.7",
18
+ "ophyd-async>=0.7.0a1,<0.8",
19
19
  "bluesky",
20
20
  "pyepics",
21
21
  "dataclasses-json",
@@ -24,10 +24,10 @@ dependencies = [
24
24
  "requests",
25
25
  "graypy",
26
26
  "pydantic>=2.0",
27
- "opencv-python-headless", # For pin-tip detection.
28
- "aioca", # Required for CA support with ophyd-async.
29
- "p4p", # Required for PVA support with ophyd-async.
30
- "numpy<2.0", # Unpin when https://github.com/bluesky/ophyd-async/issues/387 resolved
27
+ "opencv-python-headless", # For pin-tip detection.
28
+ "aioca", # Required for CA support with ophyd-async.
29
+ "p4p", # Required for PVA support with ophyd-async.
30
+ "numpy<2.0", # Unpin when https://github.com/bluesky/ophyd-async/issues/387 resolved
31
31
  "aiofiles",
32
32
  "aiohttp",
33
33
  "redis",
@@ -91,6 +91,7 @@ dodal = ["*.txt"]
91
91
  version_file = "src/dodal/_version.py"
92
92
 
93
93
  [tool.pyright]
94
+ typeCheckingMode = "standard"
94
95
  reportMissingImports = false # Ignore missing stubs in imported modules
95
96
 
96
97
  [tool.pytest.ini_options]
@@ -115,7 +116,7 @@ filterwarnings = [
115
116
  "ignore::DeprecationWarning:wheel",
116
117
  ]
117
118
  # Doctest python code in docs, python code in src docstrings, test functions in tests
118
- testpaths = "docs src tests"
119
+ testpaths = "docs src tests system_tests"
119
120
 
120
121
  [tool.coverage.report]
121
122
  exclude_also = [
@@ -176,3 +177,4 @@ lint.select = [
176
177
  # See https://github.com/DiamondLightSource/python-copier-template/issues/154
177
178
  # Remove this line to forbid private member access in tests
178
179
  "tests/**/*" = ["SLF001"]
180
+ "system_tests/**/*" = ["SLF001"]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dls-dodal
3
- Version: 1.33.0
3
+ Version: 1.34.1
4
4
  Summary: Ophyd devices and other utils that could be used across DLS beamlines
5
5
  Author-email: Dominic Oram <dominic.oram@diamond.ac.uk>
6
6
  License: Apache License
@@ -216,7 +216,7 @@ Description-Content-Type: text/markdown
216
216
  License-File: LICENSE
217
217
  Requires-Dist: click
218
218
  Requires-Dist: ophyd
219
- Requires-Dist: ophyd-async<0.7,>=0.6
219
+ Requires-Dist: ophyd-async<0.8,>=0.7.0a1
220
220
  Requires-Dist: bluesky
221
221
  Requires-Dist: pyepics
222
222
  Requires-Dist: dataclasses-json
@@ -263,7 +263,7 @@ Requires-Dist: types-aiofiles; extra == "dev"
263
263
  [![CI](https://github.com/DiamondLightSource/dodal/actions/workflows/ci.yml/badge.svg)](https://github.com/DiamondLightSource/dodal/actions/workflows/ci.yml)
264
264
  [![Coverage](https://codecov.io/gh/DiamondLightSource/dodal/branch/main/graph/badge.svg)](https://codecov.io/gh/DiamondLightSource/dodal)
265
265
  [![PyPI](https://img.shields.io/pypi/v/dls-dodal.svg)](https://pypi.org/project/dls-dodal)
266
- [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
266
+ [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)
267
267
 
268
268
  # dodal
269
269
 
@@ -27,6 +27,7 @@ pyproject.toml
27
27
  .vscode/launch.json
28
28
  .vscode/settings.json
29
29
  .vscode/tasks.json
30
+ docs/_api.rst
30
31
  docs/conf.py
31
32
  docs/explanations.md
32
33
  docs/genindex.md
@@ -34,6 +35,7 @@ docs/how-to.md
34
35
  docs/index.md
35
36
  docs/reference.md
36
37
  docs/tutorials.md
38
+ docs/_templates/custom-module-template.rst
37
39
  docs/_templates/autosummary/class.rst
38
40
  docs/_templates/autosummary/module.rst
39
41
  docs/assets/zocalo.png
@@ -56,10 +58,10 @@ docs/how-to/pypi.md
56
58
  docs/how-to/run-tests.md
57
59
  docs/how-to/static-analysis.md
58
60
  docs/how-to/update-template.md
61
+ docs/how-to/write-tests.md
59
62
  docs/how-to/zocalo.rst
60
63
  docs/images/dls-logo.svg
61
64
  docs/images/excalidraw-example.svg
62
- docs/reference/api.md
63
65
  docs/reference/device-standards.rst
64
66
  docs/reference/standards.rst
65
67
  docs/tutorials/get_started.rst
@@ -85,7 +87,7 @@ src/dodal/beamlines/__init__.py
85
87
  src/dodal/beamlines/b01_1.py
86
88
  src/dodal/beamlines/i03.py
87
89
  src/dodal/beamlines/i04.py
88
- src/dodal/beamlines/i04_1.py
90
+ src/dodal/beamlines/i10.py
89
91
  src/dodal/beamlines/i13_1.py
90
92
  src/dodal/beamlines/i20_1.py
91
93
  src/dodal/beamlines/i22.py
@@ -111,10 +113,12 @@ src/dodal/devices/__init__.py
111
113
  src/dodal/devices/adsim.py
112
114
  src/dodal/devices/aperture.py
113
115
  src/dodal/devices/aperturescatterguard.py
116
+ src/dodal/devices/apple2_undulator.py
114
117
  src/dodal/devices/attenuator.py
115
118
  src/dodal/devices/backlight.py
116
119
  src/dodal/devices/cryostream.py
117
120
  src/dodal/devices/dcm.py
121
+ src/dodal/devices/diamond_filter.py
118
122
  src/dodal/devices/eiger.py
119
123
  src/dodal/devices/eiger_odin.py
120
124
  src/dodal/devices/fast_grid_scan.py
@@ -127,6 +131,8 @@ src/dodal/devices/linkam3.py
127
131
  src/dodal/devices/logging_ophyd_device.py
128
132
  src/dodal/devices/motors.py
129
133
  src/dodal/devices/p45.py
134
+ src/dodal/devices/pgm.py
135
+ src/dodal/devices/qbpm.py
130
136
  src/dodal/devices/robot.py
131
137
  src/dodal/devices/s4_slit_gaps.py
132
138
  src/dodal/devices/scatterguard.py
@@ -148,6 +154,7 @@ src/dodal/devices/areadetector/__init__.py
148
154
  src/dodal/devices/areadetector/adaravis.py
149
155
  src/dodal/devices/areadetector/adsim.py
150
156
  src/dodal/devices/areadetector/adutils.py
157
+ src/dodal/devices/areadetector/plugins/CAM.py
151
158
  src/dodal/devices/areadetector/plugins/MJPG.py
152
159
  src/dodal/devices/detector/__init__.py
153
160
  src/dodal/devices/detector/det_dim_constants.py
@@ -157,6 +164,8 @@ src/dodal/devices/detector/detector.py
157
164
  src/dodal/devices/detector/detector_motion.py
158
165
  src/dodal/devices/i03/__init__.py
159
166
  src/dodal/devices/i04/transfocator.py
167
+ src/dodal/devices/i10/i10_apple2.py
168
+ src/dodal/devices/i10/i10_setting_data.py
160
169
  src/dodal/devices/i20_1/__init__.py
161
170
  src/dodal/devices/i22/dcm.py
162
171
  src/dodal/devices/i22/fswitch.py
@@ -170,17 +179,18 @@ src/dodal/devices/i24/i24_detector_motion.py
170
179
  src/dodal/devices/i24/i24_vgonio.py
171
180
  src/dodal/devices/i24/pmac.py
172
181
  src/dodal/devices/oav/__init__.py
173
- src/dodal/devices/oav/grid_overlay.py
174
182
  src/dodal/devices/oav/microns_for_zoom_levels.json
175
183
  src/dodal/devices/oav/oav_calculations.py
176
184
  src/dodal/devices/oav/oav_detector.py
177
- src/dodal/devices/oav/oav_errors.py
178
185
  src/dodal/devices/oav/oav_parameters.py
179
186
  src/dodal/devices/oav/oav_to_redis_forwarder.py
180
187
  src/dodal/devices/oav/utils.py
181
188
  src/dodal/devices/oav/pin_image_recognition/__init__.py
182
189
  src/dodal/devices/oav/pin_image_recognition/manual_test.py
183
190
  src/dodal/devices/oav/pin_image_recognition/utils.py
191
+ src/dodal/devices/oav/snapshots/grid_overlay.py
192
+ src/dodal/devices/oav/snapshots/snapshot_with_beam_centre.py
193
+ src/dodal/devices/oav/snapshots/snapshot_with_grid.py
184
194
  src/dodal/devices/p99/__init__.py
185
195
  src/dodal/devices/p99/sample_stage.py
186
196
  src/dodal/devices/training_rig/__init__.py
@@ -201,6 +211,18 @@ src/dodal/parameters/experiment_parameter_base.py
201
211
  src/dodal/plans/check_topup.py
202
212
  src/dodal/plans/data_session_metadata.py
203
213
  src/dodal/plans/motor_util_plans.py
214
+ system_tests/__init__.py
215
+ system_tests/test_aperturescatterguard_system.py
216
+ system_tests/test_eiger_system.py
217
+ system_tests/test_gridscan_system.py
218
+ system_tests/test_oav_system.py
219
+ system_tests/test_oav_to_redis_system.py
220
+ system_tests/test_slit_gaps_system.py
221
+ system_tests/test_smargon_system.py
222
+ system_tests/test_synchrotron_system.py
223
+ system_tests/test_undulator_system.py
224
+ system_tests/test_zebra_system.py
225
+ system_tests/test_zocalo_results.py
204
226
  tests/__init__.py
205
227
  tests/conftest.py
206
228
  tests/fake_beamline.py
@@ -228,29 +250,26 @@ tests/common/beamlines/test_beamline_utils.py
228
250
  tests/common/beamlines/test_device_helpers.py
229
251
  tests/common/beamlines/test_device_instantiation.py
230
252
  tests/devices/__init__.py
253
+ tests/devices/test_diamond_filter.py
231
254
  tests/devices/i04/__init__.py
232
255
  tests/devices/i04/test_transfocator.py
256
+ tests/devices/i10/test_i10Apple2.py
257
+ tests/devices/i10/lookupTables/IDEnergy2GapCalibrations.csv
258
+ tests/devices/i10/lookupTables/IDEnergy2PhaseCalibrations.csv
259
+ tests/devices/i10/lookupTables/expectedIDEnergy2GapCalibrationsIdd.pkl
260
+ tests/devices/i10/lookupTables/expectedIDEnergy2GapCalibrationsIdu.pkl
261
+ tests/devices/i10/lookupTables/expectedIDEnergy2PhaseCalibrationsidd.pkl
262
+ tests/devices/i10/lookupTables/expectedIDEnergy2PhaseCalibrationsidu.pkl
233
263
  tests/devices/i22/test_dcm.py
234
264
  tests/devices/i22/test_fswitch.py
235
265
  tests/devices/i22/test_metadataholder.py
236
- tests/devices/system_tests/__init__.py
237
- tests/devices/system_tests/test_aperturescatterguard_system.py
238
- tests/devices/system_tests/test_eiger_system.py
239
- tests/devices/system_tests/test_gridscan_system.py
240
- tests/devices/system_tests/test_oav_system.py
241
- tests/devices/system_tests/test_oav_to_redis_system.py
242
- tests/devices/system_tests/test_slit_gaps_system.py
243
- tests/devices/system_tests/test_smargon_system.py
244
- tests/devices/system_tests/test_synchrotron_system.py
245
- tests/devices/system_tests/test_undulator_system.py
246
- tests/devices/system_tests/test_zebra_system.py
247
- tests/devices/system_tests/test_zocalo_results.py
248
266
  tests/devices/training_rig/test_sample_stage.py
249
267
  tests/devices/unit_tests/__init__.py
250
268
  tests/devices/unit_tests/conftest.py
251
269
  tests/devices/unit_tests/test_OAVCentring.json
252
270
  tests/devices/unit_tests/test_aperture.py
253
271
  tests/devices/unit_tests/test_aperture_scatterguard.py
272
+ tests/devices/unit_tests/test_apple2_undulator.py
254
273
  tests/devices/unit_tests/test_attenuator.py
255
274
  tests/devices/unit_tests/test_backlight.py
256
275
  tests/devices/unit_tests/test_bart_robot.py
@@ -260,15 +279,14 @@ tests/devices/unit_tests/test_dcm.py
260
279
  tests/devices/unit_tests/test_display.configuration
261
280
  tests/devices/unit_tests/test_eiger.py
262
281
  tests/devices/unit_tests/test_focusing_mirror.py
263
- tests/devices/unit_tests/test_grid_overlay.py
264
282
  tests/devices/unit_tests/test_gridscan.py
265
283
  tests/devices/unit_tests/test_hutch_shutter.py
266
284
  tests/devices/unit_tests/test_jCameraManZoomLevels.xml
267
285
  tests/devices/unit_tests/test_linkam3.py
268
286
  tests/devices/unit_tests/test_lookup_table.txt
269
287
  tests/devices/unit_tests/test_lookup_table_2.txt
270
- tests/devices/unit_tests/test_oav.py
271
288
  tests/devices/unit_tests/test_odin.py
289
+ tests/devices/unit_tests/test_qbpm.py
272
290
  tests/devices/unit_tests/test_shutter.py
273
291
  tests/devices/unit_tests/test_slits.py
274
292
  tests/devices/unit_tests/test_smargon.py
@@ -285,7 +303,6 @@ tests/devices/unit_tests/test_xspress3.py
285
303
  tests/devices/unit_tests/test_zebra.py
286
304
  tests/devices/unit_tests/test_zocalo_interaction.py
287
305
  tests/devices/unit_tests/test_zocalo_results.py
288
- tests/devices/unit_tests/areadetector/plugins/test_MJPG.py
289
306
  tests/devices/unit_tests/detector/test_det_dim_constants.py
290
307
  tests/devices/unit_tests/detector/test_det_resolution.py
291
308
  tests/devices/unit_tests/detector/test_detector.py
@@ -293,9 +310,13 @@ tests/devices/unit_tests/i24/__init__.py
293
310
  tests/devices/unit_tests/i24/test_dual_backlight.py
294
311
  tests/devices/unit_tests/i24/test_pmac.py
295
312
  tests/devices/unit_tests/oav/__init__.py
313
+ tests/devices/unit_tests/oav/conftest.py
314
+ tests/devices/unit_tests/oav/test_grid_overlay.py
296
315
  tests/devices/unit_tests/oav/test_oav.py
297
316
  tests/devices/unit_tests/oav/test_oav_parameters.py
298
317
  tests/devices/unit_tests/oav/test_oav_to_redis_forwarder.py
318
+ tests/devices/unit_tests/oav/test_oav_utils.py
319
+ tests/devices/unit_tests/oav/test_snapshots.py
299
320
  tests/devices/unit_tests/oav/image_recognition/test_pin_tip_detect.py
300
321
  tests/devices/unit_tests/oav/image_recognition/test_pin_tip_detect_utils.py
301
322
  tests/devices/unit_tests/p99/test_p99_stage.py
@@ -1,6 +1,6 @@
1
1
  click
2
2
  ophyd
3
- ophyd-async<0.7,>=0.6
3
+ ophyd-async<0.8,>=0.7.0a1
4
4
  bluesky
5
5
  pyepics
6
6
  dataclasses-json
@@ -0,0 +1,11 @@
1
+ """Top level API.
2
+
3
+ .. data:: __version__
4
+ :type: str
5
+
6
+ Version number as calculated by https://github.com/pypa/setuptools_scm
7
+ """
8
+
9
+ from ._version import __version__
10
+
11
+ __all__ = ["__version__"]
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '1.33.0'
16
- __version_tuple__ = version_tuple = (1, 33, 0)
15
+ __version__ = version = '1.34.1'
16
+ __version_tuple__ = version_tuple = (1, 34, 1)
@@ -0,0 +1,17 @@
1
+ from dataclasses import dataclass
2
+
3
+ I03_BEAM_HEIGHT_UM = 20.0
4
+ I03_BEAM_WIDTH_UM = 80.0
5
+
6
+
7
+ @dataclass
8
+ class BeamSize:
9
+ x_um: float | None
10
+ y_um: float | None
11
+
12
+
13
+ def beam_size_from_aperture(aperture_size: float | None):
14
+ return BeamSize(
15
+ min(aperture_size, I03_BEAM_WIDTH_UM) if aperture_size else None,
16
+ I03_BEAM_HEIGHT_UM if aperture_size else None,
17
+ )
@@ -5,11 +5,10 @@ from pathlib import Path
5
5
 
6
6
  # Where beamline names (per the ${BEAMLINE} environment variable don't always
7
7
  # match up, we have to map between them bidirectionally). The most common use case is
8
- # beamlines with a "-"" in the name such as "i04-1", which is not valid in a Python
8
+ # beamlines with a "-"" in the name such as "i20-1", which is not valid in a Python
9
9
  # module name. Add any new beamlines whose name differs from their module name to this
10
10
  # dictionary, which maps ${BEAMLINE} to dodal.beamlines.<MODULE NAME>
11
11
  _BEAMLINE_NAME_OVERRIDES = {
12
- "i04-1": "i04_1",
13
12
  "i13-1": "i13_1",
14
13
  "i20-1": "i20_1",
15
14
  "s03": "i03",
@@ -79,7 +78,7 @@ def _module_name_overrides() -> Mapping[str, set[str]]:
79
78
  def module_name_for_beamline(beamline: str) -> str:
80
79
  """
81
80
  Get the module name for a particular beamline, it may differ from the beamline
82
- name e.g. i04-1 -> i04_1
81
+ name e.g. i20-1 -> i20_1
83
82
 
84
83
  Args:
85
84
  beamline: The beamline name as per the ${BEAMLINE} environment variable