Skip to content

Update to ophyd-async 0.19.3#2111

Merged
DominicOram merged 4 commits into
mainfrom
update_ophyd_async_0_19_3
Jul 2, 2026
Merged

Update to ophyd-async 0.19.3#2111
DominicOram merged 4 commits into
mainfrom
update_ophyd_async_0_19_3

Conversation

@oliwenmandiamond

Copy link
Copy Markdown
Contributor

Updated devices and tests to work with ophyd-async 0.19.3. The robot tests were failing with the below:

/workspaces/dodal/tests/devices/test_gridscan.py::test_timeout_on_complete_triggers_stop_and_logs_error failed: Traceback (most recent call last): File "/root/.local/share/uv/python/cpython-3.11.15-linux-x86_64-gnu/lib/python3.11/warnings.py", line 538, in _warn_unawaited_coroutine warn(msg, category=RuntimeWarning, stacklevel=2, source=coro) RuntimeWarning: coroutine 'AsyncMockMixin._execute_mock_call' was never awaited The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/_pytest/runner.py", line 353, in from_call result: TResult | None = func() ^^^^^^ File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/_pytest/runner.py", line 245, in <lambda> lambda: runtest_hook(item=item, **kwds), ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/pluggy/_callers.py", line 167, in _multicall raise exception File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/_pytest/logging.py", line 850, in pytest_runtest_call yield File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/pluggy/_callers.py", line 53, in run_old_style_hookwrapper return result.get_result() ^^^^^^^^^^^^^^^^^^^ File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/pluggy/_result.py", line 103, in get_result raise exc.with_traceback(tb) File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/pluggy/_callers.py", line 38, in run_old_style_hookwrapper res = yield ^^^^^ File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/_pytest/capture.py", line 900, in pytest_runtest_call return (yield) ^^^^^ File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/pluggy/_callers.py", line 53, in run_old_style_hookwrapper return result.get_result() ^^^^^^^^^^^^^^^^^^^ File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/pluggy/_result.py", line 103, in get_result raise exc.with_traceback(tb) File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/pluggy/_callers.py", line 38, in run_old_style_hookwrapper res = yield ^^^^^ File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/_pytest/skipping.py", line 268, in pytest_runtest_call return (yield) ^^^^^ File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/_pytest/unraisableexception.py", line 158, in pytest_runtest_call collect_unraisable(item.config) File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/_pytest/unraisableexception.py", line 79, in collect_unraisable raise errors[0] File "/cache/venv-for/scratch/bluesky_development/dodal/lib/python3.11/site-packages/_pytest/unraisableexception.py", line 67, in collect_unraisable warnings.warn(pytest.PytestUnraisableExceptionWarning(msg)) pytest.PytestUnraisableExceptionWarning: Exception ignored in: <coroutine object AsyncMockMixin._execute_mock_call at 0x7fe68dd75840> Enable tracemalloc to get traceback where the object was allocated. See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info.

So have also fixed this.

Instructions to reviewer on how to test:

  1. Do thing x
  2. Confirm thing y happens

Checks for reviewer

  • Would the PR title make sense to a scientist on a set of release notes
  • If a new device has been added does it follow the standards
  • If changing the API for a pre-existing device, ensure that any beamlines using this device have updated their Bluesky plans accordingly
  • Have the connection tests for the relevant beamline(s) been run via dodal connect ${BEAMLINE}

@oliwenmandiamond oliwenmandiamond requested a review from a team as a code owner July 1, 2026 15:40
@codecov

codecov Bot commented Jul 1, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 99.16%. Comparing base (94eb0fe) to head (1b3f7f2).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2111   +/-   ##
=======================================
  Coverage   99.16%   99.16%           
=======================================
  Files         347      347           
  Lines       13588    13588           
=======================================
  Hits        13474    13474           
  Misses        114      114           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@DominicOram DominicOram left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great, thank you!

@DominicOram DominicOram enabled auto-merge (squash) July 2, 2026 10:51
@DominicOram DominicOram merged commit 27bb849 into main Jul 2, 2026
10 checks passed
@DominicOram DominicOram deleted the update_ophyd_async_0_19_3 branch July 2, 2026 10:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants