name: termwiz on: pull_request: branches: - main paths: - "termwiz/**" - "bidi/**" - "wezterm-dynamic/**" - "color-types/**" - "filedescriptor/**" - "vtparse/**" - ".github/workflows/termwiz.yml" push: branches: - main paths: - "termwiz/**" - "bidi/**" - "wezterm-dynamic/**" - "color-types/**" - "filedescriptor/**" - "vtparse/**" - ".github/workflows/termwiz.yml" jobs: build-termwiz-all-features: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 - name: "Install Rust" uses: dtolnay/rust-toolchain@stable - name: "Cache cargo" uses: Swatinem/rust-cache@v2 with: workspaces: | termwiz key: "termwiz-${{ runner.os }}" - name: "Install cargo-nextest from Cargo" uses: baptiste0928/cargo-install@v2 with: crate: "cargo-nextest" - name: Build run: | source $HOME/.cargo/env cargo build -p termwiz --all-features cargo nextest run --no-fail-fast --package termwiz --all-features # Disabled because cargo-fuzz doesn't build with nightly or stable rust right now # fuzz-termwiz: # runs-on: ubuntu-latest # steps: # - name: Checkout # uses: actions/checkout@v3 # - name: "Install Stable Rust" # uses: dtolnay/rust-toolchain@stable # - name: "Cache cargo" # uses: Swatinem/rust-cache@v2 # with: # workspaces: | # termwiz # key: "termwiz-fuzz-${{ runner.os }}" # - name: "Install cargo-fuzz from Cargo" # uses: baptiste0928/cargo-install@v2 # with: # crate: "cargo-fuzz" # - name: Fuzz # run: | # source $HOME/.cargo/env # cd termwiz/fuzz # RUST_BACKTRACE=full cargo fuzz run escape_parse -- -max_total_time=60