Skip to content

Make CI green against the refreshed lock file (renovate #1305) #10

Closed as not planned

Description

@coretl

Renovate's lock file maintenance PR bluesky#1305 is red on 15 checks (lint, every unit and system-test job on 3.12-3.14 and windows, 3.11 system tests, codecov/project). Main will break the same way on the next dependency bump, so fix the causes on top of the new lock.

Causes seen in the 2026-10-15 run:

  • NumPy 2.5 DeprecationWarning: Setting the shape on a NumPy array has been deprecated raised from epicscorelibs/ca/dbr.py:825 (result.shape = (1,)) inside aioca.caput. pytest turns it into an error, so every ca system test fails (50 failed, 47 errors on ubuntu 3.12 system tests).
  • ruff property-docstring-starts-with-verb: 8 errors, in core/_command.py (lines 110, 319), core/_device.py (233, 249), core/_mock_signal_backend.py (61, 100), core/_signal.py (95, 103).
  • pyright: 1 error at src/ophyd_async/core/_datatypes.py:170:44, TypeForm[Any] cannot be assigned to parameter datatype: type of get_dtype.
  • Unit test tests/unit_tests/core/test_signal.py::test_signal_unknown_datatype[NDArray-...] fails: expected Expected Array1D[dtype], got NDArray[numpy.str_], actual issubclass() arg 1 must be a class (same code path as the pyright error; this one was not on the earlier board).

Acceptance criteria:

  • Branch on top of the Lock file maintenance bluesky/ophyd-async#1305 lock where lint, tox -e type-checking, tox -e tests and all system-test jobs pass on 3.11-3.14, ubuntu and windows.
  • CA warning handled narrowly: a filterwarnings entry for that exact message from epicscorelibs, or a numpy<2.5 pin, with a comment linking the upstream issue (open one on epics-base/epicscorelibs or aioca if none exists).
  • Property docstrings reworded (noun phrase, not a verb), no behaviour change.
  • _datatypes.py:170 fixed so both the pyright error and the NDArray unit test pass.

Pointers: PR bluesky#1305 (renovate/lock-file-maintenance); reproduce locally with uv sync on the PR branch then tox -e pre-commit,type-checking,tests. The docstring edits touch _device.py, _signal.py, _mock_signal_backend.py, which bluesky#1371, bluesky#1399, bluesky#1441 also edit: merge this first. _datatypes.py is also near bluesky#1393's NDArray work (it edits test_signal.py and _utils.py), so tell its author.

AI Disclaimer

The code and this description were generated with AI and reviewed/tweaked by the author.

Activity

  1. coretl commented on Oct 15, 2026

    @coretl
    OwnerAuthor

    Promoted upstream: bluesky#1455

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions