diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 8a1b05b..f56fcc0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -15,10 +15,10 @@ jobs: build: runs-on: ubuntu-latest env: - RUSTFLAGS: "--cfg async_executor_impl=\"async-std\" --cfg async_channel_impl=\"async-std\"" - RUST_LOG: info + RUSTFLAGS: '--cfg async_executor_impl="async-std" --cfg async_channel_impl="async-std"' + RUST_LOG: info steps: - - uses: styfle/cancel-workflow-action@0.12.0 + - uses: styfle/cancel-workflow-action@0.12.1 name: Cancel Outdated Builds with: all_but_latest: true @@ -27,59 +27,25 @@ jobs: - uses: actions/checkout@v4 name: Checkout Repository - - name: Install Protoc - uses: arduino/setup-protoc@v2 - - - name: Install capnproto - uses: ./.github/actions/install-capnp - - - uses: dtolnay/rust-toolchain@stable - - - name: Configure Git - run: | - git config --global url."https://ancient123:${{ secrets.ORG_GITHUB_PAT }}@github.com".insteadOf git://github.com - git config --global url."https://ancient123:${{ secrets.ORG_GITHUB_PAT }}@github.com".insteadOf ssh://git@github.com - - uses: Swatinem/rust-cache@v2 name: Enable Rust Caching + - name: Build + run: | + cargo build --release + - name: Format Check run: cargo fmt -- --check - # Run Clippy on all targets. The lint workflow doesn't run Clippy on tests, because the tests - # don't compile with all combinations of features. - - uses: actions-rs/clippy-check@v1 - name: Clippy - with: - token: ${{ github.token }} - args: --workspace --all-features --all-targets -- -D warnings - - # TODO: This should not be the basis of a build failure. Move to a different job - # - name: Audit - # run: cargo audit --ignore RUSTSEC-2023-0018 --ignore RUSTSEC-2023-0052 --ignore RUSTSEC-2023-0065 - - - name: Build - # Build in release without `testing` feature, this should work without `hotshot_example` config. - run: | - cargo build --workspace --release + - name: Clippy + run: cargo clippy --workspace --all-features --all-targets -- -D warnings - name: Test - # Build test binary with `testing` feature, which requires `hotshot_example` config run: | - export RUSTFLAGS="$RUSTFLAGS --cfg hotshot_example" cargo test --workspace --release --all-features --no-run cargo test --workspace --release --all-features --verbose -- --test-threads 2 timeout-minutes: 60 - name: Generate Documentation run: | - cargo doc --no-deps --lib --release - echo '' > target/doc/index.html - - - name: Deploy Documentation - uses: peaceiris/actions-gh-pages@v3 - if: ${{ github.ref == 'refs/heads/main' }} - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./target/doc - cname: tide-disco.docs.espressosys.com + cargo doc --no-deps --lib --release --all-features