From b15a5139034a4d79e24e56fd97af33c0d044ee0b Mon Sep 17 00:00:00 2001 From: konstin Date: Thu, 8 Jan 2026 11:41:25 +0100 Subject: [PATCH 1/2] Use uv instead of sudo pip Remove "sudo pip" style commands, they are a bad practice and we shouldn't have them in our CI. This change relies on uv covering the same platforms as maturin in CI. --- .github/workflows/release.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3681ab72e..6393a51a5 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -194,13 +194,17 @@ jobs: if: contains(fromJson('["s390x-unknown-linux-gnu", "loongarch64-unknown-linux-gnu", "riscv64gc-unknown-linux-gnu"]'), matrix.platform.target) with: targets: ${{ matrix.platform.target }} + - name: Install uv + uses: astral-sh/setup-uv@v7 + with: + # No need to take cache size for maturin in the release pipeline + enable-cache: "false" - name: Build wheel env: # Make psm compile, see https://github.com/rust-lang/stacker/issues/79 CFLAGS_s390x_unknown_linux_gnu: "-march=z10" run: | - sudo python3 -m pip install -U --pre maturin - maturin build --release -b bin -o dist \ + uvx maturin build --release -b bin -o dist \ --target ${{ matrix.platform.target }} \ --compatibility ${{ matrix.platform.compatibility }} \ --features password-storage From 59571c0f3f6ee7a82db9933fee952a749758b337 Mon Sep 17 00:00:00 2001 From: konstin Date: Thu, 8 Jan 2026 11:51:56 +0100 Subject: [PATCH 2/2] Pin maturin==1.10.1 for cross builds for now --- .github/workflows/release.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 6393a51a5..0eb20ad63 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -204,7 +204,9 @@ jobs: # Make psm compile, see https://github.com/rust-lang/stacker/issues/79 CFLAGS_s390x_unknown_linux_gnu: "-march=z10" run: | - uvx maturin build --release -b bin -o dist \ + # TODO: Avoid pinning an explicit version here. This specific version avoid a regression in a later version + # See https://github.com/pyo3/maturin/pull/2922 + uvx maturin==1.10.1 build --release -b bin -o dist \ --target ${{ matrix.platform.target }} \ --compatibility ${{ matrix.platform.compatibility }} \ --features password-storage