FlowFuse / FlowFuse/flowfuse

Upgrade validate-npm-package-name 7.0.2 → 8.0.0

Open
#7,984 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
400
Forks
89
Avg merge
1d 21h
Merged PRs (30d)
146

Description

# Upgrade validate-npm-package-name 7.0.2 → 8.0.0 (major)

Dependabot PR #7525 (labeled `blocked`). Direct runtime dependency (`dependencies`, `^7.0.2`); used in `forge/db/controllers/ProjectTemplate.js` and the frontend `TemplatePaletteModulesEditor` component. Pulled out of the weekly Dependabot slot per the major-version process.

## Why blocked

- v8 raises `engines` to `^22.22.2 || ^24.15.0 || >=26.0.0` (v7 was `^20.17.0 || >=22.9.0`). Our `package.json` declares `engines: >=20.10.0`, so as a **runtime** dep its new floor conflicts with our stated Node 20 support — merging forces raising that floor and dropping Node 20. It also requires specific patch minimums (a Node 24 older than 24.15.0 is rejected).

## Compatibility pre-check

- ⚠️ Node engines: v8 needs `^24.15.0` on the Node 24 line — a 24.x older than 24.15.0 is rejected. Verify the pinned Node 24 patch.
- ⚠️ Node 20 no longer supported by v8 — confirm no lane still targets Node 20.
- ✅ Still CommonJS (`type` unset, `main: lib/`); existing `require('validate-npm-package-name')` and the frontend import keep working — not ESM-only.

## Breaking changes to review

- Engines bump to `^22.22.2 || ^24.15.0 || >=26.0.0` (sourced from 8.0.0 changelog). No API or ESM changes noted for 8.0.0.

## To do before merge

- [ ] Decide on dropping Node 20 support (raise repo `engines` floor); coordinate with the ldapts 9 bump, which forces the same decision.
- [ ] Confirm all Node versions in CI and `engines`/`.nvmrc` satisfy `^24.15.0` (or `^22.22.2` / `>=26`).
- [ ] Read the 8.x changelog.

## Refs

- Branch: `dependabot/npm_and_yarn/validate-npm-package-name-8.0.0`
- PR: #7525
- Upstream: https://github.com/npm/validate-npm-package-name/blob/main/CHANGELOG.md

Contributor guide

Open the contributing guide

Research direction

Start by reviewing package.json, the Node-version CI configuration, and .nvmrc, then inspect forge/db/controllers/ProjectTemplate.js and the TemplatePaletteModulesEditor component. Read the validate-npm-package-name 8.x changelog and verify every supported Node version meets its engine constraints; done requires resolving Node 20 support and updating the dependency and related version declarations.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, node.js
Domain
build-system, ci-cd
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.