CI: add UV ci workflow for the tests - WIP - #3782
Conversation
|
Do we want to add a second pipeline for CI tests parallel to the existing one? It's added maintenance burden. |
versions not in setup, only CI PR number in the report setup for windows mindep cleaning fixing the versions in setup.py rather than in a file fix UV mindep for now, and tentative fix for the windows builds too fix UV YML reducing the matrix for this PR add UV ci workflow for the tests - checking if it even works
eb77ad7 to
0603bb4
Compare
New non-gating uv workflow exercising ObsPy on exotic CPython builds: free-threaded 3.14 (3.14t), pre-release 3.15, and free-threaded pre-release 3.15 (3.15t). uv resolves the 't'/pre-release specifiers directly, so no new setup machinery is needed.
New non-gating uv workflow exercising ObsPy on exotic CPython builds: free-threaded 3.14 (3.14t), pre-release 3.15, and free-threaded pre-release 3.15 (3.15t). uv resolves the 't'/pre-release specifiers directly, so no new setup machinery is needed.
TestResourceIdentifier is a plain pytest class, not a unittest.TestCase, so it has no skipTest method. test_issue_2278 skips when Python does not reuse id()s between a freed batch of objects and a fresh one; on GIL CPython that reuse routinely happens, the skip branch is not taken, and the latent bug stays hidden. On free-threaded 3.14t the allocator does not reuse those ids, the branch is taken, and self.skipTest raises AttributeError. Switch to pytest.skip (pytest already imported). No-op on GIL builds (branch not taken); on 3.14t the test now skips cleanly instead of erroring. Surfaced by the tests-uv-experimental canary (3.14t).
|
aha, funny enough, testing the free-threading version surfaced a little left-over unittest wrong line :) tests: use pytest.skip in test_issue_2278 (not self.skipTest) TestResourceIdentifier is a plain pytest class, not a unittest.TestCase, so Switch to pytest.skip (pytest already imported). No-op on GIL builds (branch Surfaced by the tests-uv-experimental canary (3.14t). |
What does this PR do?
it creates (in //) a new CI workflow using UV for running all tests.
Links to other Issues?
#3570 's @jschaeff mentionned UV and I think it's a good idea to test it here, it can later serve as basis to check the setup.py (for [tests] e.g. missing pytest-cov) and writing the documentation
AI used?
The Claude created the YML file (and tested its workflow down to the obspy-runtests).
The Lecocq talked nicely to the Claude to make it correct the mistakes & bugs & #{|@@#|@#|....
PR Checklist
masterfor new features,maintenance_?.?.xfor bug fixesCHANGELOG.txt(only obsolete if fixing a bug introduced after the last release)ready for reviewlabel when you the PR is ready to be reviewed