Skip to content

chore(deps): upgrade better-sqlite3 to 13 - #1578

Closed
kunickiaj wants to merge 1 commit into
09-02-chore_deps_upgrade_commander_to_15from
09-02-chore_deps_upgrade_better-sqlite3_to_13
Closed

chore(deps): upgrade better-sqlite3 to 13#1578
kunickiaj wants to merge 1 commit into
09-02-chore_deps_upgrade_commander_to_15from
09-02-chore_deps_upgrade_better-sqlite3_to_13

Conversation

@kunickiaj

@kunickiaj kunickiaj commented Sep 2, 2026

Copy link
Copy Markdown
Owner

Description

Upgrade better-sqlite3 from 12.8.0 to 13.0.0 and align @types/better-sqlite3 at 9.6.0 across the workspace. Update the native-install decision document for v13 bundled prebuilds, SQLite 3.53.3, and the larger package footprint.

Tracks codemem-jnd6.7.3.

Type of Change

  • 🚀 Feature (new functionality)
  • 🐛 Bug fix (fixes an issue)
  • 📚 Documentation (docs-only change)
  • 🔧 Maintenance (refactor, chore, CI, etc.)
  • 🧪 Testing (test-only changes)

Testing

  • Relevant checks pass locally (pnpm run tsc, pnpm run lint, pnpm run test)
  • Added/updated tests for changes
  • Manually verified changes work as expected

Additional validation: Node 24.20.0 arm64 install and bundled-prebuild detection; in-memory database query using SQLite 3.53.3; 3,525 core tests; 473 viewer-server tests; Worker node and integration tests; package builds; Worker bundle dry-run; full pnpm run check (5,740 tests); and high-severity Snyk scan with zero findings. Code review returned GO.

Checklist

  • Code follows project style (pnpm run lint passes for touched files)
  • Self-review completed
  • Documentation updated (if needed)
  • No new warnings introduced

kunickiaj commented Sep 2, 2026

Copy link
Copy Markdown
Owner Author

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

This stack of pull requests is managed by Graphite. Learn more about stacking.

@kunickiaj
kunickiaj marked this pull request as ready for review September 2, 2026 16:16
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 2, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-02T16:19:33.021245Z 5197425 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@kunickiaj

Copy link
Copy Markdown
Owner Author

Closing because better-sqlite3 13 fails the required clean-install E2E gate in node:24-bookworm-slim. Its install unconditionally invokes node-gyp and exits when Python is absent, despite bundled prebuilds; the current better-sqlite3 12 path works without adding build tools to runtime images.

@kunickiaj kunickiaj closed this Sep 2, 2026
kunickiaj added a commit that referenced this pull request Sep 2, 2026
## Description

Upgrade better-sqlite3 from 12.8.0 to 13.0.3 and align @types/better-sqlite3 at 9.6.0 across every Drizzle consumer.

Version 13 moves to Node-API and bundles eight platform binaries instead of downloading a Node-version-specific prebuild during installation. pnpm 12.2.1 incorrectly synthesizes node-gyp rebuild despite the package declaring gypfile=false, so this change explicitly denies that unnecessary lifecycle and relies on the bundled binary for the documented x64/arm64 platform set.

The install matrix records the concrete gains, compatibility limits, package-size increase, glibc floor, and runtime-failure behavior for unsupported targets.

Supersedes #1578.

## Type of Change

- [ ] 🚀 Feature (new functionality)
- [ ] 🐛 Bug fix (fixes an issue)
- [ ] 📚 Documentation (docs-only change)
- [x] 🔧 Maintenance (refactor, chore, CI, etc.)
- [ ] 🧪 Testing (test-only changes)

## Testing

- [x] Relevant checks pass locally (`pnpm run tsc`, `pnpm run lint`, `pnpm run test`)
- [ ] Added/updated tests for changes
- [x] Manually verified changes work as expected

Additional validation:

- `pnpm run check` — 235 files, 5,745 tests passed; 3 todo
- `pnpm run build`
- `pnpm install --frozen-lockfile`
- Cloudflare Worker node, integration, bundle, and dry-run checks
- SQLite 3.53.4 runtime probes on Darwin arm64
- Clean Debian Bookworm glibc 2.36 installs and runtime probes on Linux x64 and arm64
- Alpine musl runtime probes with install scripts disabled on Linux x64 and arm64
- One Drizzle 0.45.2 instance and one @types/better-sqlite3 9.6.0 instance confirmed
- Independent CodeReviewer: GO

## Checklist

- [x] Code follows project style (`pnpm run lint` passes for touched files)
- [x] Self-review completed
- [x] Documentation updated (if needed)
- [x] No new warnings introduced
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.

1 participant