diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml index 5c63d1d4a..cec49d559 100644 --- a/.github/workflows/coverage.yml +++ b/.github/workflows/coverage.yml @@ -30,7 +30,7 @@ concurrency: jobs: coverage: name: "${{ matrix.python-version }} on ${{ matrix.os }}" - runs-on: "${{ matrix.os }}-latest" + runs-on: "${{ matrix.os }}-${{ matrix.os-version || 'latest' }}" env: MATRIX_ID: "${{ matrix.python-version }}.${{ matrix.os }}" @@ -69,6 +69,15 @@ jobs: python-version: "pypy-3.9" - os: windows python-version: "pypy-3.10" + # GitHub is rolling out macos 14, but it doesn't have Python 3.8 or 3.9. + # https://mastodon.social/@hugovk/112320493602782374 + include: + - python-version: "3.8" + os: "macos" + os-version: "13" + - python-version: "3.9" + os: "macos" + os-version: "13" # If one job fails, stop the whole thing. fail-fast: true diff --git a/.github/workflows/kit.yml b/.github/workflows/kit.yml index 9d78b430e..36a1d42bd 100644 --- a/.github/workflows/kit.yml +++ b/.github/workflows/kit.yml @@ -48,7 +48,7 @@ concurrency: jobs: wheels: name: "${{ matrix.py }} ${{ matrix.os }} ${{ matrix.arch }} wheels" - runs-on: ${{ matrix.os }}-latest + runs-on: "${{ matrix.os }}-${{ matrix.os-version || 'latest' }}" env: MATRIX_ID: "${{ matrix.py }}-${{ matrix.os }}-${{ matrix.arch }}" strategy: @@ -84,7 +84,7 @@ jobs: # # # Some OS/arch combinations need overrides for the Python versions: # os_arch_pys = { - # ("macos", "arm64"): ["cp38", "cp39", "cp310", "cp311", "cp312"], + # # ("macos", "arm64"): ["cp38", "cp39", "cp310", "cp311", "cp312"], # } # # #----- ^^^ ---------------------- ^^^ ----- @@ -98,6 +98,8 @@ jobs: # "py": the_py, # "arch": the_arch, # } + # if the_os == "macos": + # them["os-version"] = "13" # print(f"- {json.dumps(them)}") # ]]] - {"os": "ubuntu", "py": "cp38", "arch": "x86_64"} @@ -115,16 +117,16 @@ jobs: - {"os": "ubuntu", "py": "cp310", "arch": "aarch64"} - {"os": "ubuntu", "py": "cp311", "arch": "aarch64"} - {"os": "ubuntu", "py": "cp312", "arch": "aarch64"} - - {"os": "macos", "py": "cp38", "arch": "arm64"} - - {"os": "macos", "py": "cp39", "arch": "arm64"} - - {"os": "macos", "py": "cp310", "arch": "arm64"} - - {"os": "macos", "py": "cp311", "arch": "arm64"} - - {"os": "macos", "py": "cp312", "arch": "arm64"} - - {"os": "macos", "py": "cp38", "arch": "x86_64"} - - {"os": "macos", "py": "cp39", "arch": "x86_64"} - - {"os": "macos", "py": "cp310", "arch": "x86_64"} - - {"os": "macos", "py": "cp311", "arch": "x86_64"} - - {"os": "macos", "py": "cp312", "arch": "x86_64"} + - {"os": "macos", "py": "cp38", "arch": "arm64", "os-version": "13"} + - {"os": "macos", "py": "cp39", "arch": "arm64", "os-version": "13"} + - {"os": "macos", "py": "cp310", "arch": "arm64", "os-version": "13"} + - {"os": "macos", "py": "cp311", "arch": "arm64", "os-version": "13"} + - {"os": "macos", "py": "cp312", "arch": "arm64", "os-version": "13"} + - {"os": "macos", "py": "cp38", "arch": "x86_64", "os-version": "13"} + - {"os": "macos", "py": "cp39", "arch": "x86_64", "os-version": "13"} + - {"os": "macos", "py": "cp310", "arch": "x86_64", "os-version": "13"} + - {"os": "macos", "py": "cp311", "arch": "x86_64", "os-version": "13"} + - {"os": "macos", "py": "cp312", "arch": "x86_64", "os-version": "13"} - {"os": "windows", "py": "cp38", "arch": "x86"} - {"os": "windows", "py": "cp39", "arch": "x86"} - {"os": "windows", "py": "cp310", "arch": "x86"} @@ -135,7 +137,7 @@ jobs: - {"os": "windows", "py": "cp310", "arch": "AMD64"} - {"os": "windows", "py": "cp311", "arch": "AMD64"} - {"os": "windows", "py": "cp312", "arch": "AMD64"} - # [[[end]]] (checksum: a6ca53e9c620c9e5ca85e7322122056c) + # [[[end]]] (checksum: 16ed28c185d540b2d9972a0217864472) fail-fast: false steps: diff --git a/.github/workflows/quality.yml b/.github/workflows/quality.yml index 3376aafd1..c9718bf11 100644 --- a/.github/workflows/quality.yml +++ b/.github/workflows/quality.yml @@ -31,7 +31,9 @@ jobs: # Because pylint can report different things on different OS's (!) # (https://github.com/PyCQA/pylint/issues/3489), run this on Mac where local # pylint gets run. - runs-on: macos-latest + # GitHub is rolling out macos 14, but it doesn't have Python 3.8 or 3.9. + # https://mastodon.social/@hugovk/112320493602782374 + runs-on: macos-13 steps: - name: "Check out the repo" diff --git a/.github/workflows/testsuite.yml b/.github/workflows/testsuite.yml index e6742753e..e11b3d74e 100644 --- a/.github/workflows/testsuite.yml +++ b/.github/workflows/testsuite.yml @@ -30,7 +30,7 @@ concurrency: jobs: tests: name: "${{ matrix.python-version }} on ${{ matrix.os }}" - runs-on: "${{ matrix.os }}-latest" + runs-on: "${{ matrix.os }}-${{ matrix.os-version || 'latest' }}" # Don't run tests if the branch name includes "-notests" if: "!contains(github.ref, '-notests')" strategy: @@ -62,6 +62,16 @@ jobs: python-version: "pypy-3.9" - os: windows python-version: "pypy-3.10" + # GitHub is rolling out macos 14, but it doesn't have Python 3.8 or 3.9. + # https://mastodon.social/@hugovk/112320493602782374 + include: + - python-version: "3.8" + os: "macos" + os-version: "13" + - python-version: "3.9" + os: "macos" + os-version: "13" + fail-fast: false steps: