From f61b426f7b31d4e47986350464f8e80090740a12 Mon Sep 17 00:00:00 2001 From: Alan Agius <17563226+alan-agius4@users.noreply.github.com> Date: Mon, 12 May 2025 10:38:13 +0000 Subject: [PATCH 1/2] ci: ignore several updates - `yarn` is copied locally - `bazel` major version should not be updated --- renovate-presets/default.json5 | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/renovate-presets/default.json5 b/renovate-presets/default.json5 index 8aebdfb01..0dff1f013 100644 --- a/renovate-presets/default.json5 +++ b/renovate-presets/default.json5 @@ -28,7 +28,8 @@ // Ignored dependencies in all repositories "ignoreDeps": [ "build_bazel_rules_nodejs", - "rules_pkg" + "rules_pkg", + "yarn" // Yarn is copied locally in all repositories where needed. ], "packageRules": [ @@ -128,6 +129,7 @@ "enabled": false, "matchPackageNames": [ "@types/node", + "bazel", "node", "npm", "pnpm", From e9a955ee230aff80d3ef2b27030fb8ea39857330 Mon Sep 17 00:00:00 2001 From: Alan Agius <17563226+alan-agius4@users.noreply.github.com> Date: Mon, 12 May 2025 10:38:31 +0000 Subject: [PATCH 2/2] refactor: replace `matchPackageNames` to `matchDepNames` Here's a breakdown of their preferences: * **`matchDepNames` is generally preferred for clarity and accuracy.** * `matchDepNames` was introduced specifically to match against the `depName` field, which typically represents the "short" or primary name of a dependency (e.g., `react`, `lodash`). * Using `matchDepNames` makes your Renovate configuration more explicit and easier to understand, as its name directly reflects its intended behavior. * **`matchPackageNames` has historical baggage and can be misleading.** * Historically, `matchPackageNames` in Renovate also matched against the `depName` by default, despite its name suggesting it would match the `packageName` field. This was due to an earlier implementation decision. * While `matchPackageNames` might still match `depName` in many current setups (for backward compatibility), it can be confusing and lead to unexpected behavior if you're expecting it to match the `packageName` (which is often a more complete or specific identifier, like `org.apache.maven:maven-core`). --- renovate-presets/default.json5 | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/renovate-presets/default.json5 b/renovate-presets/default.json5 index 0dff1f013..f4bd29359 100644 --- a/renovate-presets/default.json5 +++ b/renovate-presets/default.json5 @@ -40,7 +40,7 @@ // Group all non-major updates (minor and patch) together { "groupName": "all non-major dependencies", - "matchPackageNames": [ + "matchDepNames": [ "*", "!node", "!pnpm", @@ -70,7 +70,7 @@ "followTag": "next", "separateMajorMinor": false, "schedule": ["at any time"], - "matchPackageNames": [ + "matchDepNames": [ "@angular-devkit/**", "@angular/**", "@schematics/**", @@ -87,19 +87,19 @@ // Keep minor and patch updates separate for TypeScript { - "matchPackageNames": ["typescript"], + "matchDepNames": ["typescript"], "separateMinorPatch": true }, // Group TypeScript-related packages { "groupName": "typescript dependencies", - "matchPackageNames": ["typescript", "tslib"] + "matchDepNames": ["typescript", "tslib"] }, // Limit how many times these packages get updated (They deploy each merged PR) { - "matchPackageNames": ["renovate", "quicktype-core"], + "matchDepNames": ["renovate", "quicktype-core"], "schedule": ["on sunday and wednesday"] }, @@ -111,7 +111,7 @@ { "groupName": "scorecard action dependencies", "matchFileNames": [".github/workflows/scorecard.yml"], - "matchPackageNames": ["*"] + "matchDepNames": ["*"] }, // ============================================================================ @@ -127,7 +127,7 @@ // Disable major updates for specified dependencies { "enabled": false, - "matchPackageNames": [ + "matchDepNames": [ "@types/node", "bazel", "node", @@ -143,7 +143,7 @@ // Disable TypeScript major and minor updates { "enabled": false, - "matchPackageNames": ["typescript"], + "matchDepNames": ["typescript"], "matchUpdateTypes": ["major", "minor"] } ]