From f282c86069b5302f98e20f9566e00f7d29be2649 Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Fri, 15 Sep 2023 13:13:46 -0400 Subject: [PATCH 01/18] chore: add .github/renovate.json5 --- .github/renovate.json5 | 66 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 .github/renovate.json5 diff --git a/.github/renovate.json5 b/.github/renovate.json5 new file mode 100644 index 00000000000..f41a0ee9dcb --- /dev/null +++ b/.github/renovate.json5 @@ -0,0 +1,66 @@ +{ + "$schema": "https://docs.renovatebot.com/renovate-schema.json", + "extends": [ + "config:recommended", + ":dependencyDashboardApproval", + ":semanticCommitTypeAll(ci)" + ], + "dependencyDashboard": true, + "dependencyDashboardLabels": ["dependencies", "repo maintenance"], + "enabledManagers": ["github-actions", "npm"], + "internalChecksFilter": "strict", + "labels": ["dependencies"], + + // Wait a few days for any new package, as a precaution against malicious publishes + "minimumReleaseAge": "3 days", + + "packageRules": [ + // Enable major version updates, but don't auto-merge them + { + "automerge": false, + "matchUpdateTypes": ["minor"] + }, + + // Enable minor version updates with auto-merging + { + "automerge": true, + "automergeStrategy": "squash", + "matchUpdateTypes": ["minor"] + }, + + // Ignore patch versions to reduce noise + { + "enabled": false, + "matchUpdateTypes": ["patch"] + }, + + // Label PRs appropriately per their manager + { + "addLabels": ["javascript"], + "matchManagers": ["npm"] + }, + { + "addLabels": ["github-actions"], + "matchManagers": ["github-actions"] + }, + + // Batch package sets together + { + "groupName": "babel", + "matchPackagePrefixes": ["@babel", "babel-"] + }, + { + "groupName": "wdio", + "matchPackagePrefixes": ["@wdio"] + }, + { + "groupName": "metascraper", + "matchPackagePrefixes": ["metascraper"] + } + ], + + // By default renovate will auto-rebase whenever the dep branch falls behind main. + // This is annoying as it spams notifications and creates unnecessary action runs. + // Instead only auto-rebase when conflicted, and we can trigger a manual rebase if required. + "rebaseWhen": "conflicted" +} From 620c529e1290126c0c9485db36dab3b87b176651 Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Fri, 15 Sep 2023 13:21:40 -0400 Subject: [PATCH 02/18] Removed last commit message line --- .github/renovate.json5 | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index f41a0ee9dcb..7bb695637c2 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -2,8 +2,7 @@ "$schema": "https://docs.renovatebot.com/renovate-schema.json", "extends": [ "config:recommended", - ":dependencyDashboardApproval", - ":semanticCommitTypeAll(ci)" + ":dependencyDashboardApproval" ], "dependencyDashboard": true, "dependencyDashboardLabels": ["dependencies", "repo maintenance"], From b103e04399ea84006ba9d64bca1033b2b02c05e4 Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Fri, 15 Sep 2023 19:36:50 -0400 Subject: [PATCH 03/18] Remove dependency dashboard --- .github/renovate.json5 | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index 7bb695637c2..0fcf729621a 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -1,11 +1,5 @@ { "$schema": "https://docs.renovatebot.com/renovate-schema.json", - "extends": [ - "config:recommended", - ":dependencyDashboardApproval" - ], - "dependencyDashboard": true, - "dependencyDashboardLabels": ["dependencies", "repo maintenance"], "enabledManagers": ["github-actions", "npm"], "internalChecksFilter": "strict", "labels": ["dependencies"], From ee7674019487de57b6969357c8872fdb23097e66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Josh=20Goldberg=20=E2=9C=A8?= Date: Fri, 15 Sep 2023 19:37:22 -0400 Subject: [PATCH 04/18] Capitalize Renovate in .github/renovate.json5 Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com> --- .github/renovate.json5 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index 0fcf729621a..5cb34db01d9 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -52,7 +52,7 @@ } ], - // By default renovate will auto-rebase whenever the dep branch falls behind main. + // By default Renovate will auto-rebase whenever the dep branch falls behind main. // This is annoying as it spams notifications and creates unnecessary action runs. // Instead only auto-rebase when conflicted, and we can trigger a manual rebase if required. "rebaseWhen": "conflicted" From bcbf48e5aa292aa65403fbad8ce33d23b405fc1f Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Fri, 15 Sep 2023 19:40:27 -0400 Subject: [PATCH 05/18] Remove rebaseWhen --- .github/renovate.json5 | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index 5cb34db01d9..be669030379 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -50,10 +50,5 @@ "groupName": "metascraper", "matchPackagePrefixes": ["metascraper"] } - ], - - // By default Renovate will auto-rebase whenever the dep branch falls behind main. - // This is annoying as it spams notifications and creates unnecessary action runs. - // Instead only auto-rebase when conflicted, and we can trigger a manual rebase if required. - "rebaseWhen": "conflicted" + ] } From 7a27310f1fb9d46a99644ad7b27cc95797eabb08 Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Fri, 15 Sep 2023 19:41:58 -0400 Subject: [PATCH 06/18] Removed enabledManagers --- .github/renovate.json5 | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index be669030379..2e25de1e10b 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -1,6 +1,5 @@ { "$schema": "https://docs.renovatebot.com/renovate-schema.json", - "enabledManagers": ["github-actions", "npm"], "internalChecksFilter": "strict", "labels": ["dependencies"], From 3b4fddcfb1605b7dcf83391623419d86923aacb3 Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Mon, 18 Sep 2023 13:06:39 -0400 Subject: [PATCH 07/18] Remove automergeStrategy --- .github/renovate.json5 | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index 2e25de1e10b..7ecf50e6395 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -16,7 +16,6 @@ // Enable minor version updates with auto-merging { "automerge": true, - "automergeStrategy": "squash", "matchUpdateTypes": ["minor"] }, From 47974d78bd7fcdc2c9ac8568e5a373083f212feb Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Mon, 18 Sep 2023 13:07:30 -0400 Subject: [PATCH 08/18] Add back extends: config:recommended, :dependencyDashboardApproval --- .github/renovate.json5 | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index 7ecf50e6395..ddd9d27407b 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -1,5 +1,9 @@ { "$schema": "https://docs.renovatebot.com/renovate-schema.json", + "extends": [ + "config:recommended", + ":dependencyDashboardApproval" + ], "internalChecksFilter": "strict", "labels": ["dependencies"], From 315ce64724e84775a864e483f69b1bc684edf914 Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Mon, 18 Sep 2023 13:08:02 -0400 Subject: [PATCH 09/18] Add ::semanticCommitScopeDisabled extends too --- .github/renovate.json5 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index ddd9d27407b..db8c51b56a9 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -2,7 +2,8 @@ "$schema": "https://docs.renovatebot.com/renovate-schema.json", "extends": [ "config:recommended", - ":dependencyDashboardApproval" + ":dependencyDashboardApproval", + ":semanticCommitScopeDisabled" ], "internalChecksFilter": "strict", "labels": ["dependencies"], From 46cefb8f3baf1810918fd109c3f79791592e7aca Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Mon, 18 Sep 2023 13:29:42 -0400 Subject: [PATCH 10/18] 7 days, not 3 --- .github/renovate.json5 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index db8c51b56a9..8ea89c0b8b4 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -9,7 +9,7 @@ "labels": ["dependencies"], // Wait a few days for any new package, as a precaution against malicious publishes - "minimumReleaseAge": "3 days", + "minimumReleaseAge": "7 days", "packageRules": [ // Enable major version updates, but don't auto-merge them From b1a44c3d371f93515a915b5d298dd70b744b32ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Josh=20Goldberg=20=E2=9C=A8?= Date: Mon, 18 Sep 2023 13:30:19 -0400 Subject: [PATCH 11/18] Apply suggestions from code review Co-authored-by: Nicholas C. Zakas --- .github/renovate.json5 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index 8ea89c0b8b4..1b62e95616e 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -15,7 +15,7 @@ // Enable major version updates, but don't auto-merge them { "automerge": false, - "matchUpdateTypes": ["minor"] + "matchUpdateTypes": ["major"] }, // Enable minor version updates with auto-merging @@ -32,11 +32,11 @@ // Label PRs appropriately per their manager { - "addLabels": ["javascript"], + "addLabels": ["deps:npm"], "matchManagers": ["npm"] }, { - "addLabels": ["github-actions"], + "addLabels": ["deps:actions"], "matchManagers": ["github-actions"] }, From 4a10f6c036421918986e5fd0b9aaab31c168931a Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Tue, 19 Sep 2023 13:18:31 -0400 Subject: [PATCH 12/18] Remove redundant automerge: false --- .github/renovate.json5 | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index 1b62e95616e..222e947a7c2 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -14,7 +14,6 @@ "packageRules": [ // Enable major version updates, but don't auto-merge them { - "automerge": false, "matchUpdateTypes": ["major"] }, From 652d3521c7aa9fb3c09a3a68c67d09f19f798f2e Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Wed, 20 Sep 2023 01:05:06 -0400 Subject: [PATCH 13/18] Remove explicit major line --- .github/renovate.json5 | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index 222e947a7c2..c121d8fc347 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -12,12 +12,8 @@ "minimumReleaseAge": "7 days", "packageRules": [ - // Enable major version updates, but don't auto-merge them - { - "matchUpdateTypes": ["major"] - }, - // Enable minor version updates with auto-merging + // (Major versions will need to be triggered from the dashboard issue) { "automerge": true, "matchUpdateTypes": ["minor"] From 55d7375090fd8ea246eb237e1eaa592ccfc17eb3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Josh=20Goldberg=20=E2=9C=A8?= Date: Wed, 20 Sep 2023 04:16:32 -0400 Subject: [PATCH 14/18] Update .github/renovate.json5 Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com> --- .github/renovate.json5 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index c121d8fc347..5b6d77fb4c7 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -2,7 +2,7 @@ "$schema": "https://docs.renovatebot.com/renovate-schema.json", "extends": [ "config:recommended", - ":dependencyDashboardApproval", + ":approveMajorUpdates", ":semanticCommitScopeDisabled" ], "internalChecksFilter": "strict", From bab1c9cf2a87d58aad17eeb4cd5a91bb32d6ec0b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Josh=20Goldberg=20=E2=9C=A8?= Date: Tue, 10 Oct 2023 12:32:14 -0400 Subject: [PATCH 15/18] Update .github/renovate.json5 Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com> --- .github/renovate.json5 | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index 5b6d77fb4c7..a906f91822f 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -12,39 +12,38 @@ "minimumReleaseAge": "7 days", "packageRules": [ - // Enable minor version updates with auto-merging - // (Major versions will need to be triggered from the dashboard issue) { + "description": "Automerge minor version updates. Major versions must be approved from the Dependency Dashboard issue, because we use the :approveMajorUpdates preset.", "automerge": true, "matchUpdateTypes": ["minor"] }, - - // Ignore patch versions to reduce noise { + "description": "Ignore patch versions to reduce noise.", "enabled": false, "matchUpdateTypes": ["patch"] }, - - // Label PRs appropriately per their manager { + "description": "Use the deps:npm label for npm manager packages (this means Renovate's npm manager).", "addLabels": ["deps:npm"], "matchManagers": ["npm"] }, { + "description": "Use the deps:actions label for github-action manager updates (this means Renovate's github-action manager).", "addLabels": ["deps:actions"], "matchManagers": ["github-actions"] }, - - // Batch package sets together { + "description": "Group Babel packages into a single PR.", "groupName": "babel", "matchPackagePrefixes": ["@babel", "babel-"] }, { + "description": "Group wdio packages into a single PR.", "groupName": "wdio", "matchPackagePrefixes": ["@wdio"] }, { + "description": "Group metascraper packages into a single PR.", "groupName": "metascraper", "matchPackagePrefixes": ["metascraper"] } From 9bde6917bf70f234b7e64af2f2eceb9fdf187ba0 Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Tue, 31 Oct 2023 22:49:52 -0400 Subject: [PATCH 16/18] Disabled automerge, kept prefix as chore, and included patch version updates --- .github/renovate.json5 | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index a906f91822f..e8c43e3f160 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -5,33 +5,24 @@ ":approveMajorUpdates", ":semanticCommitScopeDisabled" ], + "ignorePresets": [":semanticPrefixFixDepsChoreOthers"], "internalChecksFilter": "strict", "labels": ["dependencies"], - // Wait a few days for any new package, as a precaution against malicious publishes + // Wait well over three days for any new package as a precaution against malicious publishes "minimumReleaseAge": "7 days", "packageRules": [ { - "description": "Automerge minor version updates. Major versions must be approved from the Dependency Dashboard issue, because we use the :approveMajorUpdates preset.", - "automerge": true, - "matchUpdateTypes": ["minor"] - }, - { - "description": "Ignore patch versions to reduce noise.", - "enabled": false, - "matchUpdateTypes": ["patch"] + "description": "Use the deps:actions label for github-action manager updates (this means Renovate's github-action manager).", + "addLabels": ["deps:actions"], + "matchManagers": ["github-actions"] }, { "description": "Use the deps:npm label for npm manager packages (this means Renovate's npm manager).", "addLabels": ["deps:npm"], "matchManagers": ["npm"] }, - { - "description": "Use the deps:actions label for github-action manager updates (this means Renovate's github-action manager).", - "addLabels": ["deps:actions"], - "matchManagers": ["github-actions"] - }, { "description": "Group Babel packages into a single PR.", "groupName": "babel", From e7df52ed2dc95235e952ac82768dec6e5c039ec7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Josh=20Goldberg=20=E2=9C=A8?= Date: Fri, 3 Nov 2023 09:37:06 -0400 Subject: [PATCH 17/18] Update .github/renovate.json5 Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com> --- .github/renovate.json5 | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index e8c43e3f160..a18bcb29acc 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -6,7 +6,6 @@ ":semanticCommitScopeDisabled" ], "ignorePresets": [":semanticPrefixFixDepsChoreOthers"], - "internalChecksFilter": "strict", "labels": ["dependencies"], // Wait well over three days for any new package as a precaution against malicious publishes From 57c97bedf6abe4c16e614287531d83a976520cc0 Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Sat, 4 Nov 2023 11:39:17 -0400 Subject: [PATCH 18/18] Added npm link to comment --- .github/renovate.json5 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index a18bcb29acc..8163f03867c 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -8,7 +8,8 @@ "ignorePresets": [":semanticPrefixFixDepsChoreOthers"], "labels": ["dependencies"], - // Wait well over three days for any new package as a precaution against malicious publishes + // Wait well over npm's three day window for any new package as a precaution against malicious publishes + // https://docs.npmjs.com/policies/unpublish/#packages-published-less-than-72-hours-ago "minimumReleaseAge": "7 days", "packageRules": [