diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 718cdeb..2a687b1 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1 +1 @@ -* @ndgrigorian @antonwolfy @xaleryb @ekomarova +* @ndgrigorian @antonwolfy @xaleryb @jharlow-intel diff --git a/.github/workflows/build-with-clang.yml b/.github/workflows/build-with-clang.yml index 6fee2d7..94686aa 100644 --- a/.github/workflows/build-with-clang.yml +++ b/.github/workflows/build-with-clang.yml @@ -13,8 +13,8 @@ jobs: strategy: matrix: - python: ["3.9", "3.10", "3.11", "3.12", "3.13"] - numpy_version: ["numpy'<2'", "numpy'>=2'"] + python: ["3.10", "3.11", "3.12", "3.13"] + numpy_version: ["numpy'>=2'"] env: ONEAPI_ROOT: /opt/intel/oneapi diff --git a/.github/workflows/build_pip.yaml b/.github/workflows/build_pip.yaml index 0eef846..cb33c69 100644 --- a/.github/workflows/build_pip.yaml +++ b/.github/workflows/build_pip.yaml @@ -17,7 +17,7 @@ jobs: strategy: matrix: - python: ['3.9', '3.10', '3.11', '3.12', '3.13'] + python: ['3.10', '3.11', '3.12', '3.13', '3.14'] use_pre: ["", "--pre"] steps: diff --git a/.github/workflows/conda-package.yml b/.github/workflows/conda-package.yml index 6050bd8..1539e04 100644 --- a/.github/workflows/conda-package.yml +++ b/.github/workflows/conda-package.yml @@ -18,7 +18,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python: ["3.9", "3.10", "3.11", "3.12", "3.13"] + python: ["3.10", "3.11", "3.12", "3.13"] steps: - name: Cancel Previous Runs uses: styfle/cancel-workflow-action@85880fa0301c86cca9da44039ee3bb12d3bedbfa # 0.12.1 @@ -64,7 +64,7 @@ jobs: conda-recipe - name: Upload artifact - uses: actions/upload-artifact@v4.6.2 + uses: actions/upload-artifact@v5.0.0 with: name: ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }} path: ${{ env.CONDA_BLD }}/${{ env.PACKAGE_NAME }}-*.conda @@ -75,7 +75,7 @@ jobs: strategy: matrix: - python: ["3.9", "3.10", "3.11", "3.12", "3.13"] + python: ["3.10", "3.11", "3.12", "3.13"] experimental: [false] runner: [ubuntu-latest] continue-on-error: ${{ matrix.experimental }} @@ -84,7 +84,7 @@ jobs: steps: - name: Download artifact - uses: actions/download-artifact@v5 + uses: actions/download-artifact@v6 with: name: ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }} - name: Add conda to system path @@ -146,7 +146,7 @@ jobs: strategy: matrix: - python: ["3.9", "3.10", "3.11", "3.12", "3.13"] + python: ["3.10", "3.11", "3.12", "3.13"] env: conda-bld: C:\Miniconda\conda-bld\win-64\ steps: @@ -196,7 +196,7 @@ jobs: conda build --no-test --python ${{ matrix.python }} -c https://software.repos.intel.com/python/conda -c conda-forge --override-channels conda-recipe - name: Upload artifact - uses: actions/upload-artifact@v4.6.2 + uses: actions/upload-artifact@v5.0.0 with: name: ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }} path: ${{ env.CONDA_BLD }}${{ env.PACKAGE_NAME }}-*.conda @@ -209,7 +209,7 @@ jobs: shell: cmd /C CALL {0} strategy: matrix: - python: ["3.9", "3.10", "3.11", "3.12", "3.13"] + python: ["3.10", "3.11", "3.12", "3.13"] experimental: [false] runner: [windows-latest] continue-on-error: ${{ matrix.experimental }} @@ -219,7 +219,7 @@ jobs: steps: - name: Download artifact - uses: actions/download-artifact@v5 + uses: actions/download-artifact@v6 with: name: ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }} diff --git a/.github/workflows/openssf-scorecard.yml b/.github/workflows/openssf-scorecard.yml index ae4a470..6e440cb 100644 --- a/.github/workflows/openssf-scorecard.yml +++ b/.github/workflows/openssf-scorecard.yml @@ -41,7 +41,7 @@ jobs: persist-credentials: false - name: "Run analysis" - uses: ossf/scorecard-action@05b42c624433fc40578a4040d5cf5e36ddca8cde # v2.4.2 + uses: ossf/scorecard-action@4eaacf0543bb3f2c246792bd56e8cdeffafb205a # v2.4.3 with: results_file: results.sarif results_format: sarif @@ -63,7 +63,7 @@ jobs: # Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF # format to the repository Actions tab. - name: "Upload artifact" - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.4.1 + uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v4.4.1 with: name: SARIF file path: results.sarif @@ -71,6 +71,6 @@ jobs: # Upload the results to GitHub's code scanning dashboard. - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@192325c86100d080feab897ff886c34abd4c83a3 # v3.29.8 + uses: github/codeql-action/upload-sarif@0499de31b99561a6d14a36a5f662c2a54f91beee # v3.29.8 with: sarif_file: results.sarif diff --git a/CHANGELOG.md b/CHANGELOG.md index 8c2cc09..c794a9a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,15 @@ 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). -## [dev] - YYYY-MM-DD +## [dev] (MM/DD/YYYY) + +### Added +* Enabled support of Python 3.14 [gh-119](https://github.com/IntelPython/mkl_umath/pull/119) + +### Removed +* Dropped support for Python 3.9 [gh-125](https://github.com/IntelPython/mkl_umath/pull/125) + +## [0.3.0] - 2025-10-06 ### Added * Added mkl implementation for floating point data-types of `exp2`, `log2`, `fabs`, `copysign`, `nextafter`, `fmax`, `fmin` and `remainder` functions [gh-81](https://github.com/IntelPython/mkl_umath/pull/81) @@ -14,6 +22,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed * Dropped support for `maximum` and `minimum` [gh-104](https://github.com/IntelPython/mkl_umath/pull/104) +* Disabled `-fast-math` by default [gh-105](https://github.com/IntelPython/mkl_umath/pull/105) * Used a common umath loop for `log2` function to match NumPy [gh-109](https://github.com/IntelPython/mkl_umath/pull/109) * Dropped support for `remainder` function [gh-110](https://github.com/IntelPython/mkl_umath/pull/110) diff --git a/conda-recipe-cf/meta.yaml b/conda-recipe-cf/meta.yaml index 88db762..f661db4 100644 --- a/conda-recipe-cf/meta.yaml +++ b/conda-recipe-cf/meta.yaml @@ -1,4 +1,4 @@ -{% set version = "0.3.0dev1" %} +{% set version = "0.3.0" %} {% set buildnumber = 0 %} package: diff --git a/conda-recipe/meta.yaml b/conda-recipe/meta.yaml index 9f8a1e2..38ea112 100644 --- a/conda-recipe/meta.yaml +++ b/conda-recipe/meta.yaml @@ -26,12 +26,14 @@ requirements: - cython - scikit-build - python + - python-gil # [py>=314] - mkl-devel - tbb-devel - numpy-base - wheel >=0.41.3 run: - python + - python-gil # [py>=314] - mkl-service - {{ pin_compatible('intel-cmplr-lib-rt') }} - {{ pin_compatible('numpy-base') }} diff --git a/mkl_umath/_version.py b/mkl_umath/_version.py index 86c8508..0404d81 100644 --- a/mkl_umath/_version.py +++ b/mkl_umath/_version.py @@ -1 +1 @@ -__version__ = '0.3.0dev1' +__version__ = '0.3.0' diff --git a/pyproject.toml b/pyproject.toml index bf9cd2e..fde6b4b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -45,11 +45,11 @@ classifiers = [ "Programming Language :: C", "Programming Language :: Python", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Software Development", "Topic :: Scientific/Engineering", @@ -64,7 +64,7 @@ keywords = ["mkl_umath"] license = "BSD-3-Clause" name = "mkl_umath" readme = {file = "README.md", content-type = "text/markdown"} -requires-python = ">=3.9,<3.14" +requires-python = ">=3.10,<3.15" [project.optional-dependencies]