From 87cdb5cadb3425f4e6671dc58228f93380fec188 Mon Sep 17 00:00:00 2001 From: Maksim Shulga Date: Thu, 6 Aug 2026 16:37:57 +0000 Subject: [PATCH] Reduce CI cost: dedupe triggers, thin macOS matrix (#21) - Drop push-triggered runs for non-master branches; pull_request already covers every PR commit, so push+pull_request was running the full 14-job matrix twice per push (28 jobs). - Only run the full Python 3.8-3.14 matrix on ubuntu-latest. macOS runners bill at 10x Linux minutes; test just the oldest and newest supported Python there to catch platform-specific issues. - Net effect: 28 jobs per PR push -> 9 (7 Linux + 2 macOS). Co-authored-by: Maxim Shulga Co-authored-by: Claude Sonnet 5 --- .github/workflows/run_tests.yml | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/.github/workflows/run_tests.yml b/.github/workflows/run_tests.yml index eca9ed3..c22b2e6 100644 --- a/.github/workflows/run_tests.yml +++ b/.github/workflows/run_tests.yml @@ -1,6 +1,9 @@ name: Run tests -on: [push, pull_request] +on: + pull_request: + push: + branches: [master] jobs: test: @@ -8,8 +11,16 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest, macos-latest] + os: [ubuntu-latest] python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13", "3.14"] + include: + # macOS runners cost 10x Linux minutes - only test the oldest + # and newest supported Python there to catch platform-specific + # issues without running the full matrix twice. + - os: macos-latest + python-version: "3.8" + - os: macos-latest + python-version: "3.14" steps: - uses: actions/checkout@v6