Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
8f9de4d
move mkl_umath build system to meson
ndgrigorian Mar 1, 2026
e1ce0ee
add tests to module
ndgrigorian Mar 4, 2026
c1b5c43
exclude process_src_template from linting
ndgrigorian Mar 4, 2026
01af689
add python-build to meta.yamls
ndgrigorian Mar 4, 2026
c90f88f
fix syntax in build shell scripts
ndgrigorian Mar 4, 2026
e734712
update build_pip workflow
ndgrigorian Mar 4, 2026
075b296
update clang workflow
ndgrigorian Mar 5, 2026
2ec1201
fix import error in builds
ndgrigorian Mar 5, 2026
0ae4685
update Windows build scripts
ndgrigorian Mar 5, 2026
c4a4038
fix linting
ndgrigorian Mar 5, 2026
ab07fd1
fix flags on windows builds
ndgrigorian Mar 5, 2026
903cf97
add wheel to conda-forge meta.yaml
ndgrigorian Mar 5, 2026
8b58419
fix typo in bld.bat
ndgrigorian Mar 5, 2026
d745054
add pip to meta.yamls
ndgrigorian Mar 5, 2026
64c1881
ignore git blame of previous commit fixing linting
ndgrigorian Mar 5, 2026
d10f0d0
fix race condition in meson build
ndgrigorian Mar 6, 2026
2bd6b7a
require MKL in meson build
ndgrigorian Apr 7, 2026
f4d0b02
drop 'cpp' from meson.build
ndgrigorian Apr 7, 2026
cb7f656
add cmake to build system dependencies
ndgrigorian Apr 8, 2026
8e3cd1d
remove jq from pip build
ndgrigorian Apr 9, 2026
9a03cfe
add meson option for setting MKL_THREADING
ndgrigorian Apr 26, 2026
6dc291f
simplify mkl_umath conda-forge build scripts
ndgrigorian May 29, 2026
f7e5989
Merge branch 'main' into build-with-meson
ndgrigorian Jul 8, 2026
ff65831
add CLI sources to meson.build
ndgrigorian Jul 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .flake8
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,9 @@ per-file-ignores =
mkl_umath/ufunc_docstrings_numpy1.py: E501
mkl_umath/ufunc_docstrings_numpy2.py: E501

exclude = _vendored/conv_template.py
exclude =
_vendored/conv_template.py
_vendored/process_src_template.py

filename = *.py, *.pyx, *.pxi, *.pxd
max_line_length = 80
Expand Down
3 changes: 3 additions & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,6 @@

# Move to clang-format-22
85e977ffa438851fda6f9d2314810bca278998b1

# fix linting in conda-package-cf
2d492495f37b5c3a7f7f1c9fe12bf9025aeb22e7
5 changes: 2 additions & 3 deletions .github/workflows/build-with-clang.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ on:
permissions: read-all

jobs:
build-with-clang:
build-with-intel-clang:
runs-on: ubuntu-latest

strategy:
Expand Down Expand Up @@ -55,7 +55,7 @@ jobs:

- name: Install mkl_umath dependencies
run: |
pip install scikit-build cmake ninja cython setuptools">=77"
pip install meson-python ninja cython cmake
pip install ${{ matrix.numpy_version }}

- name: List oneAPI folder content
Expand All @@ -66,7 +66,6 @@ jobs:
source ${{ env.ONEAPI_ROOT }}/setvars.sh
echo "$CMPLR_ROOT"
export CC="$CMPLR_ROOT/bin/icx"
export CFLAGS="${CFLAGS} -fno-fast-math -O2"
pip install . --no-build-isolation --no-deps --verbose

- name: Run mkl_umath tests
Expand Down
63 changes: 63 additions & 0 deletions .github/workflows/build-with-standard-clang.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Build project with standard clang compiler

on:
pull_request:
push:
branches: [master]

permissions: read-all

jobs:
build-with-standard-clang:
runs-on: ubuntu-latest

strategy:
matrix:
python: ["3.10", "3.11", "3.12", "3.13", "3.14"]
numpy_version: ["numpy'>=2'"]

env:
COMPILER_ROOT: /usr/bin

defaults:
run:
shell: bash -el {0}

steps:
- name: Cancel Previous Runs
uses: styfle/cancel-workflow-action@3155a141048f8f89c06b4cdae32e7853e97536bc # 0.13.0
with:
access_token: ${{ github.token }}

- name: Install Dependencies
run: |
sudo apt-get update && sudo apt-get install -y clang

- name: Setup Python
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: ${{ matrix.python }}
architecture: x64

- name: Checkout repo
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0

- name: Install mkl_umath dependencies
run: |
pip install meson-python ninja cmake cython mkl-devel
pip install ${{ matrix.numpy_version }}

- name: Build mkl_umath
run: |
export CC=${{ env.COMPILER_ROOT }}/clang
pip install . --no-build-isolation --no-deps --verbose

- name: Run mkl_umath tests
run: |
pip install pytest
# mkl_umath cannot be installed in editable mode, we need
# to change directory before importing it and running tests
cd ..
python -m pytest -sv --pyargs mkl_umath
11 changes: 2 additions & 9 deletions .github/workflows/build_pip.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,6 @@ jobs:
use_pre: ["", "--pre"]

steps:
- name: Install jq
shell: bash -l {0}
run: |
sudo apt-get install jq

- name: Checkout repo
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
Expand All @@ -48,14 +43,12 @@ jobs:

- name: Build conda package
run: |
pip install --no-cache-dir scikit-build cmake ninja cython
pip install --no-cache-dir meson-python ninja cmake cython
pip install --no-cache-dir numpy ${{ matrix.use_pre }}
echo "CONDA_PREFFIX is '${CONDA_PREFIX}'"
export MKLROOT=${CONDA_PREFIX}
CC=icx pip install . --no-build-isolation --no-deps --verbose
pip install --no-cache-dir pytest
pip list
# mkl_umath cannot be installed in editable mode, we need
# to change directory before importing it and running tests
cd ..
python -m pytest -v --pyargs mkl_umath
python -m pytest -sv --pyargs mkl_umath
2 changes: 1 addition & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ repos:
"-rn", # Only display messages
"-sn", # Don't display the score
"--errors-only",
"--disable=import-error",
"--disable=import-error,no-name-in-module",
]

- repo: https://github.com/jumanjihouse/pre-commit-hooks
Expand Down
153 changes: 0 additions & 153 deletions CMakeLists.txt

This file was deleted.

4 changes: 1 addition & 3 deletions _vendored/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Vendored files

File `conv_template.py` is copied from NumPy's numpy/distutils folder, since
`numpy.distutils` is absent from the installation layout starting with
Python 3.12
Files `conv_template.py` and `process_src_template.py` are copied from NumPy's numpy/numpy/_build_utils folder
Loading
Loading