v1.5.0
Changed
-
Node 22 is now the floor:
engines.nodeis>=22. npm only warns on anenginesmismatch unlessengine-strictis set, so a Node 20 install is not refused outright — butbetter-sqlite313 will not build there, so it fails at install either way.fozikio doctornow enforces the same floor. (#76)Node 20 reached end-of-life on 2026-04-30 and nothing should still be shipping to it, but the reason to move now is mechanical:
better-sqlite313 declaresnode >=22, andvitest5 cannot run againstbetter-sqlite311 — its changed worker lifecycle tears down the addon on a null N-API env (Assertion failed: (env) != nullptr, SIGABRT, Linux only). So the two Dependabot bumps that had been failing CI for a week were one decision, not two, and this release makes it deliberately rather than letting a dependency-group merge make it silently. TheNode 20 CompatCI job is nowNode 22 Compat— same purpose, one floor higher. -
better-sqlite3^11.7.0→^13.0.3(runtime). Replacesbindings/prebuild-installwithnode-addon-api; the lockfile drops ~50 transitive packages. -
vitest^4.1.0→^5.0.0(dev). 326/326 pass; verified on the Linux runner, not just locally, because that is where the old combination failed.