From dd080275b7e475f9d797a92f19532ea75899f391 Mon Sep 17 00:00:00 2001 From: Trevor Gamblin Date: Thu, 3 Sep 2026 15:13:28 -0400 Subject: [PATCH 1/3] workflows: CI: use setup-uv instead of setup-python setup-uv supports more architectures (e.g. riscv64) than setup-python and is generally faster, so use it for Linux jobs. Signed-off-by: Trevor Gamblin --- .github/workflows/CI.yml | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 4977b3d..86688fe 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -70,9 +70,11 @@ jobs: with: persist-credentials: false - - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 + - uses: astral-sh/setup-uv@20cfd1bf945f4377ade1205e4dbc17946fc9a30d # v10.0.1 with: - python-version: "3.x" + activate-environment: true + enable-cache: false + python-version: "3" - uses: PyO3/maturin-action@e83996d129638aa358a18fbd1dfb82f0b0fb5d3b # v1.51.0 # zizmor: ignore[cache-poisoning] @@ -106,9 +108,11 @@ jobs: with: persist-credentials: false - - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 + - uses: astral-sh/setup-uv@20cfd1bf945f4377ade1205e4dbc17946fc9a30d # v10.0.1 with: - python-version: "3.x" + activate-environment: true + enable-cache: false + python-version: "3" - uses: PyO3/maturin-action@e83996d129638aa358a18fbd1dfb82f0b0fb5d3b # v1.51.0 # zizmor: ignore[cache-poisoning] From c0570f79976b954dba048d00a4d111f465bb5519 Mon Sep 17 00:00:00 2001 From: Trevor Gamblin Date: Thu, 3 Sep 2026 15:20:13 -0400 Subject: [PATCH 2/3] workflows: CI: make rustc targets more explicit For Linux builds, distinguish between 'target' and 'arch', since the two are not always the same (e.g. the target for ppc64le is actually powerpc64le-unknown-linux-gnu). This allows more explicit support for other platforms when needed. Signed-off-by: Trevor Gamblin --- .github/workflows/CI.yml | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 86688fe..cf11d25 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -58,12 +58,12 @@ jobs: strategy: matrix: platform: - - { target: x86_64, interpreter: *interpreters } - - { target: x86, interpreter: *interpreters } - - { target: aarch64, interpreter: *interpreters } - - { target: armv7, interpreter: *interpreters } - - { target: s390x, interpreter: *interpreters } - - { target: ppc64le, interpreter: *interpreters } + - { target: x86_64-unknown-linux-gnu, arch: x86_64, interpreter: *interpreters } + - { target: i686-unknown-linux-gnu, arch: x86, interpreter: *interpreters } + - { target: aarch64-unknown-linux-gnu, arch: aarch64, interpreter: *interpreters } + - { target: armv7-unknown-linux-gnueabihf, arch: armv7, interpreter: *interpreters } + - { target: s390x-unknown-linux-gnu, arch: s390x, interpreter: *interpreters } + - { target: powerpc64le-unknown-linux-gnu, arch: ppc64le, interpreter: *interpreters } steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 @@ -90,7 +90,7 @@ jobs: - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: - name: wheels-linux-${{ matrix.platform.target }} + name: wheels-linux-${{ matrix.platform.arch }} path: dist build-musllinux: @@ -98,10 +98,10 @@ jobs: strategy: matrix: platform: - - { target: x86_64, interpreter: *interpreters } - - { target: x86, interpreter: *interpreters } - - { target: aarch64, interpreter: *interpreters } - - { target: armv7, interpreter: *interpreters } + - { target: x86_64-unknown-linux-musl, arch: x86_64, interpreter: *interpreters } + - { target: i686-unknown-linux-musl, arch: x86, interpreter: *interpreters } + - { target: aarch64-unknown-linux-musl, arch: aarch64, interpreter: *interpreters } + - { target: armv7-unknown-linux-musleabihf, arch: armv7, interpreter: *interpreters } steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 @@ -128,7 +128,7 @@ jobs: - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: - name: wheels-musllinux-${{ matrix.platform.target }} + name: wheels-musllinux-${{ matrix.platform.arch }} path: dist build-windows: From e022162fbed33278a4dffcae76e9f96aee2c5f49 Mon Sep 17 00:00:00 2001 From: Trevor Gamblin Date: Thu, 3 Sep 2026 15:23:03 -0400 Subject: [PATCH 3/3] workflows: CI: add riscv64 build Signed-off-by: Trevor Gamblin --- .github/workflows/CI.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index cf11d25..9e58b9e 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -64,6 +64,7 @@ jobs: - { target: armv7-unknown-linux-gnueabihf, arch: armv7, interpreter: *interpreters } - { target: s390x-unknown-linux-gnu, arch: s390x, interpreter: *interpreters } - { target: powerpc64le-unknown-linux-gnu, arch: ppc64le, interpreter: *interpreters } + - { target: riscv64gc-unknown-linux-gnu, arch: riscv64, interpreter: *interpreters } steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 @@ -102,6 +103,7 @@ jobs: - { target: i686-unknown-linux-musl, arch: x86, interpreter: *interpreters } - { target: aarch64-unknown-linux-musl, arch: aarch64, interpreter: *interpreters } - { target: armv7-unknown-linux-musleabihf, arch: armv7, interpreter: *interpreters } + - { target: riscv64gc-unknown-linux-musl, arch: riscv64, interpreter: *interpreters } steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1