Skip to content

fix(generator): all 54 specs compile (gitea Swagger 2.0 skipped) #49

fix(generator): all 54 specs compile (gitea Swagger 2.0 skipped)

fix(generator): all 54 specs compile (gitea Swagger 2.0 skipped) #49

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
env:
CARGO_TERM_COLOR: always
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- run: cargo test --all-features
clippy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- uses: Swatinem/rust-cache@v2
- run: cargo clippy --all-features -- -D warnings
fmt:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt
- run: cargo fmt --check
doc:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- run: cargo doc --no-deps --all-features
env:
RUSTDOCFLAGS: -D warnings
# Regression guard: generate clients for a curated list of real-world specs
# and `cargo check` the result. Catches breakage where a generator change
# still passes unit tests but emits invalid Rust against real-world OAS
# documents. See scripts/spec-compile.sh.
#
# The list is the "gold" subset that currently compiles cleanly. Local
# `scripts/spec-compile.sh` (no args) runs against all of `specs/`; we
# don't gate CI on the full corpus because many of the 50+ specs currently
# surface unfixed generator bugs (tracked in #14).
spec-compile:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- run: |
scripts/spec-compile.sh \
anthropic arcade asana box browserbase cartesia cerebras circleci \
coda coingecko datadog-v2 digitalocean gcore github gitpod \
google-calendar google-drive google-gmail google-tasks google-youtube \
grafana groq imagekit increase launchdarkly letta lithic luma \
meta-llama microsoft-graph modern-treasury openai pagerduty \
perplexity resend retell runway sentry snyk spotify stripe \
supabase telnyx terminal-shop together twilio val-town vercel writer