Skip to content

Commit f522e2f

Browse files
neoxpertabhaybuch
authored andcommitted
Support builds for Electron v31 (WiseLibs#1200)
* replace v8::CopyablePersistentTraits with v8::Global * add Electron v31 to build tasks
1 parent ffdc124 commit f522e2f

File tree

3 files changed

+11
-4
lines changed

3 files changed

+11
-4
lines changed

.github/workflows/build.yml

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,15 @@ on:
1313
workflow_dispatch: {}
1414

1515
env:
16-
NODE_BUILD_CMD: npx --no-install prebuild -r node -t 18.0.0 -t 20.0.0 -t 21.0.0 --include-regex 'better_sqlite3.node$'
17-
ELECTRON_BUILD_CMD: npx --no-install prebuild -r electron -t 16.0.0 -t 17.0.0 -t 18.0.0 -t 19.0.0 -t 20.0.0 -t 21.0.0 -t 22.0.0 -t 23.0.0 -t 24.0.0 -t 25.0.0 -t 26.0.0 -t 27.0.0 -t 28.0.0 -t 29.0.0 --include-regex 'better_sqlite3.node$'
16+
# See https://github.com/nodejs/release#release-schedule
17+
# Node.js v16 EOL = 2023-09-11. v21 EOL = 2024-06-01.
18+
NODE_BUILD_CMD: npx --no-install prebuild -r node -t 18.0.0 -t 20.0.0 -t 22.0.0 --include-regex 'better_sqlite3.node$'
19+
# Merge with NODE_BUILD_CMD when Node.js v18 is EOL
20+
NO_V18_NODE_BUILD_CMD: npx --no-install prebuild -r node -t 20.0.0 -t 22.0.0 --include-regex 'better_sqlite3.node$'
21+
# See https://www.electronjs.org/docs/latest/tutorial/electron-timelines#version-support-policy
22+
# Electron v25 EOL = 2023-12-05. v26 EOL = 2024-02-20. v27 EOL = 2024-04-16. v28 EOL = 2024-06-11. v29 EOL = 2024-08-20.
23+
ELECTRON_BUILD_CMD: npx --no-install prebuild -r electron -t 26.0.0 -t 27.0.0 -t 28.0.0 -t 29.0.0 -t 30.0.0 -t 31.0.0 --include-regex 'better_sqlite3.node$'
24+
1825

1926
jobs:
2027
test:

src/better_sqlite3.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
#include <node_object_wrap.h>
1818
#include <node_buffer.h>
1919
#line 31 "./src/util/macros.lzz"
20-
template <class T> using CopyablePersistent = v8::Persistent<T, v8::CopyablePersistentTraits<T>>;
20+
template <class T> using CopyablePersistent = v8::Global<T>;
2121
#line 144 "./src/util/macros.lzz"
2222
void SetPrototypeGetter(
2323
v8::Isolate* isolate,

src/util/macros.lzz

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ inline v8::Local<v8::String> InternalizedFromLatin1(v8::Isolate* isolate, const
2828
}
2929

3030
#hdr
31-
template <class T> using CopyablePersistent = v8::Persistent<T, v8::CopyablePersistentTraits<T>>;
31+
template <class T> using CopyablePersistent = v8::Global<T>;
3232
#end
3333
inline void SetFrozen(v8::Isolate* isolate, v8::Local<v8::Context> ctx, v8::Local<v8::Object> obj, CopyablePersistent<v8::String>& key, v8::Local<v8::Value> value) {
3434
obj->DefineOwnProperty(ctx, key.Get(isolate), value, static_cast<v8::PropertyAttribute>(v8::DontDelete | v8::ReadOnly)).FromJust();

0 commit comments

Comments
 (0)