diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml index 19f25a3c..46b2e577 100644 --- a/.github/workflows/workflow.yml +++ b/.github/workflows/workflow.yml @@ -85,6 +85,50 @@ jobs: - name: Build | Check run: cargo check --workspace --locked + # Ensure that the project could be successfully compiled with no features enabled + cargo_check_no_features: + name: Compile with no features enabled + needs: cargo_check + runs-on: ubuntu-latest + steps: + - name: Setup | Checkout + uses: actions/checkout@v2.4.0 + + - name: Setup | Cache + uses: Swatinem/rust-cache@v1 + + - name: Setup | Rust + uses: actions-rs/toolchain@v1.0.7 + with: + toolchain: stable + profile: minimal + override: true + + - name: Build | Check + run: cargo check --workspace --locked --no-default-features + + # Ensure that the project could be successfully compiled with all features enabled + cargo_check_all_features: + name: Compile with all features enabled + needs: cargo_check + runs-on: ubuntu-latest + steps: + - name: Setup | Checkout + uses: actions/checkout@v2.4.0 + + - name: Setup | Cache + uses: Swatinem/rust-cache@v1 + + - name: Setup | Rust + uses: actions-rs/toolchain@v1.0.7 + with: + toolchain: stable + profile: minimal + override: true + + - name: Build | Check + run: cargo check --workspace --locked --all-features + # Run tests on Linux, macOS, and Windows # On both Rust stable and Rust nightly test: