Skip to content

better-sqlite3 ^11 optional dependency fails to build on Node 26 (silently dropped by npm, fatal under pnpm/aube) #34

Open

Description

@pacphi

Summary
[email protected] declares optionalDependencies.better-sqlite3: "^11.8.1", which resolves to [email protected]. That version has no Node 26 prebuild and its source build fails against Node 26's V8 headers. npm silently drops the failed optional dependency, so agentdb loses SQLite support without any error. Stricter installers (pnpm/aube) fail the whole install.

Environment

  • macOS 27.0.1 (26A434), Apple Silicon (arm64)
  • Command Line Tools 27.0.0, Apple clang 21.0.0, Python 3.10.11
  • Node.js v26.12.1 (process.versions.modules = 147), npm 12.2.0
  • mise 2026.8.2 (npm: backend → embedded aube installer)

Reproduction

mise install [email protected]
mise exec [email protected] -- mise install 'npm:[email protected]'

Result:

CXX(target) Release/obj.target/better_sqlite3/src/better_sqlite3.o
./src/util/binder.lzz:40:37: error: no member named 'GetPrototype' in 'v8::Object'
./src/better_sqlite3.lzz:68:34: error: no member named 'GetIsolate' in 'v8::Context'
./src/objects/database.lzz:416:89: error: no member named 'This' in 'v8::PropertyCallbackInfo<v8::Value>'
14 warnings and 6 errors generated.
aube install failed: lifecycle script install failed for [email protected]

With npm (npm install -g [email protected] on Node 26.x) the install "succeeds", but node_modules/better-sqlite3 is absent from the installed tree. The optional build failure is swallowed.

Evidence

Proposed fix
Bump the optional dependency to a Node 26-capable line, e.g. "better-sqlite3": "^12.11.1" (latest is 13.0.3). Consider adding engines.node to agentdb and a CI matrix entry for Node 26, which becomes Active LTS on 2026-10-28.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions