From 97fcb4bb100dcb48cb1d583ba1f28f477e87dfa9 Mon Sep 17 00:00:00 2001 From: Anton Volkov Date: Wed, 2 Jul 2025 07:39:25 -0500 Subject: [PATCH 1/9] Add python 3.13 to testing conda package --- .github/workflows/conda-package.yml | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/.github/workflows/conda-package.yml b/.github/workflows/conda-package.yml index 0a0823a4376..b89d6cf16c3 100644 --- a/.github/workflows/conda-package.yml +++ b/.github/workflows/conda-package.yml @@ -31,9 +31,7 @@ jobs: strategy: fail-fast: false matrix: - # python 3.13 is blocked since BLAS requires "mkl<2025.0" (see https://github.com/conda-forge/blas-feedstock/pull/128 - # which depends on resolving MKL issue https://github.com/conda-forge/intel_repack-feedstock/issues/83) - python: ['3.9', '3.10', '3.11', '3.12'] + python: ['3.9', '3.10', '3.11', '3.12', '3.13'] os: [ubuntu-22.04, windows-2022] permissions: @@ -130,8 +128,7 @@ jobs: strategy: fail-fast: false matrix: - # python 3.13 is blocked due to MKL issue - python: ['3.9', '3.10', '3.11', '3.12'] + python: ['3.9', '3.10', '3.11', '3.12', '3.13'] os: [ubuntu-latest] env: @@ -258,8 +255,7 @@ jobs: strategy: fail-fast: false matrix: - # python 3.13 is blocked due to MKL issue - python: ['3.9', '3.10', '3.11', '3.12'] + python: ['3.9', '3.10', '3.11', '3.12', '3.13'] os: [windows-2022] env: @@ -408,8 +404,7 @@ jobs: strategy: fail-fast: false matrix: - # python 3.13 is blocked due to MKL issue - python: ['3.9', '3.10', '3.11', '3.12'] + python: ['3.9', '3.10', '3.11', '3.12', '3.13'] os: [ubuntu-22.04, windows-2022] runs-on: ${{ matrix.os }} From fee0e90e7f49ce85f6cb7ff3be55745d7d78ef26 Mon Sep 17 00:00:00 2001 From: Anton Volkov Date: Wed, 2 Jul 2025 08:43:46 -0500 Subject: [PATCH 2/9] Use python 3.13 in testing with all dtypes enabled --- .github/workflows/conda-package.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/conda-package.yml b/.github/workflows/conda-package.yml index b89d6cf16c3..0680b2ee961 100644 --- a/.github/workflows/conda-package.yml +++ b/.github/workflows/conda-package.yml @@ -16,9 +16,7 @@ env: ver-script-part1: "import json; f = open('version.json', 'r'); j = json.load(f); f.close(); " ver-script-part2: "d = j['dpnp'][0]; print('='.join((d[s] for s in ('version', 'build'))))" fetch-depth: 1 - # python 3.13 is blocked since BLAS requires "mkl<2025.0" (see https://github.com/conda-forge/blas-feedstock/pull/128 - # which depends on resolving MKL issue https://github.com/conda-forge/intel_repack-feedstock/issues/83) - python-ver-test-all-dtypes: '3.12' + python-ver-test-all-dtypes: '3.13' test-env-name: 'test' rerun-tests-on-failure: 'true' rerun-tests-max-attempts: 2 From de32196348dd9d971aa1de2cbc173c8884439b81 Mon Sep 17 00:00:00 2001 From: Anton Volkov Date: Wed, 2 Jul 2025 08:44:53 -0500 Subject: [PATCH 3/9] Use python 3.13 in array-api testing --- .github/workflows/conda-package.yml | 2 +- environments/create_conda_channel.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/conda-package.yml b/.github/workflows/conda-package.yml index 0680b2ee961..8652a36fedc 100644 --- a/.github/workflows/conda-package.yml +++ b/.github/workflows/conda-package.yml @@ -500,7 +500,7 @@ jobs: dpnp-repo-path: '${{ github.workspace }}/source/' array-api-skips-file: '${{ github.workspace }}/source/.github/workflows/array-api-skips.txt' create-conda-channel-env: 'source/environments/create_conda_channel.yml' - python-ver: '3.12' # it has to be aligned with python in create_conda_channel.yml + python-ver: '3.13' # it has to be aligned with python in create_conda_channel.yml conda-env-name: 'array-api-conformity' channel-path: '${{ github.workspace }}/channel/' pkg-path-in-channel: '${{ github.workspace }}/channel/linux-64/' diff --git a/environments/create_conda_channel.yml b/environments/create_conda_channel.yml index 98e40b3cd14..8dc62a5099c 100644 --- a/environments/create_conda_channel.yml +++ b/environments/create_conda_channel.yml @@ -2,5 +2,5 @@ name: Create conda channel with DPNP package channels: - conda-forge dependencies: - - python=3.12 # DPNP does not support python 3.13 + - python=3.13 - conda-index=0.6.1 From f3b1df2bc7a0c50f83fbae859cceee31aca00a1f Mon Sep 17 00:00:00 2001 From: Anton Volkov Date: Wed, 2 Jul 2025 08:45:58 -0500 Subject: [PATCH 4/9] Use python 3.13 while testing oneMath interface --- .github/workflows/check-onemath.yaml | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/.github/workflows/check-onemath.yaml b/.github/workflows/check-onemath.yaml index 9cd16a7373e..0b17fb9b473 100644 --- a/.github/workflows/check-onemath.yaml +++ b/.github/workflows/check-onemath.yaml @@ -65,9 +65,7 @@ jobs: strategy: fail-fast: false matrix: - # python 3.13 is blocked since BLAS requires "mkl<2025.0" (see https://github.com/conda-forge/blas-feedstock/pull/128 - # which depends on resolving MKL issue https://github.com/conda-forge/intel_repack-feedstock/issues/83) - python: ['3.12'] + python: ['3.13'] os: [ubuntu-22.04] # windows-2022 - no DFT support for Windows in oneMKL runs-on: ${{ matrix.os }} @@ -155,9 +153,7 @@ jobs: strategy: fail-fast: false matrix: - # python 3.13 is blocked since BLAS requires "mkl<2025.0" (see https://github.com/conda-forge/blas-feedstock/pull/128 - # which depends on resolving MKL issue https://github.com/conda-forge/intel_repack-feedstock/issues/83) - python: ['3.12'] + python: ['3.13'] os: [ubuntu-22.04] # windows-2022 - no DFT support for Windows in oneMKL runs-on: ${{ matrix.os }} From 247e6b8967051a4be981f3c10a58c72987504b6c Mon Sep 17 00:00:00 2001 From: Anton Volkov Date: Wed, 2 Jul 2025 08:47:08 -0500 Subject: [PATCH 5/9] Add python 3.13 in nightly tests --- .github/workflows/cron-run-tests.yaml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/cron-run-tests.yaml b/.github/workflows/cron-run-tests.yaml index 01fc497cf8a..a25903e71aa 100644 --- a/.github/workflows/cron-run-tests.yaml +++ b/.github/workflows/cron-run-tests.yaml @@ -38,9 +38,7 @@ jobs: strategy: fail-fast: false matrix: - # python 3.13 is blocked since BLAS requires "mkl<2025.0" (see https://github.com/conda-forge/blas-feedstock/pull/128 - # which depends on resolving MKL issue https://github.com/conda-forge/intel_repack-feedstock/issues/83) - python: ['3.9', '3.10', '3.11', '3.12'] + python: ['3.9', '3.10', '3.11', '3.12', '3.13'] runner: [ubuntu-22.04, ubuntu-24.04, windows-2022] steps: From aad6aa17c48df1b570826d838860f9f0be7f8e07 Mon Sep 17 00:00:00 2001 From: Anton Volkov Date: Wed, 2 Jul 2025 08:48:02 -0500 Subject: [PATCH 6/9] Update Quick Start Guide --- doc/quick_start_guide.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/quick_start_guide.rst b/doc/quick_start_guide.rst index 497ff7027f3..8aa86fd8e88 100644 --- a/doc/quick_start_guide.rst +++ b/doc/quick_start_guide.rst @@ -24,7 +24,7 @@ Follow device driver installation instructions to complete the step. Python Interpreter ================== -You will need Python 3.9, 3.10, 3.11 or 3.12 installed on your system. If you +You will need Python 3.9, 3.10, 3.11, 3.12 or 3.13 installed on your system. If you do not have one yet the easiest way to do that is to install `Intel Distribution for Python*`_. It installs all essential Python numerical and machine learning packages optimized for the Intel hardware, including From 73fca9b6b6205297c561ef2ffb638f131c4a21cc Mon Sep 17 00:00:00 2001 From: Anton Volkov Date: Wed, 2 Jul 2025 08:48:49 -0500 Subject: [PATCH 7/9] Use python 3.13 in coverage and building docs --- environments/building_docs.yml | 2 +- environments/coverage.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/environments/building_docs.yml b/environments/building_docs.yml index 2d452ddf3e4..f2df72a85ec 100644 --- a/environments/building_docs.yml +++ b/environments/building_docs.yml @@ -2,7 +2,7 @@ name: Building docs specific packages channels: - conda-forge dependencies: - - python=3.12 + - python=3.13 - cupy - sphinx - sphinx_rtd_theme diff --git a/environments/coverage.yml b/environments/coverage.yml index 0fcc8d82129..7c291eccb3d 100644 --- a/environments/coverage.yml +++ b/environments/coverage.yml @@ -2,7 +2,7 @@ name: Coverage specific packages channels: - conda-forge dependencies: - - python=3.12 + - python=3.13 - coverage[toml] - llvm - pytest-cov From 854b0f681025758f6717fd86b2fa5dbbb7938c80 Mon Sep 17 00:00:00 2001 From: Anton Volkov Date: Wed, 2 Jul 2025 10:27:52 -0500 Subject: [PATCH 8/9] Roll back python 3.13 in coverage, since no support by coveralls --- environments/coverage.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/environments/coverage.yml b/environments/coverage.yml index 7c291eccb3d..54cbbdede34 100644 --- a/environments/coverage.yml +++ b/environments/coverage.yml @@ -2,7 +2,7 @@ name: Coverage specific packages channels: - conda-forge dependencies: - - python=3.13 + - python=3.12 # no python 3.13 support by coveralls - coverage[toml] - llvm - pytest-cov From 379888b694b86d87334d7921be483380e3973f09 Mon Sep 17 00:00:00 2001 From: Anton Volkov Date: Wed, 2 Jul 2025 11:38:42 -0500 Subject: [PATCH 9/9] Add PR to the changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index b455232f1dc..7f34777e9b7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 * Simplifies backend implementation of `dpnp.kaiser` by getting rid of unnecessary template [#2472](https://github.com/IntelPython/dpnp/pull/2472) * `--onemkl-interfaces` and `--onemkl-interfaces-dir` options for building script are deprecated, instead `--onemath` and `--onemath-dir` are introduced to be aligned with [oneMath specification](https://oneapi-spec.uxlfoundation.org/specifications/oneapi/latest/elements/onemath/source/) [#2487](https://github.com/IntelPython/dpnp/pull/2487) * Clarified description of `xp` keyword in docstring of `dpnp.interp` [#2506](https://github.com/IntelPython/dpnp/pull/2506) +* Updated existing GitHub workflows to add testing with Python 3.13 [#2510](https://github.com/IntelPython/dpnp/pull/2510) ### Deprecated