From 7b4c8b0245bbd89b21f5434e265d18c98276037d Mon Sep 17 00:00:00 2001 From: suchintan <3853670+suchintan@users.noreply.github.com> Date: Mon, 24 Aug 2026 00:19:04 +0000 Subject: [PATCH 1/6] =?UTF-8?q?=F0=9F=94=84=20synced=20local=20'.github/wo?= =?UTF-8?q?rkflows/release-pypi.yml'=20with=20remote=20'.github/workflows/?= =?UTF-8?q?release-pypi.yml'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://github.com/Skyvern-AI/rustwright-cloud/pull/230 --- .github/workflows/release-pypi.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/.github/workflows/release-pypi.yml b/.github/workflows/release-pypi.yml index 51e0944..21f6f1f 100644 --- a/.github/workflows/release-pypi.yml +++ b/.github/workflows/release-pypi.yml @@ -86,24 +86,29 @@ jobs: - runner: macos-latest target: aarch64-apple-darwin manylinux: auto + zig_target: "" extra_args: "" - runner: macos-latest target: x86_64-apple-darwin manylinux: auto + zig_target: "" extra_args: "" - runner: ubuntu-latest target: x86_64-unknown-linux-gnu manylinux: "2_17" + zig_target: "" extra_args: "" - runner: ubuntu-latest target: aarch64-unknown-linux-gnu manylinux: "2_17" # ring's pregenerated aarch64 assembly fails under the manylinux # cross-gcc ("ARM assembler must define __ARM_ARCH"); build with zig. + zig_target: aarch64-linux-gnu.2.17 extra_args: "--zig" - runner: windows-latest target: x86_64-pc-windows-msvc manylinux: auto + zig_target: "" extra_args: "" steps: @@ -115,6 +120,15 @@ jobs: with: python-version: "3.12" + - name: Configure aarch64 Linux linker + if: ${{ matrix.platform.zig_target != '' }} + shell: bash + run: | + set -euo pipefail + echo "CARGO_ZIG_TARGET=${{ matrix.platform.zig_target }}" >> "$GITHUB_ENV" + echo "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$GITHUB_WORKSPACE/tools/zig-cc" >> "$GITHUB_ENV" + echo "CC_aarch64_unknown_linux_gnu=$GITHUB_WORKSPACE/tools/zig-cc" >> "$GITHUB_ENV" + - name: Build abi3 wheel uses: PyO3/maturin-action@e83996d129638aa358a18fbd1dfb82f0b0fb5d3b # v1.51.0 with: From c04c407ad5d91762eac0f691fbb12137e371bf1b Mon Sep 17 00:00:00 2001 From: suchintan <3853670+suchintan@users.noreply.github.com> Date: Mon, 24 Aug 2026 00:19:04 +0000 Subject: [PATCH 2/6] =?UTF-8?q?=F0=9F=94=84=20synced=20local=20'.github/wo?= =?UTF-8?q?rkflows/release-npm.yml'=20with=20remote=20'.github/workflows/r?= =?UTF-8?q?elease-npm.yml'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://github.com/Skyvern-AI/rustwright-cloud/pull/230 --- .github/workflows/release-npm.yml | 25 +++---------------------- 1 file changed, 3 insertions(+), 22 deletions(-) diff --git a/.github/workflows/release-npm.yml b/.github/workflows/release-npm.yml index 639ddef..09046ae 100644 --- a/.github/workflows/release-npm.yml +++ b/.github/workflows/release-npm.yml @@ -143,30 +143,11 @@ jobs: shell: bash run: | set -euo pipefail - linker="$RUNNER_TEMP/zig-cc" - cat > "$linker" <<'SH' - #!/usr/bin/env bash - # cc-rs appends clang-style --target=; zig cc only - # understands zig-style triples, so drop incoming target flags in - # favor of the pinned ZIG_TARGET. - args=() - skip=0 - for arg in "$@"; do - if (( skip )); then skip=0; continue; fi - case "$arg" in - --target=*) continue ;; - -target) skip=1; continue ;; - *) args+=("$arg") ;; - esac - done - exec zig cc -target "${ZIG_TARGET}" "${args[@]}" - SH - chmod +x "$linker" target_env="$(printf '%s' "${{ matrix.platform.target }}" | tr '[:lower:]-' '[:upper:]_')" cc_env="$(printf '%s' "${{ matrix.platform.target }}" | tr '-' '_')" - echo "ZIG_TARGET=${{ matrix.platform.zig_target }}" >> "$GITHUB_ENV" - echo "CARGO_TARGET_${target_env}_LINKER=$linker" >> "$GITHUB_ENV" - echo "CC_${cc_env}=$linker" >> "$GITHUB_ENV" + echo "CARGO_ZIG_TARGET=${{ matrix.platform.zig_target }}" >> "$GITHUB_ENV" + echo "CARGO_TARGET_${target_env}_LINKER=$GITHUB_WORKSPACE/tools/zig-cc" >> "$GITHUB_ENV" + echo "CC_${cc_env}=$GITHUB_WORKSPACE/tools/zig-cc" >> "$GITHUB_ENV" - name: Install Node.js build dependencies working-directory: node From e67b3c9ed939800ae4a6c9707aaa866ce02ba758 Mon Sep 17 00:00:00 2001 From: suchintan <3853670+suchintan@users.noreply.github.com> Date: Mon, 24 Aug 2026 00:19:04 +0000 Subject: [PATCH 3/6] =?UTF-8?q?=F0=9F=94=84=20synced=20local=20'.github/wo?= =?UTF-8?q?rkflows/release-nuget.yml'=20with=20remote=20'.github/workflows?= =?UTF-8?q?/release-nuget.yml'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://github.com/Skyvern-AI/rustwright-cloud/pull/230 --- .github/workflows/release-nuget.yml | 25 +++---------------------- 1 file changed, 3 insertions(+), 22 deletions(-) diff --git a/.github/workflows/release-nuget.yml b/.github/workflows/release-nuget.yml index 15261d1..d2ac5eb 100644 --- a/.github/workflows/release-nuget.yml +++ b/.github/workflows/release-nuget.yml @@ -137,30 +137,11 @@ jobs: shell: bash run: | set -euo pipefail - linker="$RUNNER_TEMP/zig-cc" - cat > "$linker" <<'SH' - #!/usr/bin/env bash - # cc-rs appends clang-style --target=; zig cc only - # understands zig-style triples, so drop incoming target flags in - # favor of the pinned ZIG_TARGET. - args=() - skip=0 - for arg in "$@"; do - if (( skip )); then skip=0; continue; fi - case "$arg" in - --target=*) continue ;; - -target) skip=1; continue ;; - *) args+=("$arg") ;; - esac - done - exec zig cc -target "${ZIG_TARGET}" "${args[@]}" - SH - chmod +x "$linker" target_env="$(printf '%s' "$CARGO_BUILD_TARGET" | tr '[:lower:]-' '[:upper:]_')" cc_env="$(printf '%s' "$CARGO_BUILD_TARGET" | tr '-' '_')" - echo "ZIG_TARGET=${{ matrix.platform.zig_target }}" >> "$GITHUB_ENV" - echo "CARGO_TARGET_${target_env}_LINKER=$linker" >> "$GITHUB_ENV" - echo "CC_${cc_env}=$linker" >> "$GITHUB_ENV" + echo "CARGO_ZIG_TARGET=${{ matrix.platform.zig_target }}" >> "$GITHUB_ENV" + echo "CARGO_TARGET_${target_env}_LINKER=$GITHUB_WORKSPACE/tools/zig-cc" >> "$GITHUB_ENV" + echo "CC_${cc_env}=$GITHUB_WORKSPACE/tools/zig-cc" >> "$GITHUB_ENV" - name: Build native library run: cargo build -p rustwright-capi --release --locked From 1722516141e68d3244540564b6be8212bf19fce1 Mon Sep 17 00:00:00 2001 From: suchintan <3853670+suchintan@users.noreply.github.com> Date: Mon, 24 Aug 2026 00:19:04 +0000 Subject: [PATCH 4/6] =?UTF-8?q?=F0=9F=94=84=20synced=20local=20'.github/wo?= =?UTF-8?q?rkflows/release-gem.yml'=20with=20remote=20'.github/workflows/r?= =?UTF-8?q?elease-gem.yml'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://github.com/Skyvern-AI/rustwright-cloud/pull/230 --- .github/workflows/release-gem.yml | 25 +++---------------------- 1 file changed, 3 insertions(+), 22 deletions(-) diff --git a/.github/workflows/release-gem.yml b/.github/workflows/release-gem.yml index 4189067..8612386 100644 --- a/.github/workflows/release-gem.yml +++ b/.github/workflows/release-gem.yml @@ -123,30 +123,11 @@ jobs: shell: bash run: | set -euo pipefail - linker="$RUNNER_TEMP/zig-cc" - cat > "$linker" <<'SH' - #!/usr/bin/env bash - # cc-rs appends clang-style --target=; zig cc only - # understands zig-style triples, so drop incoming target flags in - # favor of the pinned ZIG_TARGET. - args=() - skip=0 - for arg in "$@"; do - if (( skip )); then skip=0; continue; fi - case "$arg" in - --target=*) continue ;; - -target) skip=1; continue ;; - *) args+=("$arg") ;; - esac - done - exec zig cc -target "${ZIG_TARGET}" "${args[@]}" - SH - chmod +x "$linker" target_env="$(printf '%s' "$CARGO_BUILD_TARGET" | tr '[:lower:]-' '[:upper:]_')" cc_env="$(printf '%s' "$CARGO_BUILD_TARGET" | tr '-' '_')" - echo "ZIG_TARGET=${{ matrix.platform.zig_target }}" >> "$GITHUB_ENV" - echo "CARGO_TARGET_${target_env}_LINKER=$linker" >> "$GITHUB_ENV" - echo "CC_${cc_env}=$linker" >> "$GITHUB_ENV" + echo "CARGO_ZIG_TARGET=${{ matrix.platform.zig_target }}" >> "$GITHUB_ENV" + echo "CARGO_TARGET_${target_env}_LINKER=$GITHUB_WORKSPACE/tools/zig-cc" >> "$GITHUB_ENV" + echo "CC_${cc_env}=$GITHUB_WORKSPACE/tools/zig-cc" >> "$GITHUB_ENV" - name: Build native library run: cargo build -p rustwright-capi --release --locked From b45aaed5f295f4f750d45cbd17c903e9de65c2fa Mon Sep 17 00:00:00 2001 From: suchintan <3853670+suchintan@users.noreply.github.com> Date: Mon, 24 Aug 2026 00:19:04 +0000 Subject: [PATCH 5/6] =?UTF-8?q?=F0=9F=94=84=20synced=20local=20'.github/wo?= =?UTF-8?q?rkflows/release-maven.yml'=20with=20remote=20'.github/workflows?= =?UTF-8?q?/release-maven.yml'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://github.com/Skyvern-AI/rustwright-cloud/pull/230 --- .github/workflows/release-maven.yml | 25 +++---------------------- 1 file changed, 3 insertions(+), 22 deletions(-) diff --git a/.github/workflows/release-maven.yml b/.github/workflows/release-maven.yml index 1589f78..97bf4fb 100644 --- a/.github/workflows/release-maven.yml +++ b/.github/workflows/release-maven.yml @@ -137,30 +137,11 @@ jobs: shell: bash run: | set -euo pipefail - linker="$RUNNER_TEMP/zig-cc" - cat > "$linker" <<'SH' - #!/usr/bin/env bash - # cc-rs appends clang-style --target=; zig cc only - # understands zig-style triples, so drop incoming target flags in - # favor of the pinned ZIG_TARGET. - args=() - skip=0 - for arg in "$@"; do - if (( skip )); then skip=0; continue; fi - case "$arg" in - --target=*) continue ;; - -target) skip=1; continue ;; - *) args+=("$arg") ;; - esac - done - exec zig cc -target "${ZIG_TARGET}" "${args[@]}" - SH - chmod +x "$linker" target_env="$(printf '%s' "$CARGO_BUILD_TARGET" | tr '[:lower:]-' '[:upper:]_')" cc_env="$(printf '%s' "$CARGO_BUILD_TARGET" | tr '-' '_')" - echo "ZIG_TARGET=${{ matrix.platform.zig_target }}" >> "$GITHUB_ENV" - echo "CARGO_TARGET_${target_env}_LINKER=$linker" >> "$GITHUB_ENV" - echo "CC_${cc_env}=$linker" >> "$GITHUB_ENV" + echo "CARGO_ZIG_TARGET=${{ matrix.platform.zig_target }}" >> "$GITHUB_ENV" + echo "CARGO_TARGET_${target_env}_LINKER=$GITHUB_WORKSPACE/tools/zig-cc" >> "$GITHUB_ENV" + echo "CC_${cc_env}=$GITHUB_WORKSPACE/tools/zig-cc" >> "$GITHUB_ENV" - name: Build native library run: cargo build -p rustwright-capi --release --locked From cc4d8e5482464d1e3acdeb2baf16228bf21b82aa Mon Sep 17 00:00:00 2001 From: suchintan <3853670+suchintan@users.noreply.github.com> Date: Mon, 24 Aug 2026 00:19:05 +0000 Subject: [PATCH 6/6] =?UTF-8?q?=F0=9F=94=84=20synced=20local=20'.github/wo?= =?UTF-8?q?rkflows/release-mcp-npm.yml'=20with=20remote=20'.github/workflo?= =?UTF-8?q?ws/release-mcp-npm.yml'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://github.com/Skyvern-AI/rustwright-cloud/pull/230 --- .github/workflows/release-mcp-npm.yml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/.github/workflows/release-mcp-npm.yml b/.github/workflows/release-mcp-npm.yml index ca002e4..ad19e08 100644 --- a/.github/workflows/release-mcp-npm.yml +++ b/.github/workflows/release-mcp-npm.yml @@ -80,6 +80,18 @@ jobs: with: version: 0.14.1 + - name: Configure Linux linker + if: ${{ matrix.zig }} + shell: bash + run: | + set -euo pipefail + target_env="$(printf '%s' "${{ matrix.rustTarget }}" | tr '[:lower:]-' '[:upper:]_')" + cc_env="$(printf '%s' "${{ matrix.rustTarget }}" | tr '-' '_')" + zig_target="${{ matrix.zigTarget }}" + echo "CARGO_ZIG_TARGET=$zig_target" >> "$GITHUB_ENV" + echo "CARGO_TARGET_${target_env}_LINKER=$GITHUB_WORKSPACE/tools/zig-cc" >> "$GITHUB_ENV" + echo "CC_${cc_env}=$GITHUB_WORKSPACE/tools/zig-cc" >> "$GITHUB_ENV" + - name: Install cargo-zigbuild if: ${{ matrix.zig }} uses: taiki-e/install-action@2ca9b94c269419b7b0c711c09d0b21c4e1d51145 # v2.83.1 @@ -125,6 +137,13 @@ jobs: publish: name: publish npm packages needs: [metadata, build] + if: >- + ${{ + github.repository == 'Skyvern-AI/rustwright' && + github.ref_type == 'tag' && + startsWith(github.ref_name, 'mcp-npm-v') && + github.event_name == 'push' + }} runs-on: ubuntu-24.04 environment: name: npm