Skip to content

v3.1.1

Choose a tag to compare

@github-actions github-actions released this 07 Oct 22:25
· 22 commits to main since this release
Immutable release. Only release title and notes can be modified.
v3.1.1
b3db7d6

Changed

  • Getter errors retain their identity: constructor option/limit getters and named-parameter getters in get(), run(), and all() now propagate the exact thrown value, matching node:sqlite. Constructor getter errors are no longer wrapped as ERR_SQLITE_ERROR.

Fixed

  • Statement lifetime: statements now keep their database alive, so dropping the database reference no longer finalizes a statement or interrupts its iterator during garbage collection.
  • Session lifetime: sessions now keep their database alive, so dropping the database reference no longer makes session methods fail with database is not open after garbage collection.
  • Worker shutdown: process.exit() and worker.terminate() during authorizer, changeset, diagnostics, or aggregate callbacks, or while reading argument getters and Proxy traps, no longer abort the whole process. The worker exits normally.
  • Concurrent builds (developer tooling): npm run build:dist replaces output files atomically, preventing overlapping npm test runs from loading missing or partially written files.
  • Stale native binaries (developer tooling): npm run build:native now runs an incremental build once build/ is configured, so changed sources, headers, or build settings are recompiled before testing.
  • Source-build portability: explicitly include the required header for std::strtol, avoiding reliance on compiler-specific indirect includes.
  • Optional benchmark drivers (developer tooling): skip better-sqlite3 when its native binding is missing or incompatible with the running Node.js version, instead of failing when opening a benchmark database.
  • Docker tests (developer tooling): cached builds on macOS no longer treat AppleDouble metadata as test files. Debian tests now default to Node.js 22, 24, and 26.

Full Changelog: v3.1.0...v3.1.1