From 4aafd4dcc69300b9ed70c9612013050752364327 Mon Sep 17 00:00:00 2001 From: Ahmed TAHRI Date: Mon, 20 Jan 2025 13:30:43 +0100 Subject: [PATCH 01/14] :wrench: fix deprecation warnings for upload/download artifacts --- .github/workflows/CI.yml | 63 +++++++++++++++++++++++++--------------- 1 file changed, 40 insertions(+), 23 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 6a09f2da..f666505b 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -142,7 +142,7 @@ jobs: strategy: fail-fast: false matrix: - target: [ x86_64, s390x, aarch64, armv7l, ppc64le, ppc64 ] + target: [ x86_64, s390x, aarch64, armv7l, ppc64le, ppc64, x86 ] python_version: [ '3.10', 'pypy-3.7', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10', '3.13t' ] manylinux: [ 'manylinux2014', 'musllinux_1_1' ] exclude: @@ -152,6 +152,12 @@ jobs: target: ppc64 - manylinux: musllinux_1_1 target: ppc64le + - manylinux: musllinux_1_1 + target: x86 + - manylinux: musllinux_1_1 + target: x86 + - manylinux: musllinux_1_1 + target: x86 steps: - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac @@ -164,7 +170,7 @@ jobs: with: python-version: 3.13t - name: Build wheels (no workarounds) - if: matrix.target == 'x86_64' + if: matrix.target == 'x86_64' || matrix.target == 'x86' uses: PyO3/maturin-action@v1 env: UNSAFE_PYO3_SKIP_VERSION_CHECK: 1 @@ -183,7 +189,11 @@ jobs: sudo apt-get install -y clang || echo "no apt support" sudo apt-get install -y linux-headers-generic || echo "no apt support" sudo apt-get install -y gcc-multilib wget || echo "no apt support" - sudo wget https://git.alpinelinux.org/aports/plain/main/bsd-compat-headers/queue.h -O /usr/local/musl/bin/../x86_64-unknown-linux-musl/include/sys/queue.h || echo "compat fail" + sudo wget https://git.alpinelinux.org/aports/plain/main/bsd-compat-headers/queue.h -O /usr/local/musl/bin/../x86_64-unknown-linux-musl/include/sys/queue.h || echo "compat x64 fail" + sudo wget https://git.alpinelinux.org/aports/plain/main/bsd-compat-headers/queue.h -O /usr/local/musl/bin/../x86-unknown-linux-musl/include/sys/queue.h || echo "compat x86 fail" + sudo yum -y install http://mirror.centos.org/centos/7/extras/x86_64/Packages/centos-release-scl-rh-2-3.el7.centos.noarch.rpm + sudo yum -y install http://mirror.centos.org/centos/7/extras/x86_64/Packages/centos-release-scl-2-3.el7.centos.noarch.rpm + sudo yum -y install http://mirror.centos.org/centos/7/sclo/x86_64/rh/Packages/l/llvm-toolset-7-clang-4.0.1-1.el7.x86_64.rpm yum install -y llvm-toolset-7-clang || echo "not yum based" source /opt/rh/llvm-toolset-7/enable || echo "not yum based" @@ -347,10 +357,10 @@ jobs: export BINDGEN_EXTRA_CLANG_ARGS="--sysroot=/usr/local/musl/armv7-unknown-linux-musleabihf" - name: Upload wheels - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 with: - name: wheels - path: dist + name: wheels-linux-${{ matrix.target }}-${{ matrix.manylinux }}-${{ matrix.python_version }} + path: dist/*.whl windows: needs: @@ -422,10 +432,10 @@ jobs: args: --release --out dist sccache: 'true' - name: Upload wheels - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 with: - name: wheels - path: dist + name: wheels-windows-${{ matrix.target }}-${{ matrix.python_version }} + path: dist/*.whl macos: needs: @@ -457,10 +467,10 @@ jobs: args: --release --out dist --interpreter ${{ matrix.python_version }} sccache: 'true' - name: Upload wheels - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 with: - name: wheels - path: dist + name: wheels-macos-${{ matrix.target }}-${{ matrix.python_version }} + path: dist/*.whl sdist: needs: @@ -476,25 +486,25 @@ jobs: command: sdist args: --out dist - name: Upload sdist - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 with: - name: wheels - path: dist + name: wheels-sdist + path: dist/*.tar.gz checksum: name: compute hashes runs-on: ubuntu-22.04 needs: [windows, macos, linux, sdist] - if: "startsWith(github.ref, 'refs/tags/')" outputs: hashes: ${{ steps.compute.outputs.hashes }} steps: - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0 - name: Download distributions - uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a # v3.0.2 + uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7 with: - name: wheels + pattern: wheels-* path: dist + merge-multiple: true - name: Collected dists run: | tree dist @@ -525,11 +535,18 @@ jobs: permissions: id-token: write steps: - - uses: actions/download-artifact@v3 + - name: Download distributions + uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7 with: - name: wheels + pattern: wheels-* + path: dist + merge-multiple: true + - name: "Upload dists to GitHub Release" + env: + GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" + run: | + gh release upload ${{ github.ref_name }} dist/* --repo ${{ github.repository }} - name: Publish to PyPI - uses: PyO3/maturin-action@v1 + uses: "pypa/gh-action-pypi-publish@67339c736fd9354cd4f8cb0b744f2b82a74b5c70" # v1.12.3 with: - command: upload - args: --non-interactive --skip-existing * + attestations: true From 8eda3ba03f0a67efb2c449007b0d763daaa83f25 Mon Sep 17 00:00:00 2001 From: Ahmed TAHRI Date: Mon, 20 Jan 2025 14:48:56 +0100 Subject: [PATCH 02/14] :wrench: fix deprecation warnings for upload/download artifacts --- .github/workflows/CI.yml | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index f666505b..2dfd9ebe 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -67,9 +67,9 @@ jobs: if: startsWith(matrix.python_version, 'pypy') run: nox -s test-pypy - name: "Upload artifact" - uses: "actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce" + uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 with: - name: coverage-data + name: coverage-data-${{ matrix.os }}-${{ matrix.python_version }} path: ".coverage.*" if-no-files-found: error @@ -90,9 +90,10 @@ jobs: run: "python -m pip install --upgrade coverage" - name: "Download artifact" - uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a + uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7 with: - name: coverage-data + pattern: coverage-data-* + merge-multiple: true - name: "Combine & check coverage" run: | @@ -142,7 +143,7 @@ jobs: strategy: fail-fast: false matrix: - target: [ x86_64, s390x, aarch64, armv7l, ppc64le, ppc64, x86 ] + target: [ x86_64, s390x, aarch64, armv7l, ppc64le, ppc64 ] python_version: [ '3.10', 'pypy-3.7', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10', '3.13t' ] manylinux: [ 'manylinux2014', 'musllinux_1_1' ] exclude: @@ -152,12 +153,6 @@ jobs: target: ppc64 - manylinux: musllinux_1_1 target: ppc64le - - manylinux: musllinux_1_1 - target: x86 - - manylinux: musllinux_1_1 - target: x86 - - manylinux: musllinux_1_1 - target: x86 steps: - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac @@ -191,9 +186,6 @@ jobs: sudo apt-get install -y gcc-multilib wget || echo "no apt support" sudo wget https://git.alpinelinux.org/aports/plain/main/bsd-compat-headers/queue.h -O /usr/local/musl/bin/../x86_64-unknown-linux-musl/include/sys/queue.h || echo "compat x64 fail" sudo wget https://git.alpinelinux.org/aports/plain/main/bsd-compat-headers/queue.h -O /usr/local/musl/bin/../x86-unknown-linux-musl/include/sys/queue.h || echo "compat x86 fail" - sudo yum -y install http://mirror.centos.org/centos/7/extras/x86_64/Packages/centos-release-scl-rh-2-3.el7.centos.noarch.rpm - sudo yum -y install http://mirror.centos.org/centos/7/extras/x86_64/Packages/centos-release-scl-2-3.el7.centos.noarch.rpm - sudo yum -y install http://mirror.centos.org/centos/7/sclo/x86_64/rh/Packages/l/llvm-toolset-7-clang-4.0.1-1.el7.x86_64.rpm yum install -y llvm-toolset-7-clang || echo "not yum based" source /opt/rh/llvm-toolset-7/enable || echo "not yum based" From dc49726a0317825a6a5b86d19e99c39186ce6f4a Mon Sep 17 00:00:00 2001 From: Ahmed TAHRI Date: Mon, 20 Jan 2025 15:40:50 +0100 Subject: [PATCH 03/14] :wrench: set contents write permission release upload artifacts --- .github/workflows/CI.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 2dfd9ebe..3ac7c4e4 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -526,6 +526,7 @@ jobs: environment: pypi permissions: id-token: write + contents: write steps: - name: Download distributions uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7 From 49336ae010df7ef175bbec6c8f32f01f13f882b1 Mon Sep 17 00:00:00 2001 From: Ahmed TAHRI Date: Mon, 20 Jan 2025 15:49:18 +0100 Subject: [PATCH 04/14] :wrench: add i686 target linux --- .github/workflows/CI.yml | 49 ++++++++++++++++++++++++++++++++++++++-- 1 file changed, 47 insertions(+), 2 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 3ac7c4e4..b03584e6 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -143,7 +143,7 @@ jobs: strategy: fail-fast: false matrix: - target: [ x86_64, s390x, aarch64, armv7l, ppc64le, ppc64 ] + target: [ x86_64, s390x, aarch64, armv7l, ppc64le, ppc64, i686 ] python_version: [ '3.10', 'pypy-3.7', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10', '3.13t' ] manylinux: [ 'manylinux2014', 'musllinux_1_1' ] exclude: @@ -165,7 +165,7 @@ jobs: with: python-version: 3.13t - name: Build wheels (no workarounds) - if: matrix.target == 'x86_64' || matrix.target == 'x86' + if: matrix.target == 'x86_64' uses: PyO3/maturin-action@v1 env: UNSAFE_PYO3_SKIP_VERSION_CHECK: 1 @@ -258,6 +258,28 @@ jobs: sudo apt-get install -y gcc-multilib || echo "no apt support" export BINDGEN_EXTRA_CLANG_ARGS="--sysroot=/usr/s390x-ibm-linux-gnu/s390x-ibm-linux-gnu/sysroot" + - name: Build wheels (i686+manylinux2014 workaround) + if: matrix.target == 'i686' && matrix.manylinux == 'manylinux2014' + uses: PyO3/maturin-action@v1 + env: + UNSAFE_PYO3_SKIP_VERSION_CHECK: 1 + with: + target: ${{ matrix.target }} + args: --release --out dist --interpreter ${{ matrix.python_version }} + sccache: 'true' + manylinux: ${{ matrix.manylinux }} + docker-options: -e UNSAFE_PYO3_SKIP_VERSION_CHECK=1 + before-script-linux: | + sudo apt-get update || echo "no apt support" + sudo apt-get install -y libclang || echo "no apt support" + sudo apt-get install -y libc6 || echo "no apt support" + sudo apt-get install -y libc6-dev || echo "no apt support" + sudo apt-get install -y libclang-dev || echo "no apt support" + sudo apt-get install -y clang || echo "no apt support" + sudo apt-get install -y linux-headers-generic || echo "no apt support" + sudo apt-get install -y gcc-multilib || echo "no apt support" + export BINDGEN_EXTRA_CLANG_ARGS="--sysroot=/usr/i686-unknown-linux-gnu/i686-unknown-linux-gnu/sysroot" + - name: Build wheels (ppc64le+manylinux2014 workaround) if: matrix.target == 'ppc64le' && matrix.manylinux == 'manylinux2014' uses: PyO3/maturin-action@v1 @@ -348,6 +370,29 @@ jobs: sudo wget https://git.alpinelinux.org/aports/plain/main/bsd-compat-headers/queue.h -O /usr/local/musl/armv7-unknown-linux-musleabihf/include/sys/queue.h || echo "compat fail" export BINDGEN_EXTRA_CLANG_ARGS="--sysroot=/usr/local/musl/armv7-unknown-linux-musleabihf" + - name: Build wheels (i686+musl workaround) + if: matrix.target == 'i686' && matrix.manylinux == 'musllinux_1_1' + uses: PyO3/maturin-action@v1 + env: + UNSAFE_PYO3_SKIP_VERSION_CHECK: 1 + with: + target: ${{ matrix.target }} + args: --release --out dist --interpreter ${{ matrix.python_version }} + sccache: 'true' + manylinux: ${{ matrix.manylinux }} + docker-options: -e UNSAFE_PYO3_SKIP_VERSION_CHECK=1 + before-script-linux: | + sudo apt-get update || echo "no apt support" + sudo apt-get install -y libclang || echo "no apt support" + sudo apt-get install -y libc6 || echo "no apt support" + sudo apt-get install -y libc6-dev || echo "no apt support" + sudo apt-get install -y libclang-dev || echo "no apt support" + sudo apt-get install -y clang || echo "no apt support" + sudo apt-get install -y linux-headers-generic || echo "no apt support" + sudo apt-get install -y gcc-multilib wget || echo "no apt support" + sudo wget https://git.alpinelinux.org/aports/plain/main/bsd-compat-headers/queue.h -O /usr/local/musl/i686-unknown-linux-musleabihf/include/sys/queue.h || echo "compat fail" + export BINDGEN_EXTRA_CLANG_ARGS="--sysroot=/usr/local/musl/i686-unknown-linux-musleabihf" + - name: Upload wheels uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 with: From 8f9d69341a9a1f0fc51d51612bbdf57dfbf6f9bb Mon Sep 17 00:00:00 2001 From: Ahmed TAHRI Date: Mon, 20 Jan 2025 16:29:02 +0100 Subject: [PATCH 05/14] :wrench: fix linux i686 musl --- .github/workflows/CI.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index b03584e6..685da46f 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -390,8 +390,8 @@ jobs: sudo apt-get install -y clang || echo "no apt support" sudo apt-get install -y linux-headers-generic || echo "no apt support" sudo apt-get install -y gcc-multilib wget || echo "no apt support" - sudo wget https://git.alpinelinux.org/aports/plain/main/bsd-compat-headers/queue.h -O /usr/local/musl/i686-unknown-linux-musleabihf/include/sys/queue.h || echo "compat fail" - export BINDGEN_EXTRA_CLANG_ARGS="--sysroot=/usr/local/musl/i686-unknown-linux-musleabihf" + sudo wget https://git.alpinelinux.org/aports/plain/main/bsd-compat-headers/queue.h -O /usr/local/musl/i686-unknown-linux-musl/include/sys/queue.h || echo "compat fail" + export BINDGEN_EXTRA_CLANG_ARGS="--sysroot=/usr/local/musl/i686-unknown-linux-musl" - name: Upload wheels uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 From 873647610467eaabc60c9738480ebdbe61e1eae9 Mon Sep 17 00:00:00 2001 From: Ahmed TAHRI Date: Mon, 20 Jan 2025 16:37:11 +0100 Subject: [PATCH 06/14] :wrench: fix linux i686 manylinux --- .github/workflows/CI.yml | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 685da46f..1a8e7985 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -185,7 +185,6 @@ jobs: sudo apt-get install -y linux-headers-generic || echo "no apt support" sudo apt-get install -y gcc-multilib wget || echo "no apt support" sudo wget https://git.alpinelinux.org/aports/plain/main/bsd-compat-headers/queue.h -O /usr/local/musl/bin/../x86_64-unknown-linux-musl/include/sys/queue.h || echo "compat x64 fail" - sudo wget https://git.alpinelinux.org/aports/plain/main/bsd-compat-headers/queue.h -O /usr/local/musl/bin/../x86-unknown-linux-musl/include/sys/queue.h || echo "compat x86 fail" yum install -y llvm-toolset-7-clang || echo "not yum based" source /opt/rh/llvm-toolset-7/enable || echo "not yum based" @@ -270,14 +269,8 @@ jobs: manylinux: ${{ matrix.manylinux }} docker-options: -e UNSAFE_PYO3_SKIP_VERSION_CHECK=1 before-script-linux: | - sudo apt-get update || echo "no apt support" - sudo apt-get install -y libclang || echo "no apt support" - sudo apt-get install -y libc6 || echo "no apt support" - sudo apt-get install -y libc6-dev || echo "no apt support" - sudo apt-get install -y libclang-dev || echo "no apt support" - sudo apt-get install -y clang || echo "no apt support" - sudo apt-get install -y linux-headers-generic || echo "no apt support" - sudo apt-get install -y gcc-multilib || echo "no apt support" + yum install -y llvm-toolset-7-clang || echo "not yum based" + source /opt/rh/llvm-toolset-7/enable || echo "not yum based" export BINDGEN_EXTRA_CLANG_ARGS="--sysroot=/usr/i686-unknown-linux-gnu/i686-unknown-linux-gnu/sysroot" - name: Build wheels (ppc64le+manylinux2014 workaround) From 369d6a476da3b5d1d0bd87ec30127335996d667c Mon Sep 17 00:00:00 2001 From: Ahmed TAHRI Date: Mon, 20 Jan 2025 17:11:00 +0100 Subject: [PATCH 07/14] :arrow_up: upgrade aws-lc-rs to 1.12.1 --- Cargo.lock | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index efbe5361..57a96cc2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -79,25 +79,24 @@ checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] name = "aws-lc-fips-sys" -version = "0.13.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59057b878509d88952425fe694a2806e468612bde2d71943f3cd8034935b5032" +checksum = "f8c7557f6c81ecd3e38582996b31a0f329900586abaae5f092e756686958f22c" dependencies = [ "bindgen 0.69.5", "cc", "cmake", "dunce", "fs_extra", - "libc", "paste", "regex", ] [[package]] name = "aws-lc-rs" -version = "1.12.0" +version = "1.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f409eb70b561706bf8abba8ca9c112729c481595893fd06a2dd9af8ed8441148" +checksum = "1ea835662a0af02443aa1396d39be523bbf8f11ee6fad20329607c480bea48c3" dependencies = [ "aws-lc-fips-sys", "aws-lc-sys", @@ -107,9 +106,9 @@ dependencies = [ [[package]] name = "aws-lc-sys" -version = "0.24.1" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "923ded50f602b3007e5e63e3f094c479d9c8a9b42d7f4034e4afe456aa48bfd2" +checksum = "71b2ddd3ada61a305e1d8bb6c005d1eaa7d14d903681edfc400406d523a9b491" dependencies = [ "bindgen 0.69.5", "cc", @@ -182,9 +181,9 @@ dependencies = [ [[package]] name = "bitflags" -version = "2.7.0" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1be3f42a67d6d345ecd59f675f3f012d6974981560836e938c22b424b85ce1be" +checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36" [[package]] name = "block-buffer" @@ -221,9 +220,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.9" +version = "1.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8293772165d9345bdaaa39b45b2109591e63fe5e6fbc23c6ff930a048aa310b" +checksum = "13208fcbb66eaeffe09b99fffbe1af420f00a7b35aa99ad683dfc1aa76145229" dependencies = [ "jobserver", "libc", @@ -355,9 +354,9 @@ dependencies = [ [[package]] name = "data-encoding" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" +checksum = "0e60eed09d8c01d3cee5b7d30acb059b76614c918fa0f992e0dd6eeb10daad6f" [[package]] name = "der" @@ -1216,9 +1215,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.24" +version = "1.0.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cb6eb87a131f756572d7fb904f6e7b68633f09cca868c5df1c4b8d1a694bbba" +checksum = "f79dfe2d285b0488816f30e700a7438c5a73d816b5b7d3ac72fbc48b0d185e03" [[package]] name = "serde" From e4eaaadc30dff2702f3c1db8d544795d1720e96d Mon Sep 17 00:00:00 2001 From: Ahmed TAHRI Date: Tue, 21 Jan 2025 05:17:27 +0100 Subject: [PATCH 08/14] :wrench: fix i686 linux whl build --- .github/workflows/CI.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 1a8e7985..f2e36bc9 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -269,8 +269,7 @@ jobs: manylinux: ${{ matrix.manylinux }} docker-options: -e UNSAFE_PYO3_SKIP_VERSION_CHECK=1 before-script-linux: | - yum install -y llvm-toolset-7-clang || echo "not yum based" - source /opt/rh/llvm-toolset-7/enable || echo "not yum based" + yum install -y clang || echo "not yum based" export BINDGEN_EXTRA_CLANG_ARGS="--sysroot=/usr/i686-unknown-linux-gnu/i686-unknown-linux-gnu/sysroot" - name: Build wheels (ppc64le+manylinux2014 workaround) From d052e448a09eb7a91551a7004b7e4a582af50955 Mon Sep 17 00:00:00 2001 From: Ahmed TAHRI Date: Tue, 21 Jan 2025 05:17:55 +0100 Subject: [PATCH 09/14] :pencil: write changelog for 1.3.2 --- CHANGELOG.rst | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 739e6374..b8e9a0bd 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,3 +1,12 @@ +1.3.2 (2025-01-20) +==================== + +**Changed** +- Upgraded aws-lc-rs to 1.12.1 + +**Misc** +- x86 (32-bits) wheels are now automatically published to PyPI for both Linux (i686) and Windows (win32). (#45) + 1.3.1 (2025-01-15) ==================== From 3cc8bd900e79d3257563da83bc729794a8270082 Mon Sep 17 00:00:00 2001 From: Ahmed TAHRI Date: Tue, 21 Jan 2025 05:18:47 +0100 Subject: [PATCH 10/14] :bookmark: bump version to 1.3.2 --- Cargo.lock | 2 +- Cargo.toml | 2 +- qh3/__init__.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 57a96cc2..008e821b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -977,7 +977,7 @@ dependencies = [ [[package]] name = "qh3" -version = "1.3.1" +version = "1.3.2" dependencies = [ "aws-lc-rs", "bincode", diff --git a/Cargo.toml b/Cargo.toml index 5a3bc6e6..05172df9 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "qh3" -version = "1.3.1" +version = "1.3.2" edition = "2021" rust-version = "1.75" license = "BSD-3" diff --git a/qh3/__init__.py b/qh3/__init__.py index ed15ee15..24a8ccfa 100644 --- a/qh3/__init__.py +++ b/qh3/__init__.py @@ -13,7 +13,7 @@ from .quic.packet import QuicProtocolVersion from .tls import CipherSuite, SessionTicket -__version__ = "1.3.1" +__version__ = "1.3.2" __all__ = ( "connect", From f6bc1fe7db208c61a77a55f184a72c4362b35ad7 Mon Sep 17 00:00:00 2001 From: Ahmed TAHRI Date: Tue, 21 Jan 2025 06:07:31 +0100 Subject: [PATCH 11/14] :wrench: i686 manylinux build fix --- .github/workflows/CI.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index f2e36bc9..2054054f 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -269,8 +269,7 @@ jobs: manylinux: ${{ matrix.manylinux }} docker-options: -e UNSAFE_PYO3_SKIP_VERSION_CHECK=1 before-script-linux: | - yum install -y clang || echo "not yum based" - export BINDGEN_EXTRA_CLANG_ARGS="--sysroot=/usr/i686-unknown-linux-gnu/i686-unknown-linux-gnu/sysroot" + yum install -y clang clang-devel || echo "not yum based" - name: Build wheels (ppc64le+manylinux2014 workaround) if: matrix.target == 'ppc64le' && matrix.manylinux == 'manylinux2014' From a422766510129d2747e02a2557d3f19b19ba47e3 Mon Sep 17 00:00:00 2001 From: Ahmed TAHRI Date: Tue, 21 Jan 2025 07:08:36 +0100 Subject: [PATCH 12/14] :wrench: i686 manylinux build fix*2 --- .github/workflows/CI.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 2054054f..30f2972b 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -268,8 +268,7 @@ jobs: sccache: 'true' manylinux: ${{ matrix.manylinux }} docker-options: -e UNSAFE_PYO3_SKIP_VERSION_CHECK=1 - before-script-linux: | - yum install -y clang clang-devel || echo "not yum based" + container: messense/manylinux2014-cross:i686 - name: Build wheels (ppc64le+manylinux2014 workaround) if: matrix.target == 'ppc64le' && matrix.manylinux == 'manylinux2014' From 1facde632047e31a2cfd714a78a9455b69b609e2 Mon Sep 17 00:00:00 2001 From: Ahmed TAHRI Date: Tue, 21 Jan 2025 07:42:48 +0100 Subject: [PATCH 13/14] :wrench: i686 manylinux build fix*3 --- .github/workflows/CI.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 30f2972b..e1081649 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -269,6 +269,15 @@ jobs: manylinux: ${{ matrix.manylinux }} docker-options: -e UNSAFE_PYO3_SKIP_VERSION_CHECK=1 container: messense/manylinux2014-cross:i686 + before-script-linux: | + sudo apt-get update || echo "no apt support" + sudo apt-get install -y libclang || echo "no apt support" + sudo apt-get install -y libc6 || echo "no apt support" + sudo apt-get install -y libc6-dev || echo "no apt support" + sudo apt-get install -y libclang-dev || echo "no apt support" + sudo apt-get install -y clang || echo "no apt support" + sudo apt-get install -y linux-headers-generic || echo "no apt support" + sudo apt-get install -y gcc-multilib || echo "no apt support" - name: Build wheels (ppc64le+manylinux2014 workaround) if: matrix.target == 'ppc64le' && matrix.manylinux == 'manylinux2014' From 440f1fb20fc421c5dc41de5622a4aebbf87c91de Mon Sep 17 00:00:00 2001 From: Ahmed TAHRI Date: Tue, 21 Jan 2025 07:44:27 +0100 Subject: [PATCH 14/14] :wrench: i686 manylinux build fix*4 --- .github/workflows/CI.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index e1081649..21c66798 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -278,6 +278,7 @@ jobs: sudo apt-get install -y clang || echo "no apt support" sudo apt-get install -y linux-headers-generic || echo "no apt support" sudo apt-get install -y gcc-multilib || echo "no apt support" + export BINDGEN_EXTRA_CLANG_ARGS="--sysroot=/usr/i686-unknown-linux-gnu/i686-unknown-linux-gnu/sysroot" - name: Build wheels (ppc64le+manylinux2014 workaround) if: matrix.target == 'ppc64le' && matrix.manylinux == 'manylinux2014'