Skip to content

deps: cap pytest below 9.2 until pytest-forked handles TestReport._id - #300

Merged
sbryngelson merged 1 commit into
mainfrom
deps/cap-pytest-9.2
Nov 2, 2026
Merged

sbryngelson merged 1 commit into
mainfrom
deps/cap-pytest-9.2

Conversation

@sbryngelson

Copy link
Copy Markdown
Owner

Today's scheduled CI run (https://github.com/sbryngelson/ANEForge/actions/runs/41485001261) failed on unchanged main (896c494, green on Oct 12/19/26): all 424 off-device tests reported running the test EXITED with status 3, on Linux and all three macOS runners.

Cause: pytest 9.2.0 (released Oct 27; last week's green run had 9.1.1) adds a private TestReport._id holding a NodeId object. pytest-forked 1.7.5 (latest) sends each report from the child with marshal.dumps(rep.__dict__), which can't serialize NodeId, so the child exits 3 and every test fails regardless of its result. A one-line def test_ok(): assert True fails the same way under pytest --forked. Reported upstream: pytest-dev/pytest-forked#113.

Change: pytest -> pytest<9.2 in the dev extra, which every CI job installs, with a comment pointing at the upstream issue. Lift it once pytest-forked ships a fix.

Checked locally (Apple M5 Pro, macOS 27.2): pytest 9.2.0 + --forked fails; 9.2.0 without forking and 9.1.1 with forking pass. A fresh pip install -e ".[dev]" resolves pytest 9.1.1 and pytest -m "not requires_ane" gives 417 passed, 12 skipped. Off-device change.

@sbryngelson
sbryngelson merged commit eba339e into main Nov 2, 2026
19 checks passed
@sbryngelson
sbryngelson deleted the deps/cap-pytest-9.2 branch November 2, 2026 18:43
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.

1 participant