chore: add missing license and rust-version to kodo_playground #172
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| env: | |
| CARGO_TERM_COLOR: always | |
| RUSTFLAGS: "-D warnings" | |
| jobs: | |
| fmt: | |
| name: Format | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: rustfmt | |
| - run: cargo fmt --all -- --check | |
| clippy: | |
| name: Clippy | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: clippy | |
| - name: Install Z3 | |
| run: sudo apt-get update && sudo apt-get install -y libz3-dev | |
| - uses: Swatinem/rust-cache@v2 | |
| - run: cargo clippy --workspace -- -D warnings | |
| test: | |
| name: Test (${{ matrix.os }}, contracts=${{ matrix.contracts }}) | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest, macos-latest] | |
| contracts: [runtime] | |
| include: | |
| - os: ubuntu-latest | |
| contracts: static | |
| - os: ubuntu-latest | |
| contracts: none | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - name: Install Z3 (Ubuntu) | |
| if: runner.os == 'Linux' | |
| run: sudo apt-get update && sudo apt-get install -y libz3-dev | |
| - name: Install Z3 (macOS) | |
| if: runner.os == 'macOS' | |
| run: brew install z3 | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| key: ${{ matrix.os }}-${{ matrix.contracts }} | |
| - run: cargo build --workspace | |
| - run: cargo test --workspace | |
| - name: Run UI tests (kotest, contracts=${{ matrix.contracts }}) | |
| run: cargo run -p kotest -- tests/ui/ --contracts ${{ matrix.contracts }} | |
| msrv: | |
| name: MSRV (1.91) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@master | |
| with: | |
| toolchain: "1.91" | |
| - name: Install Z3 | |
| run: sudo apt-get update && sudo apt-get install -y libz3-dev | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| key: msrv | |
| - run: cargo check --workspace | |
| doc: | |
| name: Documentation | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - name: Install Z3 | |
| run: sudo apt-get update && sudo apt-get install -y libz3-dev | |
| - uses: Swatinem/rust-cache@v2 | |
| - run: cargo doc --workspace --no-deps | |
| env: | |
| RUSTDOCFLAGS: "-D warnings" | |
| deny: | |
| name: Cargo Deny | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: EmbarkStudios/cargo-deny-action@v2 | |
| coverage: | |
| name: Coverage | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: llvm-tools-preview | |
| - name: Install Z3 | |
| run: sudo apt-get update && sudo apt-get install -y libz3-dev | |
| - name: Install cargo-llvm-cov | |
| uses: taiki-e/install-action@cargo-llvm-cov | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| key: coverage | |
| - name: Generate coverage report | |
| run: cargo llvm-cov --workspace --exclude kodoc --lcov --output-path lcov.info | |
| - name: Coverage summary | |
| run: cargo llvm-cov --workspace --exclude kodoc --summary-only | |
| bench: | |
| name: Benchmarks Compile | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - name: Install Z3 | |
| run: sudo apt-get update && sudo apt-get install -y libz3-dev | |
| - uses: Swatinem/rust-cache@v2 | |
| - run: cargo bench --no-run | |
| fuzz: | |
| name: Fuzz (lexer + parser) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@nightly | |
| - name: Install Z3 | |
| run: sudo apt-get update && sudo apt-get install -y libz3-dev | |
| - name: Install cargo-fuzz | |
| run: cargo install cargo-fuzz | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| key: fuzz | |
| - name: Fuzz lexer (60s) | |
| run: cargo +nightly fuzz run fuzz_lexer -- -max_total_time=60 | |
| - name: Fuzz parser (60s) | |
| run: cargo +nightly fuzz run fuzz_parser -- -max_total_time=60 |