chore: declare supported Node version (22) - #130
Open
sergiomaldo wants to merge 1 commit into
Open
Conversation
The Dockerfile builds on node:22-alpine and CI pins node-version: 22, but
nothing declared the supported version for local development. On Node 25
the frontend suite fails 38 tests across 6 files with
TypeError: localStorage.clear is not a function
because Node 25 exposes a built-in global localStorage that shadows the
jsdom one, and without a valid --localstorage-file its clear() is undefined.
The failures look like a regression in application code; they are not.
Add .nvmrc and an engines field so the mismatch surfaces at install time.
The repo already sets engine-strict=true in .npmrc, so this fails fast with
a legible message instead of surfacing later as confusing test failures.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The Dockerfile builds on
node:22-alpine(both stages) anddesktop-release.ymlpinsnode-version: 22, but nothing declares the supported version for local development —there is no
.nvmrcand noenginesfield.On Node 25 the frontend suite fails 38 tests across 6 files, all with:
Node 25 exposes a built-in global
localStoragethat shadows the jsdom one, and withouta valid
--localstorage-fileitsclear()is undefined. The failures look like aregression in application code; they are not. On Node 22 the same tree is fully green.
Changes
.nvmrc(22)."engines": { "node": ">=22 <23" }topackage.json.The repo already sets
engine-strict=truein.npmrc, so this surfaces at install timewith a clear message rather than later as confusing test failures. Note that makes it a
hard failure rather than a warning — that is the intent, but flagging it explicitly in
case you would prefer a wider range.
🤖 Generated with Claude Code
https://claude.ai/code/session_01SMqm8tGT3ksTtYgqPao6kF