diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 7a8fb580b..95a8483aa 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -68,16 +68,16 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - python-version: ['3.10', '3.13'] + python-version: ['3.10', '3.14'] full-test: [true, false] minimal-dep: [true, false] os: [ubuntu-latest, macos-latest] exclude: - # only full test suite on 3.13 - - python-version: '3.13' + # only full test suite on 3.14 + - python-version: '3.14' full-test: false - # no minimal dependency on 3.13 - - python-version: '3.13' + # no minimal dependency on 3.14 + - python-version: '3.14' minimal-dep: true # minimal dependency on ARM does not make sense (wheels not present) - os: macos-latest diff --git a/.github/workflows/wheels.yaml b/.github/workflows/wheels.yaml index 6f46531ac..06f014384 100644 --- a/.github/workflows/wheels.yaml +++ b/.github/workflows/wheels.yaml @@ -80,6 +80,19 @@ jobs: compiler: gcc version: 12 + - name: Build wheels for CPython 3.14 + uses: pypa/cibuildwheel@v3.3.1 + env: + CIBW_BUILD: "cp314t-* cp314-*" + CIBW_ARCHS: ${{ matrix.cibw_archs }} + CIBW_BUILD_FRONTEND: + "pip; args: --pre --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple" + CIBW_ENABLE: "cpython-freethreading" + CIBW_BEFORE_TEST: >- + pip install --pre + --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple + numpy scipy + - name: Build wheels for CPython 3.13 uses: pypa/cibuildwheel@v3.3.1 env: diff --git a/changes/978.dev.rst b/changes/978.dev.rst new file mode 100644 index 000000000..54ebe0ea3 --- /dev/null +++ b/changes/978.dev.rst @@ -0,0 +1 @@ +Bumped CI to Python 3.14 diff --git a/changes/README.rst b/changes/README.rst index 7b17dd891..e98620134 100644 --- a/changes/README.rst +++ b/changes/README.rst @@ -18,6 +18,7 @@ Each file should be named like ``..rst``, where * ``change``: Changes to API, and other operational changes. * ``highlight``: Adds a highlight bullet point to use as a possibly highlight * ``doc``: Changing or adding documentation +* ``dev``: Changes to internal development ways of doing things, CI, pre-commit, etc. It is possible to add more files with different categories (and text), but same pull request if all are relevant. For example a new feature might change diff --git a/pyproject.toml b/pyproject.toml index 7bba0fee2..e6ab3b11d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -407,6 +407,11 @@ orphan_prefix = "orphan." name = "Documentation" showcontent = true + [[tool.towncrier.type]] + directory = "dev" + name = "Internal development changes" + showcontent = true + [tool.rstcheck] ignore_directives = [ "autosummary",