diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e2a1a32..4b4eb3f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -9,6 +9,7 @@ env: CARGO_TERM_COLOR: always jobs: + # Lint is platform-independent — run it once on Linux to avoid duplicate noise. check: runs-on: ubuntu-latest steps: @@ -19,6 +20,19 @@ jobs: run: cargo fmt --all --check - name: Clippy run: cargo clippy --all-targets --all-features -- -D warnings + + # Tests + dogfood on every OS we ship a release binary for (release.yml uses macos-14 + # for aarch64-apple-darwin), so Darwin path/tree-sitter behavior is exercised pre-release. + test: + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, macos-14] + runs-on: ${{ matrix.os }} + steps: + - uses: actions/checkout@v6 + - name: Install toolchain (pinned via rust-toolchain.toml) + run: rustup show - name: Test run: cargo test --all - name: Surface self-check (dogfood) diff --git a/README.md b/README.md index 8274f26..9de35bc 100644 --- a/README.md +++ b/README.md @@ -135,8 +135,9 @@ Or the install script: curl --proto '=https' --tlsv1.2 -fsSL https://raw.githubusercontent.com/Connorrmcd6/surface/main/install.sh | sh ``` -Prebuilt binaries for macOS (Apple Silicon) and Linux (x86_64); build from source elsewhere. Full -options — pre-commit hook, `cargo install`, the architecture matrix — in +Prebuilt binaries for macOS (Apple Silicon) and Linux (x86_64); build from source on other +Unix arches. Windows is **not supported** (the anchor grammar requires forward-slash paths). +Full options — pre-commit hook, `cargo install`, the architecture matrix — in [Install](docs/getting-started/install.md). ## Documentation diff --git a/docs/getting-started/install.md b/docs/getting-started/install.md index 310dae9..37e80e8 100644 --- a/docs/getting-started/install.md +++ b/docs/getting-started/install.md @@ -41,7 +41,19 @@ curl --proto '=https' --tlsv1.2 -fsSL https://raw.githubusercontent.com/Connorrm ``` Prebuilt binaries are published for **macOS (Apple Silicon)** and **Linux (x86_64)**. On Intel -macOS, Windows, or other architectures, build from source. +macOS or other Unix architectures, build from source. + +## Platform support + +| Platform | Status | +| --- | --- | +| macOS (Apple Silicon) | prebuilt binary | +| Linux (x86_64) | prebuilt binary | +| Intel macOS, other Unix arches | build from source | +| Windows | **not supported** | + +Windows is unsupported: anchor `at:` paths are forward-slash only, and the install script +rejects non-Unix systems. Use WSL if you need Surface on a Windows machine. ## From source