diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 2fea475..f61de8f 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -106,6 +106,16 @@ jobs: include: - python-version: "3.14t" os: ubuntu-latest + - python-version: "3.14t" + os: macos-latest + - python-version: "3.14t" + os: windows-latest + - python-version: "3.15t" + os: ubuntu-latest + - python-version: "3.15t" + os: macos-latest + - python-version: "3.15t" + os: windows-latest steps: - name: checkout @@ -151,12 +161,12 @@ jobs: - name: Install Build Dependencies (3.15) - if: matrix.python-version == '3.15' + if: startsWith(matrix.python-version, '3.15') run: | pip install -U pip pip install -U "setuptools >= 78.1.1,< 82" wheel twine cffi pycparser - name: Install Build Dependencies - if: matrix.python-version != '3.15' + if: ${{ !startsWith(matrix.python-version, '3.15') }} run: | pip install -U pip pip install -U "setuptools >= 78.1.1,< 82" wheel twine @@ -205,14 +215,14 @@ jobs: python setup.py sdist - name: Install persistent and dependencies (3.15) - if: matrix.python-version == '3.15' + if: startsWith(matrix.python-version, '3.15') run: | # Install to collect dependencies into the (pip) cache. # Use "--pre" here because dependencies with support for this future # Python release may only be available as pre-releases pip install --pre .[test] - name: Install persistent and dependencies - if: matrix.python-version != '3.15' + if: ${{ !startsWith(matrix.python-version, '3.15') }} run: | # Install to collect dependencies into the (pip) cache. pip install -U pip "setuptools >= 78.1.1,< 82" @@ -221,6 +231,9 @@ jobs: - name: Check persistent build run: | ls -l dist + - name: Check persistent build (twine) + if: ${{ !endsWith(matrix.python-version, 't') }} + run: | twine check dist/* - name: Upload persistent wheel (macOS x86_64) if: > @@ -288,6 +301,16 @@ jobs: include: - python-version: "3.14t" os: ubuntu-latest + - python-version: "3.14t" + os: macos-latest + - python-version: "3.14t" + os: windows-latest + - python-version: "3.15t" + os: ubuntu-latest + - python-version: "3.15t" + os: macos-latest + - python-version: "3.15t" + os: windows-latest steps: - name: checkout @@ -345,7 +368,7 @@ jobs: name: persistent-${{ runner.os }}-${{ matrix.python-version }}-${{ runner.arch }}.whl path: dist/ - name: Install persistent ${{ matrix.python-version }} - if: matrix.python-version == '3.15' + if: startsWith(matrix.python-version, '3.15') run: | pip install -U wheel "setuptools >= 78.1.1,< 82" # coverage might have a wheel on PyPI for a future python version which is @@ -360,7 +383,7 @@ jobs: # Python release may only be available as pre-releases pip install --pre -e .[test] - name: Install persistent - if: matrix.python-version != '3.15' + if: ${{ !startsWith(matrix.python-version, '3.15') }} run: | pip install -U wheel "setuptools >= 78.1.1,< 82" pip install -U coverage[toml] diff --git a/.manylinux-install.sh b/.manylinux-install.sh index a2260ca..507f24f 100755 --- a/.manylinux-install.sh +++ b/.manylinux-install.sh @@ -32,7 +32,9 @@ tox_env_map() { *"cp311"*) echo 'py311';; *"cp312"*) echo 'py312';; *"cp313"*) echo 'py313';; + *"cp314t"*) echo 'py314t';; *"cp314"*) echo 'py314';; + *"cp315t"*) echo 'py315t';; *"cp315"*) echo 'py315';; *) echo 'py';; esac @@ -46,8 +48,10 @@ for PYBIN in /opt/python/*/bin; do [[ "${PYBIN}" == *"cp312/"* ]] || \ [[ "${PYBIN}" == *"cp313/"* ]] || \ [[ "${PYBIN}" == *"cp314/"* ]] || \ - [[ "${PYBIN}" == *"cp315/"* ]] ; then - if [[ "${PYBIN}" == *"cp315/"* ]] ; then + [[ "${PYBIN}" == *"cp314t/"* ]] || \ + [[ "${PYBIN}" == *"cp315/"* ]] || \ + [[ "${PYBIN}" == *"cp315t/"* ]] ; then + if [[ "${PYBIN}" == *"cp315/"* ]] || [[ "${PYBIN}" == *"cp315t/"* ]] ; then "${PYBIN}/pip" install --pre -e /io/ "${PYBIN}/pip" wheel /io/ --pre -w wheelhouse/ else diff --git a/.meta.toml b/.meta.toml index 8abcba3..931c5f3 100644 --- a/.meta.toml +++ b/.meta.toml @@ -2,7 +2,7 @@ # https://github.com/zopefoundation/meta/tree/master/src/zope/meta/c-code [meta] template = "c-code" -commit-id = "51f0db4e" +commit-id = "21b3fb2e" [python] with-windows = true diff --git a/pyproject.toml b/pyproject.toml index c7da72c..0e40b5c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -99,6 +99,7 @@ source = [ readme = {file = ["README.rst", "CHANGES.rst"]} + [tool.zest-releaser] create-wheel = false upload-pypi = false diff --git a/tox.ini b/tox.ini index 7f8ccb6..4d1b708 100644 --- a/tox.ini +++ b/tox.ini @@ -12,6 +12,7 @@ envlist = py314,py314-pure py315,py315-pure py314t,py314t-pure + py315t,py315t-pure pypy3 docs coverage @@ -20,7 +21,6 @@ envlist = pip_pre = py315: true deps = setuptools >= 78.1.1,< 82 - Sphinx setenv = pure: PURE_PYTHON=1 !pure-!pypy3: PURE_PYTHON=0