Skip to content

fix: remove fixed engines field and add npm install cooldown - #23

Draft
odanado wants to merge 3 commits into
mainfrom
fix-npm-config
Draft

fix: remove fixed engines field and add npm install cooldown#23
odanado wants to merge 3 commits into
mainfrom
fix-npm-config

Conversation

@odanado

@odanado odanado commented Aug 31, 2026

Copy link
Copy Markdown
Member

Description

Closes #7.

The engines field pinned exact versions of Node.js and npm. It propagates to consumers, so installing @line/liff-cli printed EBADENGINE warnings on any other version. I removed it and moved the npm requirement to devEngines, which is not propagated.

I also added min-release-age=3 to .npmrc as a mitigation against supply chain attacks. It makes npm ignore versions published less than 3 days ago.

odanado and others added 2 commits August 31, 2026 21:33
npm 12 requires Node.js ^22.22.2 || ^24.15.0 || >=26.0.0, so `npm install -g
npm@12` fails on the pinned 22.2.0. `@types/node` follows the update.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
echo "${tmpdir}" >> "$GITHUB_PATH"

- run: mkcert localhost
- run: npm install -g npm@12

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No Node.js release bundles npm 12 yet, so npm install -g npm@12 is added before npm ci in the workflows. Contributors need to run it locally as well.

Comment thread .nvmrc
@@ -1 +1 @@
22.2.0
22.23.2

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

npm 12 requires Node.js ^22.22.2 || ^24.15.0 || >=26.0.0, so .nvmrc is bumped from 22.2.0 to 22.23.2 (the latest 22 LTS), and @types/node follows it to 22.20.1.

npm 12 blocks dependency install scripts unless they are listed in
allowScripts. All four candidates work without them, so they are recorded
as false (reviewed, not needed) rather than omitted (unreviewed).

- esbuild: ships prebuilt binaries via 23 os/cpu optionalDependencies
- fsevents / msw: load fine without their install scripts
- node-pty: the native build does not run, which only affects the
  deprecated ngrok-v1 proxy when run from source

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Change the settings in the engines field of package.json

1 participant