From aca9c34dfbd38ab264043a87f0d54ed24cb8adeb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=9D=A4=E6=98=AF=E7=BA=B1=E9=9B=BE=E9=85=B1=E5=93=9F?= =?UTF-8?q?=EF=BD=9E?= <49941141+Dragon1573@users.noreply.github.com> Date: Wed, 2 Sep 2026 01:13:15 +0000 Subject: [PATCH] ci(renovate): Unlock auto updates for basic built tools and group updates together (#7835) * ci(workflows): Revert nodejs version to v24.18.1 - Exactly match what was defined in `.tool-versions` * ci(renovate): Prevent 3 build tools from being automatically upgraded - Lock Nodejs, PNPM and Rust version in the repository - Nodejs, PNPM and Rust are infrastructure build tools or package manager for this repo - Human manual-bump is required for consistency and stability - Prevent bumping by Renovate Bot * ci(renovate): Unlock auto updates of 3 build tools - Re-allow Nodejs, PNPM and Rust from being automatically upgrade - Group version bumps together across version lockfiles, GitHub Workflows and Dev Containers Assisted-by: vscode-copilot-chat:gemini-3.7-flash codegraph * chore(deps): Bump 2 build tools to latest version - Bump Nodejs to `v24.20.0` across version lockfiles, GitHub Workflows and Dev Containers - Bump Rust toolchain to `v1.98.0` across version lockfiles, GitHub Workflows and Dev Containers Assisted-by: vscode-copilot-chat:gemini-3.7-flash codegraph --- .devcontainer/devcontainer.json | 4 +- .github/workflows/autobuild.yml | 20 +++---- .github/workflows/cross_check.yaml | 2 +- .github/workflows/dev.yml | 6 +- .github/workflows/frontend-check.yml | 2 +- .github/workflows/release.yml | 24 ++++---- .github/workflows/telegram-notify.yml | 2 +- .github/workflows/updater.yml | 4 +- .tool-versions | 4 +- renovate.json | 82 ++++++++++++++++++++++++--- rust-toolchain.toml | 2 +- 11 files changed, 111 insertions(+), 41 deletions(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index e27345f63..3af74e41b 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -4,11 +4,11 @@ "features": { "ghcr.io/devcontainers/features/node:1": { - "version": "24.18.1", + "version": "24.20.0", "packageManager": "pnpm" }, "ghcr.io/devcontainers/features/rust:1": { - "version": "1.95.0", + "version": "1.98.0", "profile": "default" }, "ghcr.io/devcontainers/features/git:1": {}, diff --git a/.github/workflows/autobuild.yml b/.github/workflows/autobuild.yml index 24b6e9783..d31c01140 100644 --- a/.github/workflows/autobuild.yml +++ b/.github/workflows/autobuild.yml @@ -48,7 +48,7 @@ jobs: - name: Install Node uses: actions/setup-node@v7 with: - node-version: '24.19.0' + node-version: '24.20.0' - name: Install dependencies run: pnpm install --frozen-lockfile @@ -151,7 +151,7 @@ jobs: - name: Install Rust Stable uses: dtolnay/rust-toolchain@master with: - toolchain: '1.95.0' + toolchain: '1.98.0' targets: ${{ matrix.target }} - name: Add Rust Target @@ -182,7 +182,7 @@ jobs: - name: Install Node uses: actions/setup-node@v7 with: - node-version: '24.19.0' + node-version: '24.20.0' cache: 'pnpm' - name: Pnpm Cache @@ -203,7 +203,7 @@ jobs: - name: Add Rust Target run: | - rustup target add ${{ matrix.target }} --toolchain 1.95.0 || rustup target add ${{ matrix.target }} + rustup target add ${{ matrix.target }} --toolchain 1.98.0 || rustup target add ${{ matrix.target }} rustup target list --installed echo "Rust target ${{ matrix.target }} installed." @@ -254,7 +254,7 @@ jobs: - name: Install Rust Stable uses: dtolnay/rust-toolchain@master with: - toolchain: '1.95.0' + toolchain: '1.98.0' targets: ${{ matrix.target }} - name: Add Rust Target @@ -279,7 +279,7 @@ jobs: - name: Install Node uses: actions/setup-node@v7 with: - node-version: '24.19.0' + node-version: '24.20.0' cache: 'pnpm' - name: Pnpm Cache @@ -344,7 +344,7 @@ jobs: - name: Add Rust Target run: | - rustup target add ${{ matrix.target }} --toolchain 1.95.0 || rustup target add ${{ matrix.target }} + rustup target add ${{ matrix.target }} --toolchain 1.98.0 || rustup target add ${{ matrix.target }} rustup target list --installed echo "Rust target ${{ matrix.target }} installed." @@ -423,7 +423,7 @@ jobs: - name: Install Node uses: actions/setup-node@v7 with: - node-version: '24.19.0' + node-version: '24.20.0' cache: 'pnpm' - name: Pnpm Cache @@ -451,7 +451,7 @@ jobs: - name: Add Rust Target run: | - rustup target add ${{ matrix.target }} --toolchain 1.95.0 || rustup target add ${{ matrix.target }} + rustup target add ${{ matrix.target }} --toolchain 1.98.0 || rustup target add ${{ matrix.target }} rustup target list --installed echo "Rust target ${{ matrix.target }} installed." @@ -523,7 +523,7 @@ jobs: - name: Install Node uses: actions/setup-node@v7 with: - node-version: '24.19.0' + node-version: '24.20.0' - uses: pnpm/action-setup@v6.0.10 name: Install pnpm diff --git a/.github/workflows/cross_check.yaml b/.github/workflows/cross_check.yaml index 5db3a5fdb..aa57292d0 100644 --- a/.github/workflows/cross_check.yaml +++ b/.github/workflows/cross_check.yaml @@ -43,7 +43,7 @@ jobs: - name: Install Node uses: actions/setup-node@v7 with: - node-version: '24.19.0' + node-version: '24.20.0' - uses: pnpm/action-setup@v6 name: Install pnpm diff --git a/.github/workflows/dev.yml b/.github/workflows/dev.yml index 244107939..885790b6d 100644 --- a/.github/workflows/dev.yml +++ b/.github/workflows/dev.yml @@ -74,7 +74,7 @@ jobs: - name: Install Rust Stable if: github.event.inputs[matrix.input] == 'true' - uses: dtolnay/rust-toolchain@1.95.0 + uses: dtolnay/rust-toolchain@1.98.0 - name: Rust Cache uses: Swatinem/rust-cache@v2 @@ -103,7 +103,7 @@ jobs: if: github.event.inputs[matrix.input] == 'true' uses: actions/setup-node@v7 with: - node-version: '24.19.0' + node-version: '24.20.0' cache: 'pnpm' - name: Pnpm Cache @@ -129,7 +129,7 @@ jobs: if: github.event.inputs[matrix.input] == 'true' run: | # Ensure cross target is installed for the pinned toolchain; fallback without explicit toolchain if needed - rustup target add ${{ matrix.target }} --toolchain 1.95.0 || rustup target add ${{ matrix.target }} + rustup target add ${{ matrix.target }} --toolchain 1.98.0 || rustup target add ${{ matrix.target }} rustup target list --installed echo "Rust target ${{ matrix.target }} installed." diff --git a/.github/workflows/frontend-check.yml b/.github/workflows/frontend-check.yml index f4efeab32..351d8f693 100644 --- a/.github/workflows/frontend-check.yml +++ b/.github/workflows/frontend-check.yml @@ -51,7 +51,7 @@ jobs: - uses: actions/setup-node@v7 if: steps.check_frontend.outputs.frontend == 'true' with: - node-version: '24.19.0' + node-version: '24.20.0' cache: 'pnpm' - name: Restore pnpm cache diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 49ff0534d..6e2baad89 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -201,7 +201,7 @@ jobs: - name: Install Rust Stable uses: dtolnay/rust-toolchain@master with: - toolchain: '1.95.0' + toolchain: '1.98.0' targets: ${{ matrix.target }} - name: Add Rust Target @@ -227,7 +227,7 @@ jobs: - name: Install Node uses: actions/setup-node@v7 with: - node-version: '24.19.0' + node-version: '24.20.0' - uses: pnpm/action-setup@v6 name: Install pnpm @@ -241,7 +241,7 @@ jobs: - name: Add Rust Target run: | - rustup target add ${{ matrix.target }} --toolchain 1.95.0 || rustup target add ${{ matrix.target }} + rustup target add ${{ matrix.target }} --toolchain 1.98.0 || rustup target add ${{ matrix.target }} rustup target list --installed echo "Rust target ${{ matrix.target }} installed." @@ -308,7 +308,7 @@ jobs: - name: Install Rust Stable uses: dtolnay/rust-toolchain@master with: - toolchain: '1.95.0' + toolchain: '1.98.0' targets: ${{ matrix.target }} - name: Add Rust Target @@ -328,7 +328,7 @@ jobs: - name: Install Node uses: actions/setup-node@v7 with: - node-version: '24.19.0' + node-version: '24.20.0' - name: Install pnpm uses: pnpm/action-setup@v6 @@ -386,7 +386,7 @@ jobs: - name: Add Rust Target run: | - rustup target add ${{ matrix.target }} --toolchain 1.95.0 || rustup target add ${{ matrix.target }} + rustup target add ${{ matrix.target }} --toolchain 1.98.0 || rustup target add ${{ matrix.target }} rustup target list --installed echo "Rust target ${{ matrix.target }} installed." @@ -443,7 +443,7 @@ jobs: - name: Install Rust Stable uses: dtolnay/rust-toolchain@master with: - toolchain: '1.95.0' + toolchain: '1.98.0' targets: ${{ matrix.target }} - name: Add Rust Target @@ -463,7 +463,7 @@ jobs: - name: Install Node uses: actions/setup-node@v7 with: - node-version: '24.19.0' + node-version: '24.20.0' - uses: pnpm/action-setup@v6 name: Install pnpm @@ -484,7 +484,7 @@ jobs: - name: Add Rust Target run: | - rustup target add ${{ matrix.target }} --toolchain 1.95.0 || rustup target add ${{ matrix.target }} + rustup target add ${{ matrix.target }} --toolchain 1.98.0 || rustup target add ${{ matrix.target }} rustup target list --installed echo "Rust target ${{ matrix.target }} installed." @@ -549,7 +549,7 @@ jobs: - name: Install Node uses: actions/setup-node@v7 with: - node-version: '24.19.0' + node-version: '24.20.0' - uses: pnpm/action-setup@v6 name: Install pnpm @@ -575,7 +575,7 @@ jobs: - name: Install Node uses: actions/setup-node@v7 with: - node-version: '24.19.0' + node-version: '24.20.0' - uses: pnpm/action-setup@v6 name: Install pnpm @@ -637,7 +637,7 @@ jobs: - name: Install Node uses: actions/setup-node@v7 with: - node-version: '24.19.0' + node-version: '24.20.0' - uses: pnpm/action-setup@v6 name: Install pnpm diff --git a/.github/workflows/telegram-notify.yml b/.github/workflows/telegram-notify.yml index 0c544541a..cdf3715cd 100644 --- a/.github/workflows/telegram-notify.yml +++ b/.github/workflows/telegram-notify.yml @@ -34,7 +34,7 @@ jobs: - name: Install Node uses: actions/setup-node@v7 with: - node-version: '24.19.0' + node-version: '24.20.0' - uses: pnpm/action-setup@v6 name: Install pnpm diff --git a/.github/workflows/updater.yml b/.github/workflows/updater.yml index 4e5f68cd2..08347c3d4 100644 --- a/.github/workflows/updater.yml +++ b/.github/workflows/updater.yml @@ -15,7 +15,7 @@ jobs: - name: Install Node uses: actions/setup-node@v7 with: - node-version: '24.19.0' + node-version: '24.20.0' - uses: pnpm/action-setup@v6 name: Install pnpm @@ -39,7 +39,7 @@ jobs: - name: Install Node uses: actions/setup-node@v7 with: - node-version: '24.19.0' + node-version: '24.20.0' - uses: pnpm/action-setup@v6 name: Install pnpm diff --git a/.tool-versions b/.tool-versions index 3d7962c6f..459d69924 100644 --- a/.tool-versions +++ b/.tool-versions @@ -1 +1,3 @@ -nodejs 24.18.1 +nodejs 24.20.0 +pnpm 12.0.0 +rust 1.98.0 diff --git a/renovate.json b/renovate.json index eefd68097..618dcc265 100644 --- a/renovate.json +++ b/renovate.json @@ -1,7 +1,16 @@ { + "$schema": "https://docs.renovatebot.com/renovate-schema.json", "extends": ["config:recommended", ":disableDependencyDashboard"], "baseBranchPatterns": ["dev"], - "enabledManagers": ["cargo", "npm", "github-actions"], + "enabledManagers": [ + "asdf", + "cargo", + "custom.regex", + "devcontainer", + "github-actions", + "npm", + "rust-toolchain" + ], "labels": ["dependencies"], "ignorePaths": [ "**/node_modules/**", @@ -25,12 +34,6 @@ "matchPackageNames": ["*"], "semanticCommitType": "chore" }, - { - "description": "Disable node/pnpm version updates", - "matchPackageNames": ["node", "pnpm"], - "matchDepTypes": ["engines", "packageManager"], - "enabled": false - }, { "description": "Group all cargo dependencies into a single PR and bump Cargo.toml ranges", "matchManagers": ["cargo"], @@ -57,6 +60,71 @@ "description": "Prevent project from supply chain attack", "matchDatasources": ["npm"], "minimumReleaseAge": "1 days" + }, + { + "description": "Group Node.js version updates across workflows, devcontainer, tool-versions, and package.json", + "matchPackageNames": [ + "node", + "nodejs", + "ghcr.io/devcontainers/features/node" + ], + "groupName": "Node.js" + }, + { + "description": "Group PNPM version updates across package.json, tool-versions, workflows, and devcontainer", + "matchPackageNames": ["pnpm", "ghcr.io/devcontainers/features/pnpm"], + "groupName": "pnpm" + }, + { + "description": "Group Rust toolchain updates across rust-toolchain.toml, workflows, devcontainer, and tool-versions", + "matchPackageNames": [ + "rust", + "rust-lang/rust", + "ghcr.io/devcontainers/features/rust" + ], + "groupName": "Rust toolchain" + } + ], + "customManagers": [ + { + "customType": "regex", + "description": "Update Node.js in GitHub Workflows", + "fileMatch": ["^\\.github/workflows/.*\\.ya?ml$"], + "matchStrings": [ + "node-version:\\s*['\"]?(?\\d+\\.\\d+\\.\\d+)['\"]?" + ], + "depNameTemplate": "node", + "datasourceTemplate": "node-version" + }, + { + "customType": "regex", + "description": "Update Rust toolchain in GitHub Workflows", + "fileMatch": ["^\\.github/workflows/.*\\.ya?ml$"], + "matchStrings": [ + "(?:toolchain:\\s*['\"]|--toolchain\\s+|dtolnay/rust-toolchain@)(?\\d+\\.\\d+\\.\\d+)['\"]?" + ], + "depNameTemplate": "rust-lang/rust", + "datasourceTemplate": "github-releases" + }, + { + "customType": "regex", + "description": "Update Node.js in devcontainer.json", + "fileMatch": ["^\\.devcontainer/devcontainer\\.json$"], + "matchStrings": [ + "\"ghcr\\.io/devcontainers/features/node:[^\"]+\":\\s*\\{[^}]*\"version\":\\s*\"(?[^\"]+)\"" + ], + "depNameTemplate": "node", + "datasourceTemplate": "node-version" + }, + { + "customType": "regex", + "description": "Update Rust in devcontainer.json", + "fileMatch": ["^\\.devcontainer/devcontainer\\.json$"], + "matchStrings": [ + "\"ghcr\\.io/devcontainers/features/rust:[^\"]+\":\\s*\\{[^}]*\"version\":\\s*\"(?[^\"]+)\"" + ], + "depNameTemplate": "rust-lang/rust", + "datasourceTemplate": "github-releases" } ], "postUpdateOptions": ["pnpmDedupe"], diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 6360c1888..aa20bc990 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,3 +1,3 @@ [toolchain] -channel = "1.95.0" +channel = "1.98.0" components = ["rustfmt", "clippy"]