Skip to content

Commit

Permalink
Add support for CPython 3.13.
Browse files Browse the repository at this point in the history
Also freshen GH actions.
  • Loading branch information
jsirois committed Jan 5, 2024
1 parent 26c312b commit e880f3e
Show file tree
Hide file tree
Showing 4 changed files with 35 additions and 29 deletions.
34 changes: 19 additions & 15 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,59 +27,63 @@ jobs:
os: [ubuntu-22.04, macos-12]
steps:
- name: Checkout p537
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Setup Python 3.6
uses: gabrielfalcao/pyenv-action@v14
uses: gabrielfalcao/pyenv-action@v18
env:
ENSUREPIP: no
with:
default: "3.6.15"
command: pip install -U tox
- name: Run Unit Tests
run: tox -e py36
tests-37-312:
name: (${{ matrix.os }}) Python 3.7 - 3.12 Tests
tests-37-313:
name: (${{ matrix.os }}) Python 3.7 - 3.13 Tests
needs: org-check
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-22.04, macos-12, windows-2022]
steps:
- name: Checkout p537
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Setup Python 3.7
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: "3.7"
- name: Setup Python 3.8
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: "3.8"
- name: Setup Python 3.9
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: "3.9"
- name: Setup Python 3.10
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: Setup Python 3.11
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Setup Python 3.12
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: "3.12.0-beta.2"
python-version: "3.12"
- name: Setup Python 3.13
uses: actions/setup-python@v5
with:
python-version: "3.13.0-alpha.2"
- name: Run Unit Tests
uses: pantsbuild/actions/run-tox@e63d2d0e3c339bdffbe5e51e7c39550e3bc527bb
uses: pantsbuild/actions/run-tox@b16b9cf47cd566acfe217b1dafc5b452e27e6fd7
with:
tox-env: py37,py38,py39,py310,py311,py312
tox-env: py37,py38,py39,py310,py311,py312,py313
final-status:
name: Gather Final Status
needs:
- tests-36
- tests-37-312
- tests-37-313
runs-on: ubuntu-22.04
steps:
- name: Check Non-Success
Expand Down
24 changes: 12 additions & 12 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,11 +48,11 @@ jobs:
os: [ubuntu-22.04, macos-12]
steps:
- name: Checkout p537 ${{ needs.determine-tag.outputs.release-tag }}
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
ref: ${{ needs.determine-tag.outputs.release-tag }}
- name: Setup Python 3.6
uses: gabrielfalcao/pyenv-action@v14
uses: gabrielfalcao/pyenv-action@v18
env:
ENSUREPIP: no
with:
Expand All @@ -61,34 +61,34 @@ jobs:
- name: Package ${{ needs.determine-tag.outputs.release-tag }}
run: tox -e package
- name: Upload Artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: "${{ matrix.os }}-${{ needs.determine-tag.outputs.release-tag }}-3.6-distributions"
path: dist/
retention-days: 1
package-37-312-dists:
name: Package Distributions for Python 3.7 - 3.12
name: Package Distributions for Python 3.7 - 3.13
needs: determine-tag
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-22.04, macos-12, windows-2022]
python-version: [[3, 7], [3, 8], [3, 9], [3, 10], [3, 11], [3, 12, "0-beta.2"]]
python-version: [[3, 7], [3, 8], [3, 9], [3, 10], [3, 11], [3, 12], [3, 13, "0-alpha.2"]]
steps:
- name: Checkout p537 ${{ needs.determine-tag.outputs.release-tag }}
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
ref: ${{ needs.determine-tag.outputs.release-tag }}
- name: Setup Python ${{ join(matrix.python-version, '.') }}
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: "${{ join(matrix.python-version, '.') }}"
- name: Package ${{ needs.determine-tag.outputs.release-tag }}
uses: pantsbuild/actions/run-tox@e63d2d0e3c339bdffbe5e51e7c39550e3bc527bb
uses: pantsbuild/actions/run-tox@b16b9cf47cd566acfe217b1dafc5b452e27e6fd7
with:
tox-env: package
- name: Upload Artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: "${{ matrix.os }}-${{ needs.determine-tag.outputs.release-tag }}-${{ join(matrix.python-version, '.') }}-distributions"
path: dist/
Expand All @@ -98,19 +98,19 @@ jobs:
needs:
- determine-tag
- package-36-dists
- package-37-312-dists
- package-37-313-dists
runs-on: ubuntu-22.04
environment: Release
permissions:
id-token: write
steps:
- name: Download all packaged distributions
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
path: dist/
- name: Re-organize distributions for upload
run: |
mv -v dist/ubuntu-22.04-${{ needs.determine-tag.outputs.release-tag }}-3.11-distributions/*.tar.gz dist/
mv -v dist/ubuntu-22.04-${{ needs.determine-tag.outputs.release-tag }}-3.12-distributions/*.tar.gz dist/
mv -v dist/*-distributions/*.whl dist/
rm -rf dist/*-distributions
- name: Publish p537 ${{ needs.determine-tag.outputs.release-tag }}
Expand Down
5 changes: 3 additions & 2 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ def long_description():

setup(
name='p537',
version='1.0.6',
version='1.0.7',
author="John Sirois",
author_email="[email protected]",
description='A tiny platform-specific distribution with a console script.',
Expand All @@ -29,8 +29,9 @@ def long_description():
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: 3.11',
'Programming Language :: Python :: 3.12',
'Programming Language :: Python :: 3.13',
],
python_requires=">=3.6,<3.13",
python_requires=">=3.6,<3.14",
ext_modules=[
Extension('p537', sources=['p537module.c']),
],
Expand Down
1 change: 1 addition & 0 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ envlist =
py310
py311
py312
py313

[testenv]
deps =
Expand Down

0 comments on commit e880f3e

Please sign in to comment.