Skip to content

claude-codes 2.1.232: wrap three new wire fields from CLI 2.1.232 #442

claude-codes 2.1.232: wrap three new wire fields from CLI 2.1.232

claude-codes 2.1.232: wrap three new wire fields from CLI 2.1.232 #442

name: Feature Matrix
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
env:
CARGO_TERM_COLOR: always
jobs:
test-claude-codes-features:
name: "claude-codes: ${{ matrix.features.name }}"
runs-on: ubuntu-latest
strategy:
matrix:
features:
- name: "types-only"
args: "-p claude-codes --no-default-features --features types"
- name: "sync-client"
args: "-p claude-codes --no-default-features --features sync-client"
- name: "async-client"
args: "-p claude-codes --no-default-features --features async-client"
- name: "sync-and-async"
args: "-p claude-codes --no-default-features --features sync-client,async-client"
- name: "auth"
args: "-p claude-codes --no-default-features --features auth"
- name: "all-features"
args: "-p claude-codes --features auth"
steps:
- uses: actions/checkout@v4
- name: Setup Rust
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: stable
components: rustfmt, clippy
- name: Build with ${{ matrix.features.name }}
run: cargo build ${{ matrix.features.args }}
- name: Test with ${{ matrix.features.name }}
run: cargo test ${{ matrix.features.args }}
- name: Clippy with ${{ matrix.features.name }}
run: cargo clippy ${{ matrix.features.args }} -- -D warnings
test-codex-codes-features:
name: "codex-codes: ${{ matrix.features.name }}"
runs-on: ubuntu-latest
strategy:
matrix:
features:
- name: "types-only"
args: "-p codex-codes --no-default-features --features types"
- name: "sync-client"
args: "-p codex-codes --no-default-features --features sync-client"
- name: "async-client"
args: "-p codex-codes --no-default-features --features async-client"
- name: "all-features"
args: "-p codex-codes"
steps:
- uses: actions/checkout@v4
- name: Setup Rust
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: stable
components: rustfmt, clippy
- name: Build with ${{ matrix.features.name }}
run: cargo build ${{ matrix.features.args }}
- name: Test with ${{ matrix.features.name }}
run: cargo test ${{ matrix.features.args }}
- name: Clippy with ${{ matrix.features.name }}
run: cargo clippy ${{ matrix.features.args }} -- -D warnings
test-opencode-codes-features:
name: "opencode-codes: ${{ matrix.features.name }}"
runs-on: ubuntu-latest
strategy:
matrix:
features:
- name: "types-only"
args: "-p opencode-codes --no-default-features --features types"
- name: "async-client"
args: "-p opencode-codes --no-default-features --features async-client"
- name: "server"
args: "-p opencode-codes --no-default-features --features server"
- name: "all-features"
args: "-p opencode-codes"
steps:
- uses: actions/checkout@v4
- name: Setup Rust
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: stable
components: rustfmt, clippy
- name: Build with ${{ matrix.features.name }}
run: cargo build ${{ matrix.features.args }}
- name: Test with ${{ matrix.features.name }}
run: cargo test ${{ matrix.features.args }}
- name: Clippy with ${{ matrix.features.name }}
run: cargo clippy ${{ matrix.features.args }} -- -D warnings
test-muse-codes-features:
name: "muse-codes: ${{ matrix.features.name }}"
runs-on: ubuntu-latest
strategy:
matrix:
features:
- name: "types-only"
args: "-p muse-codes --no-default-features --features types"
- name: "async-client"
args: "-p muse-codes --no-default-features --features async-client"
- name: "all-features"
args: "-p muse-codes"
steps:
- uses: actions/checkout@v4
- name: Setup Rust
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: stable
components: rustfmt, clippy
- name: Build with ${{ matrix.features.name }}
run: cargo build ${{ matrix.features.args }}
- name: Test with ${{ matrix.features.name }}
run: cargo test ${{ matrix.features.args }}
- name: Clippy with ${{ matrix.features.name }}
run: cargo clippy ${{ matrix.features.args }} -- -D warnings
wasm-compatibility:
name: "WASM: ${{ matrix.crate.name }}"
runs-on: ubuntu-latest
strategy:
matrix:
crate:
- name: "claude-codes"
args: "-p claude-codes --no-default-features --features types"
- name: "codex-codes"
args: "-p codex-codes --no-default-features --features types"
- name: "opencode-codes"
args: "-p opencode-codes --no-default-features --features types"
- name: "muse-codes"
args: "-p muse-codes --no-default-features --features types"
steps:
- uses: actions/checkout@v4
- name: Setup Rust with WASM target
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: stable
target: wasm32-unknown-unknown
- name: Build for WASM
run: cargo build --target wasm32-unknown-unknown ${{ matrix.crate.args }}
- name: Check WASM compatibility
run: cargo check --target wasm32-unknown-unknown ${{ matrix.crate.args }}