From 0ce3764a9e5e8c63f53f2d4dfe5d0b7b58e0cd4b Mon Sep 17 00:00:00 2001 From: abstrakt Date: Fri, 25 Sep 2026 15:58:27 +0100 Subject: [PATCH] chore: match Renovate's minimum release age to pnpm's pnpm 11+ refuses to install versions published less than a day ago, but Renovate can propose them sooner, so its PRs fail at install until the release ages. State the one-day window explicitly in pnpm-workspace.yaml, give the grouped npm Renovate rule the same window, and exempt playcanvas in pnpm so engine updates still install as soon as they are released. --- pnpm-workspace.yaml | 7 +++++++ renovate.json | 4 +++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 260e9253..ddeee67c 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -4,6 +4,13 @@ packages: linkWorkspacePackages: true preferWorkspacePackages: true +# Only install versions published at least a day ago. This is pnpm's default +# since v11; it is stated here so renovate.json can match it. playcanvas is +# first-party, so engine updates are exempt and install as soon as released. +minimumReleaseAge: 1440 +minimumReleaseAgeExclude: + - playcanvas + # pnpm 10 skipped these install scripts with a warning; pnpm 11+ fails the # install unless each one is explicitly allowed or denied. allowBuilds: diff --git a/renovate.json b/renovate.json index f8783df5..77c37176 100644 --- a/renovate.json +++ b/renovate.json @@ -5,7 +5,8 @@ { "matchManagers": ["npm"], "groupName": "all npm dependencies", - "schedule": ["on monday at 10:00am"] + "schedule": ["on monday at 10:00am"], + "minimumReleaseAge": "1 day" }, { "matchDepTypes": ["devDependencies"], @@ -16,6 +17,7 @@ "rangeStrategy": "widen" }, { + "description": "pnpm-workspace.yaml exempts playcanvas from pnpm's minimumReleaseAge, so engine updates can land as soon as they are released", "matchPackageNames": ["playcanvas"], "groupName": "playcanvas", "prCreation": "immediate",