update deps #41
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: | |
| workflow_dispatch: | |
| permissions: {} | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| env: | |
| CARGO_TERM_COLOR: always | |
| CARGO_INCREMENTAL: "0" | |
| RUST_BACKTRACE: "1" | |
| YRX_REGENERATE_MODULES_RS: "false" | |
| jobs: | |
| quality: | |
| runs-on: ubuntu-24.04 | |
| timeout-minutes: 90 | |
| permissions: | |
| contents: read | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - name: Reject local path dependencies | |
| run: | | |
| if grep -nE '^[[:space:]]*[^#].*path[[:space:]]*=[[:space:]]*"\.\.' Cargo.toml; then | |
| echo "::error file=Cargo.toml::local path dependency committed" | |
| exit 1 | |
| fi | |
| - name: Install Rust | |
| run: rustup toolchain install stable --profile minimal --component rustfmt,clippy | |
| - run: rustup run stable cargo fmt --all --check | |
| - run: rustup run stable cargo clippy --locked --all-targets -- -D warnings | |
| - run: git diff --exit-code Cargo.lock | |
| msrv: | |
| runs-on: ubuntu-24.04 | |
| timeout-minutes: 90 | |
| permissions: | |
| contents: read | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - run: rustup toolchain install 1.96.0 --profile minimal | |
| - run: rustup run 1.96.0 cargo check --locked | |
| tool-integration: | |
| runs-on: ubuntu-24.04 | |
| timeout-minutes: 90 | |
| permissions: | |
| contents: read | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - name: Install Rust | |
| run: rustup toolchain install stable --profile minimal | |
| - name: Install integration toolchains | |
| run: | | |
| npm install --global pnpm@11.21.0 @microsoft/rush@5.178.1 bun@1.3.14 | |
| pipx install pdm==2.26.9 | |
| pipx install uv==0.12.3 | |
| - name: Verify tool inventory | |
| run: | | |
| for tool in go npx pnpx rush rushx bunx pip3 uvx pdm; do | |
| command -v "$tool" | |
| done | |
| - name: Run hermetic command integrations | |
| env: | |
| HOOD_REQUIRE_TOOL_INTEGRATION: all | |
| run: cargo test --locked --release --test tool_integration -- --test-threads=1 | |
| build: | |
| uses: ./.github/workflows/build.yml | |
| permissions: | |
| contents: read | |
| with: | |
| profile: release |