Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 13 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@ on:

env:
# See https://github.com/nodejs/release#release-schedule
# Node.js v20 EOL = 2026-04-30. v22 EOL = 2027-04-30. v23 EOL = 2025-06-01. v24 EOL = 2028-04-30. v25 EOL = 2026-06-01.
# Node.js v20 EOL = 2026-04-30. v22 EOL = 2027-04-30. v23 EOL = 2025-06-01. v24 EOL = 2028-04-30. v25 EOL = 2026-06-01. v26 EOL = TBD.
# Node.js 20-24 can build with GCC 10 (bullseye)
NODE_BUILD_CMD_LEGACY: npx --no-install prebuild -r node -t 20.0.0 -t 22.0.0 -t 23.0.0 -t 24.0.0 --include-regex '_sqlite3'
# Node.js 25+ requires GCC 11+ for <source_location> header (bookworm)
NODE_BUILD_CMD_MODERN: npx --no-install prebuild -r node -t 25.0.0 --include-regex '_sqlite3'
NODE_BUILD_CMD_MODERN: npx --no-install prebuild -r node -t 25.0.0 -t 26.0.0 --include-regex '_sqlite3'

jobs:
test:
Expand All @@ -33,6 +33,17 @@ jobs:
node:
- 22
- 24
- 26
# Node 26 on Windows can't build: Node 26's bundled gyp config feeds
# Clang/LLD ThinLTO flags (-flto=thin, /opt:lldltojobs) into the MSVC link
# step, which link.exe rejects (LNK1117). Upstream Node 26 + MSVC toolchain
# bug -- our build sets no LTO flags, and Node <=25 on Windows is fine.
# Revisit when the upstream toolchain is fixed. (Node 26 prebuilds still
# ship for macOS/Linux via NODE_BUILD_CMD_MODERN; the release-time Windows
# prebuild will need the same exclusion before it builds Node 26.)
exclude:
- os: windows-2022
node: 26
name: Testing Node ${{ matrix.node }} on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
steps:
Expand Down
1 change: 1 addition & 0 deletions deps/defines.gypi
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
'SQLITE_ENABLE_GEOPOLY',
'SQLITE_ENABLE_JSON1',
'SQLITE_ENABLE_MATH_FUNCTIONS',
'SQLITE_ENABLE_PERCENTILE',
'SQLITE_ENABLE_RTREE',
'SQLITE_ENABLE_STAT4',
'SQLITE_ENABLE_STMT_SCANSTATUS',
Expand Down
1 change: 1 addition & 0 deletions deps/download.sh
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ SQLITE_ENABLE_FTS5
SQLITE_ENABLE_GEOPOLY
SQLITE_ENABLE_JSON1
SQLITE_ENABLE_MATH_FUNCTIONS
SQLITE_ENABLE_PERCENTILE
SQLITE_ENABLE_RTREE
SQLITE_ENABLE_STAT4
SQLITE_ENABLE_STMT_SCANSTATUS
Expand Down
1 change: 1 addition & 0 deletions docs/compilation.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ SQLITE_ENABLE_FTS5
SQLITE_ENABLE_GEOPOLY
SQLITE_ENABLE_JSON1
SQLITE_ENABLE_MATH_FUNCTIONS
SQLITE_ENABLE_PERCENTILE
SQLITE_ENABLE_RTREE
SQLITE_ENABLE_STAT4
SQLITE_ENABLE_STMT_SCANSTATUS
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
"chai": "^4.3.8",
"cli-color": "^2.0.3",
"fs-extra": "^11.1.1",
"mocha": "^10.2.0",
"mocha": "^11.7.5",
"nodemark": "^0.3.0",
"prebuild": "^13.0.1",
"sqlite": "^5.0.1",
Expand Down
Loading