name: CI on: push: branches: [main] pull_request: branches: [main] env: RUSTFLAGS: "-Dwarnings" jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Ensure latest Rust stable run: | rustup update stable rustup default stable - name: Run tests run: cargo test --verbose - name: Run Clippy run: cargo clippy --all-targets --all-features fuzz_parser: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Update rust toolchain to nightly run: | rustup update nightly rustup default nightly - name: Install cargo fuzz run: cargo install cargo-fuzz - name: Build with nightly run: cargo build --verbose - name: Fuzzy test the parser run: | cd lib/xixanta cargo +nightly fuzz run fuzz_target_parser -- -max_total_time=180 fuzz_assembler: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Update rust toolchain to nightly run: | rustup update nightly rustup default nightly - name: Install cargo fuzz run: cargo install cargo-fuzz - name: Build with nightly run: cargo build --verbose - name: Fuzzy test the assembler run: | cd lib/xixanta cargo +nightly fuzz run fuzz_target_assembler -- -max_total_time=180 fuzz_header: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Update rust toolchain to nightly run: | rustup update nightly rustup default nightly - name: Install cargo fuzz run: cargo install cargo-fuzz - name: Build with nightly run: cargo build --verbose - name: Fuzzy test the header parser run: | cd lib/header cargo +nightly fuzz run fuzz_target_header -- -max_total_time=180