diff --git a/.github/workflows/sift_stream_bindings_release.yaml b/.github/workflows/sift_stream_bindings_release.yaml index 78ec29ffb..e06dbbc31 100644 --- a/.github/workflows/sift_stream_bindings_release.yaml +++ b/.github/workflows/sift_stream_bindings_release.yaml @@ -27,7 +27,7 @@ jobs: uses: PyO3/maturin-action@v1 with: target: ${{ matrix.platform.target }} - args: --release --out dist --find-interpreter + args: --release --out dist --interpreter '3.8 3.9 3.10 3.11 3.12 3.13 3.14' sccache: ${{ !startsWith(github.ref, 'refs/tags/sift-stream-bindings/') }} manylinux: auto working-directory: rust/crates/sift_stream_bindings @@ -59,7 +59,7 @@ jobs: uses: PyO3/maturin-action@v1 with: target: ${{ matrix.platform.target }} - args: --release --out dist --find-interpreter + args: --release --out dist --interpreter '3.8 3.9 3.10 3.11 3.12 3.13 3.14' sccache: ${{ !startsWith(github.ref, 'refs/tags/sift-stream-bindings/') }} working-directory: rust/crates/sift_stream_bindings - name: Upload wheels @@ -86,7 +86,7 @@ jobs: uses: PyO3/maturin-action@v1 with: target: ${{ matrix.platform.target }} - args: --release --out dist --find-interpreter + args: --release --out dist --interpreter '3.8 3.9 3.10 3.11 3.12 3.13 3.14' sccache: ${{ !startsWith(github.ref, 'refs/tags/sift-stream-bindings/') }} working-directory: rust/crates/sift_stream_bindings - name: Upload wheels diff --git a/.github/workflows/sift_stream_bindings_release_dry_run.yaml b/.github/workflows/sift_stream_bindings_release_dry_run.yaml new file mode 100644 index 000000000..16f23355d --- /dev/null +++ b/.github/workflows/sift_stream_bindings_release_dry_run.yaml @@ -0,0 +1,93 @@ +name: Sift Stream Bindings Release + +on: + workflow_dispatch: + +permissions: + contents: read + +jobs: + linux: + runs-on: ${{ matrix.platform.runner }} + strategy: + matrix: + platform: + - runner: ubuntu-latest + target: x86_64 + - runner: ubuntu-latest + target: aarch64 + - runner: ubuntu-latest + target: armv7 + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: 3.8 + - name: Build wheels + uses: PyO3/maturin-action@v1 + with: + target: ${{ matrix.platform.target }} + args: --release --out dist --interpreter '3.8 3.9 3.10 3.11 3.12 3.13 3.14' + sccache: ${{ !startsWith(github.ref, 'refs/tags/sift-stream-bindings/') }} + manylinux: auto + working-directory: rust/crates/sift_stream_bindings + env: + # Fix ring crate cross-compilation for aarch64 + CFLAGS_aarch64_unknown_linux_gnu: "-D__ARM_ARCH=8" + + windows: + runs-on: ${{ matrix.platform.runner }} + strategy: + matrix: + platform: + - runner: windows-latest + target: x86 + - runner: windows-latest + target: x64 + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: 3.8 + architecture: ${{ matrix.platform.target }} + - name: Build wheels + uses: PyO3/maturin-action@v1 + with: + target: ${{ matrix.platform.target }} + args: --release --out dist --interpreter '3.8 3.9 3.10 3.11 3.12 3.13 3.14' + sccache: ${{ !startsWith(github.ref, 'refs/tags/sift-stream-bindings/') }} + working-directory: rust/crates/sift_stream_bindings + + macos: + runs-on: ${{ matrix.platform.runner }} + strategy: + matrix: + platform: + - runner: macos-13 + target: x86_64 + - runner: macos-14 + target: aarch64 + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: 3.8 + - name: Build wheels + uses: PyO3/maturin-action@v1 + with: + target: ${{ matrix.platform.target }} + args: --release --out dist --interpreter '3.8 3.9 3.10 3.11 3.12 3.13 3.14' + sccache: ${{ !startsWith(github.ref, 'refs/tags/sift-stream-bindings/') }} + working-directory: rust/crates/sift_stream_bindings + + sdist: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Build sdist + uses: PyO3/maturin-action@v1 + with: + command: sdist + args: --out dist + working-directory: rust/crates/sift_stream_bindings + diff --git a/python/pyproject.toml b/python/pyproject.toml index d3c4012b7..6113a288d 100644 --- a/python/pyproject.toml +++ b/python/pyproject.toml @@ -16,6 +16,8 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", ] maintainers = [ { name = "Sift Software Engineers", email = "engineering@siftstack.com" },