Repository navigation
test(control): close snapshot SQLite fixtures deterministically - #222
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Close SQLite fixtures explicitly with contextlib.closing while preserving transaction scopes. Collect unraisable finalizer exceptions after GC so ResourceWarning cannot silently pass.
Closes #209
Type
Checklist
python3 cc_peer.py listworks locally (live-session inspection not performed)python3 cc_peer.py list --host <a real host>works over SSH (out of scope)--dry-runresolves a target without posting anything (covered by existing mocked contracts; no live target)Verified against
macOS arm64; Python 3.14.7, websockets 17.1; Node 22.14.0 for Control. Linux/Windows matrix results are left to PR CI, not claimed from this machine.
Snapshot fixture module: 4 tests under -X dev -W error::ResourceWarning, including failed backup paths. Documentation tests: 10. No runtime files changed.
Notes
Test-only fix. Real control services, snapshots and databases are untouched. Other PRs intentionally do not duplicate this fixture change.
Prepared in an isolated worktree from main 03d4bd4. No merge, release, production deployment, real send or ACK test is included. CI status is independent of the local checks above.