From 6f1aafd5cefb3e13581dc4311cd0dda2824e5f9e Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Tue, 19 Aug 2025 12:12:41 +0000 Subject: [PATCH 01/18] Rearrange Alpine packagws --- .github/workflows/ci-i386.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index 1cf1f20f..22a39bb2 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -27,17 +27,17 @@ jobs: arch: x86 packages: > build-base - python3 - python3-dev git - py3-pip - py3-pytest - uv meson pkgconf + uv + zstd + python3 + python3-dev py3-numpy py3-numpy-dev - zstd + py3-pip + py3-pytest - name: Install numcodecs run: | From 59fc0cb170cdd8c31643e2ccfbf9d08cba1a0cea Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Tue, 19 Aug 2025 12:13:39 +0000 Subject: [PATCH 02/18] add pcodec to 32-bit CI --- .github/workflows/ci-i386.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index 22a39bb2..78dfb5ba 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -43,7 +43,7 @@ jobs: run: | export DISABLE_NUMCODECS_AVX2="" uv venv - uv pip install -v -e .[test,test_extras,msgpack,crc32c] + uv pip install -v -e .[test,test_extras,msgpack,crc32c,pcodec] shell: alpine.sh {0} From 4e51141564fb0e34b557d3b449849c0695140280 Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Tue, 19 Aug 2025 12:33:09 +0000 Subject: [PATCH 03/18] Add rust to Alpine --- .github/workflows/ci-i386.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index 78dfb5ba..d47a01f7 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -38,6 +38,7 @@ jobs: py3-numpy-dev py3-pip py3-pytest + rust - name: Install numcodecs run: | From d2849d799f30e0da9d2c82f9574600818e8f4fb2 Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Tue, 19 Aug 2025 12:59:58 +0000 Subject: [PATCH 04/18] Add maturin --- .github/workflows/ci-i386.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index d47a01f7..b4d4ec15 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -39,6 +39,8 @@ jobs: py3-pip py3-pytest rust + maturin + py3-maturin - name: Install numcodecs run: | From 4d32918fbfe8de28bcd04ce048d72f084880cc48 Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Thu, 21 Aug 2025 02:54:20 +0000 Subject: [PATCH 05/18] Add cargo --- .github/workflows/ci-i386.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index b4d4ec15..2b7fa326 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -41,6 +41,7 @@ jobs: rust maturin py3-maturin + cargo - name: Install numcodecs run: | From 608d833b9007a3ad3abc37b25e0d6e55c3f2a663 Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Thu, 21 Aug 2025 04:45:59 +0000 Subject: [PATCH 06/18] Add zfpy via git --- .github/workflows/ci-i386.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index 2b7fa326..eeb433e3 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -47,7 +47,8 @@ jobs: run: | export DISABLE_NUMCODECS_AVX2="" uv venv - uv pip install -v -e .[test,test_extras,msgpack,crc32c,pcodec] + uv add "zfpy @ git+https://github.com/LLNL/zfp" + uv pip install -v -e .[test,test_extras,msgpack,crc32c,pcodec,zfpy] shell: alpine.sh {0} From 976873c711285eecd3d72dad25a6539562dd4aae Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Thu, 21 Aug 2025 05:17:37 +0000 Subject: [PATCH 07/18] Build zfp --- .github/workflows/ci-i386.yml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index eeb433e3..d0aac17b 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -42,6 +42,21 @@ jobs: maturin py3-maturin cargo + cmake + + - name: Install zfp + run: | + PYTHON_INCLUDE=$(python -c 'from sysconfig import get_paths; print(get_paths()["include"])'); + PYTHON_LIB=$(python -c 'import sysconfig; print(sysconfig.get_config_var("LIBDIR"))'); + git clone https://github.com/LLNL/zfp + cd zfp + mkdir build; + cd build; + cmake .. -DBUILD_ZFPY=ON -DBUILD_TESTING=OFF -DPYTHON_LIBRARY=$PYTHON_LIB -DPYTHON_INCLUDE_DIR=$PYTHON_INCLUDE; + make; + cd ..; + cp build/lib*/libzfp* /usr/local/lib; + shell: alpine.sh {0} - name: Install numcodecs run: | From 51a1cf9519ed58718c78bf992737313f28d58091 Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Thu, 21 Aug 2025 05:27:14 +0000 Subject: [PATCH 08/18] Add cython to Alpine --- .github/workflows/ci-i386.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index d0aac17b..08cbc916 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -43,11 +43,13 @@ jobs: py3-maturin cargo cmake + cython - name: Install zfp run: | - PYTHON_INCLUDE=$(python -c 'from sysconfig import get_paths; print(get_paths()["include"])'); - PYTHON_LIB=$(python -c 'import sysconfig; print(sysconfig.get_config_var("LIBDIR"))'); + uv venv + PYTHON_INCLUDE=$(uv run python -c 'from sysconfig import get_paths; print(get_paths()["include"])'); + PYTHON_LIB=$(uv run python -c 'import sysconfig; print(sysconfig.get_config_var("LIBDIR"))'); git clone https://github.com/LLNL/zfp cd zfp mkdir build; From 3c75ecc29ec93618b5d9af36360dcc611f55e738 Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Thu, 21 Aug 2025 05:29:29 +0000 Subject: [PATCH 09/18] Consolidate zfp under uvqq --- .github/workflows/ci-i386.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index 08cbc916..555514ab 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -54,17 +54,17 @@ jobs: cd zfp mkdir build; cd build; - cmake .. -DBUILD_ZFPY=ON -DBUILD_TESTING=OFF -DPYTHON_LIBRARY=$PYTHON_LIB -DPYTHON_INCLUDE_DIR=$PYTHON_INCLUDE; - make; + uv run cmake .. -DBUILD_ZFPY=ON -DBUILD_TESTING=OFF -DPYTHON_LIBRARY=$PYTHON_LIB -DPYTHON_INCLUDE_DIR=$PYTHON_INCLUDE; + uv run make; cd ..; cp build/lib*/libzfp* /usr/local/lib; + uv add "zfpy @ git+https://github.com/LLNL/zfp" shell: alpine.sh {0} - name: Install numcodecs run: | export DISABLE_NUMCODECS_AVX2="" uv venv - uv add "zfpy @ git+https://github.com/LLNL/zfp" uv pip install -v -e .[test,test_extras,msgpack,crc32c,pcodec,zfpy] shell: alpine.sh {0} From 73fc8ead087eaa61fada92acc732263360e3dd04 Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Thu, 21 Aug 2025 05:51:41 +0000 Subject: [PATCH 10/18] Fix zfpy build --- .github/workflows/ci-i386.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index 555514ab..ecd8196c 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -58,7 +58,8 @@ jobs: uv run make; cd ..; cp build/lib*/libzfp* /usr/local/lib; - uv add "zfpy @ git+https://github.com/LLNL/zfp" + cd .. + uv add "zfpy @ ./zfp" shell: alpine.sh {0} - name: Install numcodecs From d77d55f774a992a93b05c0a629bf4cfe9f224341 Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Thu, 21 Aug 2025 11:31:12 +0000 Subject: [PATCH 11/18] Fix zfpy build, no cd --- .github/workflows/ci-i386.yml | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index ecd8196c..a41decc4 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -51,14 +51,11 @@ jobs: PYTHON_INCLUDE=$(uv run python -c 'from sysconfig import get_paths; print(get_paths()["include"])'); PYTHON_LIB=$(uv run python -c 'import sysconfig; print(sysconfig.get_config_var("LIBDIR"))'); git clone https://github.com/LLNL/zfp - cd zfp - mkdir build; - cd build; - uv run cmake .. -DBUILD_ZFPY=ON -DBUILD_TESTING=OFF -DPYTHON_LIBRARY=$PYTHON_LIB -DPYTHON_INCLUDE_DIR=$PYTHON_INCLUDE; - uv run make; - cd ..; - cp build/lib*/libzfp* /usr/local/lib; - cd .. + mkdir zfp/build;; + uv run cmake zfp -B zfp/build -DBUILD_ZFPY=ON -DBUILD_TESTING=OFF -DPYTHON_LIBRARY=$PYTHON_LIB -DPYTHON_INCLUDE_DIR=$PYTHON_INCLUDE; + uv run make -C zfp/build; + cp zfp/build/lib*/libzfp* /usr/local/lib; + cp zfp/build/lib*/libzfp* /usr/local/lib64; uv add "zfpy @ ./zfp" shell: alpine.sh {0} From cc54bd450026eec938c80aad71637fd3f0d910ae Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Thu, 21 Aug 2025 11:46:44 +0000 Subject: [PATCH 12/18] Fix zfpy build, no ;; --- .github/workflows/ci-i386.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index a41decc4..cdc4e329 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -51,9 +51,9 @@ jobs: PYTHON_INCLUDE=$(uv run python -c 'from sysconfig import get_paths; print(get_paths()["include"])'); PYTHON_LIB=$(uv run python -c 'import sysconfig; print(sysconfig.get_config_var("LIBDIR"))'); git clone https://github.com/LLNL/zfp - mkdir zfp/build;; - uv run cmake zfp -B zfp/build -DBUILD_ZFPY=ON -DBUILD_TESTING=OFF -DPYTHON_LIBRARY=$PYTHON_LIB -DPYTHON_INCLUDE_DIR=$PYTHON_INCLUDE; - uv run make -C zfp/build; + mkdir zfp/build; + uv run cmake zfp -B zfp/build -DBUILD_ZFPY=ON -DBUILD_TESTING=OFF -DPYTHON_LIBRARY=$PYTHON_LIB -DPYTHON_INCLUDE_DIR=$PYTHON_INCLUDE + uv run make -C zfp/build cp zfp/build/lib*/libzfp* /usr/local/lib; cp zfp/build/lib*/libzfp* /usr/local/lib64; uv add "zfpy @ ./zfp" From 10b11507839adc8c58b8fa370fa4a80693b46804 Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Fri, 22 Aug 2025 06:21:59 +0000 Subject: [PATCH 13/18] Patch distutils out --- .github/workflows/ci-i386.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index cdc4e329..c62629d3 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -44,6 +44,7 @@ jobs: cargo cmake cython + sed - name: Install zfp run: | @@ -51,6 +52,7 @@ jobs: PYTHON_INCLUDE=$(uv run python -c 'from sysconfig import get_paths; print(get_paths()["include"])'); PYTHON_LIB=$(uv run python -c 'import sysconfig; print(sysconfig.get_config_var("LIBDIR"))'); git clone https://github.com/LLNL/zfp + sed -i "s/distutils.sysconfig/sysconfig/g" zfp/python/scikit-build-cmake/FindPythonExtensions.cmake mkdir zfp/build; uv run cmake zfp -B zfp/build -DBUILD_ZFPY=ON -DBUILD_TESTING=OFF -DPYTHON_LIBRARY=$PYTHON_LIB -DPYTHON_INCLUDE_DIR=$PYTHON_INCLUDE uv run make -C zfp/build From 25231e5be8ac7fb8d2a9638ceae62a439717df9b Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Fri, 22 Aug 2025 06:54:24 +0000 Subject: [PATCH 14/18] Try make install --- .github/workflows/ci-i386.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index c62629d3..36083100 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -55,9 +55,8 @@ jobs: sed -i "s/distutils.sysconfig/sysconfig/g" zfp/python/scikit-build-cmake/FindPythonExtensions.cmake mkdir zfp/build; uv run cmake zfp -B zfp/build -DBUILD_ZFPY=ON -DBUILD_TESTING=OFF -DPYTHON_LIBRARY=$PYTHON_LIB -DPYTHON_INCLUDE_DIR=$PYTHON_INCLUDE - uv run make -C zfp/build - cp zfp/build/lib*/libzfp* /usr/local/lib; - cp zfp/build/lib*/libzfp* /usr/local/lib64; + uv run make -j -C zfp/build + uv run make -C zfp/build install uv add "zfpy @ ./zfp" shell: alpine.sh {0} From d155d4f11e413659c2505ae9771b9556a06631e8 Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Fri, 22 Aug 2025 07:09:17 +0000 Subject: [PATCH 15/18] Try make install with sudo --- .github/workflows/ci-i386.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index 36083100..53111250 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -56,7 +56,7 @@ jobs: mkdir zfp/build; uv run cmake zfp -B zfp/build -DBUILD_ZFPY=ON -DBUILD_TESTING=OFF -DPYTHON_LIBRARY=$PYTHON_LIB -DPYTHON_INCLUDE_DIR=$PYTHON_INCLUDE uv run make -j -C zfp/build - uv run make -C zfp/build install + uv run sudo make -C zfp/build install uv add "zfpy @ ./zfp" shell: alpine.sh {0} From 62c7db7fcfb397d971a9b482cef10eb04b2c8728 Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Fri, 22 Aug 2025 07:25:20 +0000 Subject: [PATCH 16/18] Add sudo to Alpine --- .github/workflows/ci-i386.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index 53111250..4daef237 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -45,6 +45,7 @@ jobs: cmake cython sed + sudo - name: Install zfp run: | From 663a7ae61e321a7b1ea6a032ea223126cd29c351 Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Fri, 22 Aug 2025 08:23:41 +0000 Subject: [PATCH 17/18] Try removing sone Alpine packages --- .github/workflows/ci-i386.yml | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index 4daef237..72df1b92 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -27,25 +27,21 @@ jobs: arch: x86 packages: > build-base + cargo + cmake + cython git meson pkgconf + rust + sed + sudo uv zstd python3 python3-dev - py3-numpy - py3-numpy-dev py3-pip py3-pytest - rust - maturin - py3-maturin - cargo - cmake - cython - sed - sudo - name: Install zfp run: | From 009d97ae3d9c509d7372ced6ab2a537b96a319e9 Mon Sep 17 00:00:00 2001 From: Mark Kittisopikul Date: Fri, 22 Aug 2025 09:16:36 +0000 Subject: [PATCH 18/18] Add Alpine numpy packages back --- .github/workflows/ci-i386.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/ci-i386.yml b/.github/workflows/ci-i386.yml index 72df1b92..be9d4197 100644 --- a/.github/workflows/ci-i386.yml +++ b/.github/workflows/ci-i386.yml @@ -40,6 +40,8 @@ jobs: zstd python3 python3-dev + py3-numpy + py3-numpy-dev py3-pip py3-pytest