deps(deps): bump bytes in the cargo group across 1 directory (#205) #434
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: [master] | |
| paths-ignore: | |
| - '*.md' | |
| - 'docs/**' | |
| - 'examples/**/*.md' | |
| - '.gitignore' | |
| - 'LICENSE*' | |
| - '.devcontainer/**' | |
| pull_request: | |
| branches: [master] | |
| paths-ignore: | |
| - '*.md' | |
| - 'docs/**' | |
| - 'examples/**/*.md' | |
| - '.gitignore' | |
| - 'LICENSE*' | |
| - '.devcontainer/**' | |
| # Automatically cancel in-progress runs on the same branch | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/master' }} | |
| env: | |
| CARGO_TERM_COLOR: always | |
| permissions: | |
| contents: read | |
| jobs: | |
| test-suite: | |
| name: Test Suite | |
| runs-on: ubuntu-latest | |
| # Skip on master pushes since coverage job runs all tests | |
| if: github.event_name == 'pull_request' || github.ref != 'refs/heads/master' | |
| timeout-minutes: 25 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| test-scope: [core, features] | |
| include: | |
| - test-scope: core | |
| test-args: "--lib --tests" | |
| timeout: 12 | |
| skip-on-draft: false | |
| # - test-scope: integration | |
| # test-args: "--test '*'" | |
| # timeout: 15 | |
| # skip-on-draft: true | |
| - test-scope: features | |
| test-args: "--features postgres,mysql,sqlite,database" | |
| timeout: 10 | |
| skip-on-draft: true | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v6 | |
| - name: Setup Rust | |
| uses: ./.github/actions/setup-rust | |
| with: | |
| cache-prefix: rust-ci | |
| - name: Run ${{ matrix.test-scope }} tests | |
| if: matrix.skip-on-draft == false || github.event.pull_request.draft == false | |
| uses: ./.github/actions/run-tests | |
| with: | |
| test-type: ${{ matrix.test-scope }} | |
| timeout: ${{ matrix.timeout }} | |
| quality-checks: | |
| name: Code Quality | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v6 | |
| - name: Setup Rust | |
| uses: ./.github/actions/setup-rust | |
| with: | |
| cache-prefix: rust-ci | |
| - name: Check formatting | |
| run: | | |
| echo "Checking code formatting..." | |
| cargo fmt --all -- --check | |
| echo "Formatting check passed" | |
| - name: Run clippy | |
| run: | | |
| echo "Running clippy analysis..." | |
| cargo clippy --lib --tests --all-features -- -D warnings | |
| echo "Clippy analysis passed" | |
| - name: Check documentation | |
| run: | | |
| echo "Checking documentation..." | |
| cargo doc --no-deps --document-private-items | |
| echo "Documentation check passed" | |
| coverage: | |
| name: Code Coverage | |
| runs-on: ubuntu-latest | |
| if: github.event_name == 'push' && github.ref == 'refs/heads/master' | |
| timeout-minutes: 20 | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v6 | |
| - name: Setup Rust | |
| uses: ./.github/actions/setup-rust | |
| with: | |
| cache-prefix: rust-ci | |
| - name: Install cargo-tarpaulin | |
| run: | | |
| echo "Installing cargo-tarpaulin..." | |
| cargo install cargo-tarpaulin --version 0.35.0 --locked | |
| echo "cargo-tarpaulin installed" | |
| - name: Generate coverage | |
| run: | | |
| echo "Generating code coverage..." | |
| cargo tarpaulin --out Lcov --output-dir coverage --timeout 300 --exclude-files target/* tests/* benches/* examples/* src/main.rs | |
| echo "Coverage generated" | |
| continue-on-error: true | |
| - name: Upload coverage (Codecov) | |
| uses: codecov/codecov-action@v5.5.2 | |
| if: always() | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| files: ./coverage/lcov.info | |
| flags: rust | |
| fail_ci_if_error: false |