From 7e294a696d13166c4dec1e8bf7a0ea939a50282a Mon Sep 17 00:00:00 2001 From: Brad Barnett <127794626+bdbarnett@users.noreply.github.com> Date: Wed, 21 Oct 2026 23:53:46 -0500 Subject: [PATCH] Tests: a release pull request and its merge skip the suite A release pull request changes only VERSION and CHANGELOG.md, so the suite ran twice more over code that had just passed: once on the pull request and once on its merge. Publishing still runs the suite at the release tag before anything goes out. --- .github/workflows/tests.yml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index cd5411fe..447fcb93 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -8,16 +8,19 @@ name: Tests # Once per change: pushes to main and pull requests. Documentation-only changes # skip it; the two package READMEs under lib/ are not skipped, because tests -# read them and the wheels carry them. +# read them and the wheels carry them. So does a release pull request, which +# changes only VERSION and CHANGELOG.md, and its merge: the code it releases +# already passed here, and publish-release-packages.yml runs the suite again +# at the release tag before anything is published. on: push: branches: [main] - paths-ignore: ['docs/**', 'README.md', 'ROADMAP.md', 'CHANGELOG.md', 'AGENTS.md', 'LICENSE'] + paths-ignore: ['docs/**', 'README.md', 'ROADMAP.md', 'CHANGELOG.md', 'AGENTS.md', 'LICENSE', 'VERSION'] pull_request: # `labeled` too: adding the `lifecycle: all classes` label re-runs the # pull request with the whole lifecycle matrix (see the test step). types: [opened, synchronize, reopened, labeled] - paths-ignore: ['docs/**', 'README.md', 'ROADMAP.md', 'CHANGELOG.md', 'AGENTS.md', 'LICENSE'] + paths-ignore: ['docs/**', 'README.md', 'ROADMAP.md', 'CHANGELOG.md', 'AGENTS.md', 'LICENSE', 'VERSION'] # The full matrix on demand, for a branch that should see every Python # before it merges rather than after. workflow_dispatch: