Renovate: pin npm >=11 zodat lockfile-onderhoud niet meer afbreekt #81

Merged
robbertbos merged 1 commit from renovate-lockfile-fix into main 2026-07-11 10:02:52 +00:00
Owner

Fix voor de Renovate lockfile-error die de hele repo-run afbrak, waardoor de aangevinkte updates op de Dependency Dashboard (#10) nooit als PR verschenen.

Oorzaak

frontend/package-lock.json is bewust met npm 11 gegenereerd; npm < 11 gooit emojibase (peer van emojibase-data) uit de lock. Niets in de repo pinde de npm-versie (engines/packageManager/Renovate constraints ontbraken), dus Renovate regenereerde de lock met een oudere npm -> lock corrupt -> repo-run breekt af met lockfile-error.

Reproductie: npm install --package-lock-only met npm 10.9.2 dropt emojibase (1 -> 0 entries). Python-kant is niet betrokken (uv lock --check = in sync).

Fix

  • frontend/package.json: engines.npm >= 11 (+ node >= 22). Warn-only lokaal (geen engine-strict), voedt Renovate's constraint-inferentie.
  • renovate.json: constraints.npm >= 11 zodat Renovate de lock met npm 11 onderhoudt.

Effect

De Renovate-run breekt niet meer af op het npm-lockfile-onderhoud, dus de op #10 aangevinkte updates (renovate/npm, renovate/npm-dev, renovate/containers, ...) kunnen weer als PR aangemaakt worden.

Buiten scope (aparte follow-ups)

  • WARN github-tags RijksICTGilde/zad-actions: no-result - de repo bestaat en is actueel (v4.0.6); routing/token-kwestie, niet-fataal.
  • INFO use 'forgejo' platform instead - cosmetisch; RENOVATE_PLATFORM: gitea werkt.
Fix voor de Renovate `lockfile-error` die de hele repo-run afbrak, waardoor de aangevinkte updates op de Dependency Dashboard (#10) nooit als PR verschenen. ## Oorzaak `frontend/package-lock.json` is bewust met npm 11 gegenereerd; npm < 11 gooit `emojibase` (peer van `emojibase-data`) uit de lock. Niets in de repo pinde de npm-versie (`engines`/`packageManager`/Renovate `constraints` ontbraken), dus Renovate regenereerde de lock met een oudere npm -> lock corrupt -> repo-run breekt af met `lockfile-error`. Reproductie: `npm install --package-lock-only` met npm 10.9.2 dropt `emojibase` (1 -> 0 entries). Python-kant is niet betrokken (`uv lock --check` = in sync). ## Fix - `frontend/package.json`: `engines.npm >= 11` (+ `node >= 22`). Warn-only lokaal (geen `engine-strict`), voedt Renovate's constraint-inferentie. - `renovate.json`: `constraints.npm >= 11` zodat Renovate de lock met npm 11 onderhoudt. ## Effect De Renovate-run breekt niet meer af op het npm-lockfile-onderhoud, dus de op #10 aangevinkte updates (`renovate/npm`, `renovate/npm-dev`, `renovate/containers`, ...) kunnen weer als PR aangemaakt worden. ## Buiten scope (aparte follow-ups) - WARN `github-tags RijksICTGilde/zad-actions: no-result` - de repo bestaat en is actueel (v4.0.6); routing/token-kwestie, niet-fataal. - INFO `use 'forgejo' platform instead` - cosmetisch; `RENOVATE_PLATFORM: gitea` werkt.
Renovate: pin npm >=11 zodat lockfile-onderhoud niet meer afbreekt
All checks were successful
CI / pre-commit (pull_request) Successful in 1m8s
CI / frontend-test (pull_request) Successful in 4m32s
CI / release-scripts (pull_request) Successful in 10s
security-scan / Python SCA (pip-audit) (pull_request) Successful in 57s
security-scan / Python SAST (bandit) (pull_request) Successful in 36s
security-scan / JS SCA (npm audit) (pull_request) Successful in 41s
CI / backend-test (pull_request) Successful in 7m36s
security-scan / SBOM (trivy) (pull_request) Successful in 16s
security-scan / Filesystem scan (trivy fs) (pull_request) Successful in 25s
CI / backend-test-postgres (pull_request) Successful in 8m47s
CI / e2e (pull_request) Successful in 7m38s
test-build / build (backend) (pull_request) Successful in 1m59s
test-build / build (frontend) (pull_request) Successful in 2m14s
test-build / build (pull_request) Successful in 0s
CI / pre-commit (push) Successful in 1m20s
CI / frontend-test (push) Successful in 4m33s
CI / release-scripts (push) Successful in 9s
publish-main / build (backend) (push) Successful in 2m8s
CI / backend-test (push) Successful in 7m24s
security-scan / Python SCA (pip-audit) (push) Successful in 58s
CI / backend-test-postgres (push) Successful in 8m37s
security-scan / Python SAST (bandit) (push) Successful in 40s
publish-main / build (frontend) (push) Successful in 2m12s
publish-main / build (push) Successful in 0s
security-scan / SBOM (trivy) (push) Successful in 16s
security-scan / JS SCA (npm audit) (push) Successful in 42s
security-scan / Filesystem scan (trivy fs) (push) Successful in 23s
CI / e2e (push) Successful in 8m41s
e37bf94c95
npm < 11 gooit emojibase uit frontend/package-lock.json (peer van
emojibase-data). Zonder npm-pin regenereert Renovate de lock met een oudere
npm, wat de lockfile corrumpeert en de repo-run laat afbreken met
lockfile-error - waardoor de aangevinkte dependency-PR's op de Dependency
Dashboard (issue #10) nooit verschenen.

Vastgelegd via engines.npm in package.json en Renovate constraints.npm, zodat
zowel Renovate als lokale devs de lock met npm 11 herbouwen.
robbertbos deleted branch renovate-lockfile-fix 2026-07-11 10:02:53 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
robbertbos/waggle!81
No description provided.