diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 16498107a..677c340a8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -36,7 +36,8 @@ jobs: GH_TOKEN: ${{ github.token }} run: | set -euo pipefail - CODEX_VERSION=0.40.0 + # Use a rust-release version that includes all native binaries. + CODEX_VERSION=0.74.0-alpha.3 OUTPUT_DIR="${RUNNER_TEMP}" python3 ./scripts/stage_npm_packages.py \ --release-version "$CODEX_VERSION" \ diff --git a/.github/workflows/rust-ci.yml b/.github/workflows/rust-ci.yml index 1103ad40e..1af0bf2f4 100644 --- a/.github/workflows/rust-ci.yml +++ b/.github/workflows/rust-ci.yml @@ -28,9 +28,11 @@ jobs: if [[ "${{ github.event_name }}" == "pull_request" ]]; then BASE_SHA='${{ github.event.pull_request.base.sha }}' + HEAD_SHA='${{ github.event.pull_request.head.sha }}' echo "Base SHA: $BASE_SHA" - # List files changed between base and current HEAD (merge-base aware) - mapfile -t files < <(git diff --name-only --no-renames "$BASE_SHA"...HEAD) + echo "Head SHA: $HEAD_SHA" + # List files changed between base and PR head + mapfile -t files < <(git diff --name-only --no-renames "$BASE_SHA" "$HEAD_SHA") else # On push / manual runs, default to running everything files=("codex-rs/force" ".github/force") diff --git a/scripts/stage_npm_packages.py b/scripts/stage_npm_packages.py index 01bc162c7..f87a75815 100755 --- a/scripts/stage_npm_packages.py +++ b/scripts/stage_npm_packages.py @@ -25,6 +25,7 @@ if _SPEC is None or _SPEC.loader is None: _BUILD_MODULE = importlib.util.module_from_spec(_SPEC) _SPEC.loader.exec_module(_BUILD_MODULE) PACKAGE_NATIVE_COMPONENTS = getattr(_BUILD_MODULE, "PACKAGE_NATIVE_COMPONENTS", {}) +WINDOWS_ONLY_COMPONENTS = getattr(_BUILD_MODULE, "WINDOWS_ONLY_COMPONENTS", {}) def parse_args() -> argparse.Namespace: @@ -63,6 +64,7 @@ def collect_native_components(packages: list[str]) -> set[str]: components: set[str] = set() for package in packages: components.update(PACKAGE_NATIVE_COMPONENTS.get(package, [])) + components.update(WINDOWS_ONLY_COMPONENTS.get(package, [])) return components