diff --git a/.github/workflows/build-with-clang.yml b/.github/workflows/build-with-clang.yml index 498bede..79f5859 100644 --- a/.github/workflows/build-with-clang.yml +++ b/.github/workflows/build-with-clang.yml @@ -13,7 +13,7 @@ jobs: strategy: matrix: - python: ["3.9", "3.10", "3.11", "3.12"] + python: ["3.9", "3.10", "3.11", "3.12", "3.13"] numpy_version: ["numpy'<2'", "numpy'>=2'"] env: diff --git a/.github/workflows/build_pip.yaml b/.github/workflows/build_pip.yaml index 7398974..fc010ef 100644 --- a/.github/workflows/build_pip.yaml +++ b/.github/workflows/build_pip.yaml @@ -22,7 +22,7 @@ jobs: strategy: matrix: - python: ['3.9', '3.10', '3.11', '3.12'] + python: ['3.9', '3.10', '3.11', '3.12', '3.13'] use_pre: ["", "--pre"] steps: @@ -53,7 +53,7 @@ jobs: - name: Build conda package run: | - pip install --no-cache-dir cython + pip install --no-cache-dir cython setuptools pip install --no-cache-dir numpy ${{ matrix.use_pre }} echo "CONDA_PREFFIX is '${CONDA_PREFIX}'" export MKLROOT=${CONDA_PREFIX} diff --git a/.github/workflows/conda-package-cf.yml b/.github/workflows/conda-package-cf.yml index 88bfd5b..5722eed 100644 --- a/.github/workflows/conda-package-cf.yml +++ b/.github/workflows/conda-package-cf.yml @@ -20,7 +20,17 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python: ['3.9', '3.10', '3.11', '3.12'] + include: + - python: '3.9' + numpy: '2.0' + - python: '3.10' + numpy: '2.0' + - python: '3.11' + numpy: '2.2' + - python: '3.12' + numpy: '2.3' + - python: '3.13' + numpy: '2.3' steps: - name: Cancel Previous Runs uses: styfle/cancel-workflow-action@85880fa0301c86cca9da44039ee3bb12d3bedbfa # 0.12.1 @@ -53,10 +63,10 @@ jobs: - name: Install conda-build run: conda install conda-build python=3.12 - - name: Build conda package with NumPy 2.0 + - name: Build conda package with NumPy 2.x run: | CHANNELS="-c conda-forge --override-channels" - VERSIONS="--python ${{ matrix.python }} --numpy 2.0" + VERSIONS="--python ${{ matrix.python }} --numpy ${{ matrix.numpy }}" TEST="--no-test" conda build \ @@ -77,8 +87,8 @@ jobs: strategy: matrix: - python_ver: ['3.9', '3.10', '3.11', '3.12'] - numpy: ['numpy"<2"', 'numpy">=2"'] + python_ver: ['3.9', '3.10', '3.11', '3.12', '3.13'] + numpy: ['numpy">=2"'] experimental: [false] runner: [ubuntu-latest] continue-on-error: ${{ matrix.experimental }} @@ -147,7 +157,17 @@ jobs: strategy: matrix: - python: ['3.9', '3.10', '3.11', '3.12'] + include: + - python: '3.9' + numpy: '2.0' + - python: '3.10' + numpy: '2.0' + - python: '3.11' + numpy: '2.2' + - python: '3.12' + numpy: '2.3' + - python: '3.13' + numpy: '2.3' steps: - name: Cancel Previous Runs uses: styfle/cancel-workflow-action@85880fa0301c86cca9da44039ee3bb12d3bedbfa # 0.12.1 @@ -184,10 +204,10 @@ jobs: - name: Setup MSVC uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0 - - name: Build conda package with NumPy 2.0 + - name: Build conda package with NumPy 2.x run: | conda activate - conda build --no-test --python ${{ matrix.python }} --numpy 2.0 -c conda-forge --override-channels conda-recipe-cf + conda build --no-test --python ${{ matrix.python }} --numpy ${{ matrix.numpy }} -c conda-forge --override-channels conda-recipe-cf - name: Store conda paths as envs shell: bash -l {0} @@ -209,8 +229,8 @@ jobs: strategy: matrix: - python_ver: ['3.9', '3.10', '3.11', '3.12'] - numpy: ['numpy"<2"', 'numpy">=2"'] + python_ver: ['3.9', '3.10', '3.11', '3.12', '3.13'] + numpy: ['numpy">=2"'] experimental: [false] runner: [windows-latest] continue-on-error: ${{ matrix.experimental }} diff --git a/.github/workflows/conda-package.yml b/.github/workflows/conda-package.yml index f8ac629..ba6b951 100644 --- a/.github/workflows/conda-package.yml +++ b/.github/workflows/conda-package.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python: ['3.9', '3.10', '3.11', '3.12'] + python: ['3.9', '3.10', '3.11', '3.12', '3.13'] steps: - name: Cancel Previous Runs uses: styfle/cancel-workflow-action@85880fa0301c86cca9da44039ee3bb12d3bedbfa # 0.12.1 @@ -77,7 +77,7 @@ jobs: strategy: matrix: - python: ['3.9', '3.10', '3.11', '3.12'] + python: ['3.9', '3.10', '3.11', '3.12', '3.13'] experimental: [false] runner: [ubuntu-latest] continue-on-error: ${{ matrix.experimental }} @@ -155,7 +155,7 @@ jobs: strategy: matrix: - python: ['3.9', '3.10', '3.11', '3.12'] + python: ['3.9', '3.10', '3.11', '3.12', '3.13'] steps: - name: Cancel Previous Runs uses: styfle/cancel-workflow-action@85880fa0301c86cca9da44039ee3bb12d3bedbfa # 0.12.1 @@ -219,7 +219,7 @@ jobs: strategy: matrix: - python: ['3.9', '3.10', '3.11', '3.12'] + python: ['3.9', '3.10', '3.11', '3.12', '3.13'] experimental: [false] runner: [windows-latest] continue-on-error: ${{ matrix.experimental }} diff --git a/CHANGELOG.md b/CHANGELOG.md index 106b7c3..25b8976 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,16 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [2.0.0] (05/DD/2025) +## [dev] - YYYY-MM-DD + +### Added +* Enabled support of Python 3.13 [gh-164](https://github.com/IntelPython/mkl_fft/pull/164) + +### Changed + +### Fixed + +## [2.0.0] - 2025-06-03 ### Added * Added Hermitian FFT functions to SciPy interface `mkl_fft.interfaces.scipy_fft`: `hfft`, `ihfft`, `hfftn`, `ihfftn`, `hfft2`, and `ihfft2` [gh-161](https://github.com/IntelPython/mkl_fft/pull/161) @@ -22,14 +31,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 * Fixed inconsistency of input and output arrays dtype for `irfft` function [gh-180](https://github.com/IntelPython/mkl_fft/pull/180) * Fixed issues with `set_workers` function in SciPy interface `mkl_fft.interfaces.scipy_fft` [gh-183](https://github.com/IntelPython/mkl_fft/pull/183) -## [1.3.14] (04/10/2025) +## [1.3.14] - 2025-04-10 resolves gh-152 by adding an explicit `mkl-service` dependency to `mkl-fft` when building the wheel to ensure the `mkl` Python module is always available at runtime resolves gh-115, gh-116, gh-119, gh-135 -## [1.3.13] (03/25/2025) +## [1.3.13] - 2025-03-25 Supported python versions are 3.9, 3.10, 3.11, 3.12 diff --git a/pyproject.toml b/pyproject.toml index 55f31da..3264dce 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -42,6 +42,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Software Development", "Topic :: Scientific/Engineering", @@ -56,7 +57,7 @@ keywords = ["DFTI", "FFT", "Fourier", "MKL"] license = "BSD-3-Clause" name = "mkl_fft" readme = {file = "README.md", content-type = "text/markdown"} -requires-python = ">=3.9,<3.13" +requires-python = ">=3.9,<3.14" [project.optional-dependencies] scipy_interface = ["scipy>=1.10"]