Skip to content

Commit db8e941

Browse files
electron-roller[bot]jkleinsccodebytere
authored
chore: bump node to v22.22.1 (39-x-y) (#50100)
* chore: bump node in DEPS to v22.22.1 * chore: update patches * chore: fixup remove_obsolete_noarraybufferzerofillscope.patch * deps: update simdjson to 4.2.4 nodejs/node#61056 * fix: generate_config_gypi needs to generate valid JSON https: //github.com/nodejs/node/pull/60794 (cherry picked from commit a1d06cd) Co-Authored-By: Shelley Vohr <shelley.vohr@gmail.com> * src: fix off-thread cert loading in bundled cert mode nodejs/node#60764 (cherry picked from commit cb4deec) This test fails on boringssl incompatibilities: https://github.com/electron/electron/pull/49744/changes#r2799802487 Co-Authored-By: Shelley Vohr <shelley.vohr@gmail.com> * test: move sea tests into test/sea nodejs/node#60250 (cherry picked from commit 695929b) * src: fix off-thread cert loading in bundled cert mode nodejs/node#60764 The Node.js cli flag --use-bundled-ca is not supported in Electron --------- Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: John Kleinschmidt <kleinschmidtorama@gmail.com> Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com> Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
1 parent db7ed2b commit db8e941

36 files changed

Lines changed: 230 additions & 388 deletions

File tree

‎DEPS‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ vars = {
44
'chromium_version':
55
'142.0.7444.265',
66
'node_version':
7-
'v22.22.0',
7+
'v22.22.1',
88
'nan_version':
99
'e14bdcd1f72d62bca1d541b66da43130384ec213',
1010
'squirrel.mac_version':

‎patches/node/.patches‎

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,6 @@ cli_move_--trace-atomics-wait_to_eol.patch
4343
fix_cppgc_initializing_twice.patch
4444
fix_task_starvation_in_inspector_context_test.patch
4545
fix_expose_readfilesync_override_for_modules.patch
46-
fix_array_out-of-bounds_read_in_boyer-moore_search.patch
4746
chore_add_missing_include_of_iterator.patch
4847
test_accomodate_v8_thenable_stack_trace_change_in_snapshot.patch
4948
chore_exclude_electron_node_folder_from_exit-time-destructors.patch
@@ -53,7 +52,6 @@ fix_replace_deprecated_setprototype.patch
5352
fix_redefined_macos_sdk_header_symbols.patch
5453
src_use_cp_utf8_for_wide_file_names_on_win32.patch
5554
fix_ensure_traverseparent_bails_on_resource_path_exit.patch
56-
src_handle_der_decoding_errors_from_system_certificates.patch
5755
remove_obsolete_noarraybufferzerofillscope.patch
5856
src_prepare_for_v8_sandboxing.patch
59-
test_correct_conditional_secure_heap_flags_test.patch
57+
fix_generate_config_gypi_needs_to_generate_valid_json.patch

‎patches/node/api_remove_deprecated_getisolate.patch‎

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ Subject: Remove deprecated `GetIsolate`
66
https://chromium-review.googlesource.com/c/v8/v8/+/6905244
77

88
diff --git a/src/api/environment.cc b/src/api/environment.cc
9-
index ceac508418f489a8077c1bc85a2feaf85bf60480..33827edce63c9fe08b52aea59571391a83853443 100644
9+
index d2614bba9463056e931b6d5c1f3153e2f576b779..f3a992b634e9532cba34ec4d54b3a1d0f68a8545 100644
1010
--- a/src/api/environment.cc
1111
+++ b/src/api/environment.cc
12-
@@ -646,7 +646,7 @@ std::unique_ptr<MultiIsolatePlatform> MultiIsolatePlatform::Create(
12+
@@ -651,7 +651,7 @@ std::unique_ptr<MultiIsolatePlatform> MultiIsolatePlatform::Create(
1313

1414
MaybeLocal<Object> GetPerContextExports(Local<Context> context,
1515
IsolateData* isolate_data) {
@@ -18,7 +18,7 @@ index ceac508418f489a8077c1bc85a2feaf85bf60480..33827edce63c9fe08b52aea59571391a
1818
EscapableHandleScope handle_scope(isolate);
1919

2020
Local<Object> global = context->Global();
21-
@@ -692,7 +692,7 @@ void ProtoThrower(const FunctionCallbackInfo<Value>& info) {
21+
@@ -697,7 +697,7 @@ void ProtoThrower(const FunctionCallbackInfo<Value>& info) {
2222
// This runs at runtime, regardless of whether the context
2323
// is created from a snapshot.
2424
Maybe<void> InitializeContextRuntime(Local<Context> context) {
@@ -27,7 +27,7 @@ index ceac508418f489a8077c1bc85a2feaf85bf60480..33827edce63c9fe08b52aea59571391a
2727
HandleScope handle_scope(isolate);
2828

2929
// When `IsCodeGenerationFromStringsAllowed` is true, V8 takes the fast path
30-
@@ -771,7 +771,7 @@ Maybe<void> InitializeContextRuntime(Local<Context> context) {
30+
@@ -776,7 +776,7 @@ Maybe<void> InitializeContextRuntime(Local<Context> context) {
3131
}
3232

3333
Maybe<void> InitializeBaseContextForSnapshot(Local<Context> context) {
@@ -36,7 +36,7 @@ index ceac508418f489a8077c1bc85a2feaf85bf60480..33827edce63c9fe08b52aea59571391a
3636
HandleScope handle_scope(isolate);
3737

3838
// Delete `Intl.v8BreakIterator`
39-
@@ -796,7 +796,7 @@ Maybe<void> InitializeBaseContextForSnapshot(Local<Context> context) {
39+
@@ -801,7 +801,7 @@ Maybe<void> InitializeBaseContextForSnapshot(Local<Context> context) {
4040
}
4141

4242
Maybe<void> InitializeMainContextForSnapshot(Local<Context> context) {
@@ -45,7 +45,7 @@ index ceac508418f489a8077c1bc85a2feaf85bf60480..33827edce63c9fe08b52aea59571391a
4545
HandleScope handle_scope(isolate);
4646

4747
// Initialize the default values.
48-
@@ -814,7 +814,7 @@ Maybe<void> InitializeMainContextForSnapshot(Local<Context> context) {
48+
@@ -819,7 +819,7 @@ Maybe<void> InitializeMainContextForSnapshot(Local<Context> context) {
4949
MaybeLocal<Object> InitializePrivateSymbols(Local<Context> context,
5050
IsolateData* isolate_data) {
5151
CHECK(isolate_data);
@@ -54,7 +54,7 @@ index ceac508418f489a8077c1bc85a2feaf85bf60480..33827edce63c9fe08b52aea59571391a
5454
EscapableHandleScope scope(isolate);
5555
Context::Scope context_scope(context);
5656

57-
@@ -838,7 +838,7 @@ MaybeLocal<Object> InitializePrivateSymbols(Local<Context> context,
57+
@@ -843,7 +843,7 @@ MaybeLocal<Object> InitializePrivateSymbols(Local<Context> context,
5858
MaybeLocal<Object> InitializePerIsolateSymbols(Local<Context> context,
5959
IsolateData* isolate_data) {
6060
CHECK(isolate_data);
@@ -63,7 +63,7 @@ index ceac508418f489a8077c1bc85a2feaf85bf60480..33827edce63c9fe08b52aea59571391a
6363
EscapableHandleScope scope(isolate);
6464
Context::Scope context_scope(context);
6565

66-
@@ -864,7 +864,7 @@ MaybeLocal<Object> InitializePerIsolateSymbols(Local<Context> context,
66+
@@ -869,7 +869,7 @@ MaybeLocal<Object> InitializePerIsolateSymbols(Local<Context> context,
6767
Maybe<void> InitializePrimordials(Local<Context> context,
6868
IsolateData* isolate_data) {
6969
// Run per-context JS files.
@@ -85,10 +85,10 @@ index 6f731b17fe0b84dd3d2c9bc9cfef1f8062a2c5f7..71a1072ed2decbee08d40eda7c47456b
8585

8686
return handle;
8787
diff --git a/src/crypto/crypto_context.cc b/src/crypto/crypto_context.cc
88-
index 8f50d0cc132ac65fa74cf1fc2172247b5ad42962..0c6b12f8e17b4a7e86ebc836a4e1cc77333f211a 100644
88+
index 2cd7cd67c1c480eb9ec549a12bc2b9584d5a53b3..081a4ccdee718afc63b55da90a60ef9758dcc96a 100644
8989
--- a/src/crypto/crypto_context.cc
9090
+++ b/src/crypto/crypto_context.cc
91-
@@ -1020,7 +1020,7 @@ bool ArrayOfStringsToX509s(Local<Context> context,
91+
@@ -1043,7 +1043,7 @@ bool ArrayOfStringsToX509s(Local<Context> context,
9292
Local<Array> cert_array,
9393
std::vector<X509*>* certs) {
9494
ClearErrorOnReturn clear_error_on_return;
@@ -144,7 +144,7 @@ index eb6dad44a49d997097c8fb5009eeb60a7305da27..fd29d17de195017970856ce30d7a9c57
144144
NewStringType::kNormal,
145145
mem->length)
146146
diff --git a/src/encoding_binding.cc b/src/encoding_binding.cc
147-
index 31ed995714bb99ab534f26ba9ebc6051c258a1c9..5ace688bb7ffc86eedf5aff11ab0ab487ad9440e 100644
147+
index cddc88f1e0309072d22aa76d4a17115e4d9159e2..22eecffa437a9e0f4a0e170953aa35fa527511b5 100644
148148
--- a/src/encoding_binding.cc
149149
+++ b/src/encoding_binding.cc
150150
@@ -73,7 +73,7 @@ void BindingData::Deserialize(Local<Context> context,
@@ -183,10 +183,10 @@ index c6209cc7cf317de1bb9217e39dd760e5a83303e2..161d577e0ea6a251c83ba1903b1ec9a5
183183
} else {
184184
info.js_execution_async_resources = 0;
185185
diff --git a/src/inspector/network_agent.cc b/src/inspector/network_agent.cc
186-
index 3b5d9615021101ad03d9dfef83e0c56b462b59ad..823e7b8d3d07eb2afa1cc62d3d9e2af20f4e2e89 100644
186+
index 57ea5afd56a4e3c4c5826a263ce498448effbb84..c2c17760022ab669188a774e91ca96c9a5d7f57e 100644
187187
--- a/src/inspector/network_agent.cc
188188
+++ b/src/inspector/network_agent.cc
189-
@@ -29,31 +29,31 @@ using v8::Value;
189+
@@ -31,31 +31,31 @@ constexpr size_t kDefaultMaxTotalBufferSize = 100 * 1024 * 1024; // 100MB
190190
Maybe<protocol::String> ObjectGetProtocolString(v8::Local<v8::Context> context,
191191
Local<Object> object,
192192
Local<v8::String> property) {
@@ -224,7 +224,7 @@ index 3b5d9615021101ad03d9dfef83e0c56b462b59ad..823e7b8d3d07eb2afa1cc62d3d9e2af2
224224
.ToLocal(&value) ||
225225
!value->IsNumber()) {
226226
return Nothing<double>();
227-
@@ -65,9 +65,9 @@ Maybe<double> ObjectGetDouble(v8::Local<v8::Context> context,
227+
@@ -67,9 +67,9 @@ Maybe<double> ObjectGetDouble(v8::Local<v8::Context> context,
228228
Maybe<int> ObjectGetInt(v8::Local<v8::Context> context,
229229
Local<Object> object,
230230
const char* property) {
@@ -236,7 +236,7 @@ index 3b5d9615021101ad03d9dfef83e0c56b462b59ad..823e7b8d3d07eb2afa1cc62d3d9e2af2
236236
.ToLocal(&value) ||
237237
!value->IsInt32()) {
238238
return Nothing<int>();
239-
@@ -79,9 +79,9 @@ Maybe<int> ObjectGetInt(v8::Local<v8::Context> context,
239+
@@ -81,9 +81,9 @@ Maybe<int> ObjectGetInt(v8::Local<v8::Context> context,
240240
Maybe<bool> ObjectGetBool(v8::Local<v8::Context> context,
241241
Local<Object> object,
242242
const char* property) {
@@ -248,7 +248,7 @@ index 3b5d9615021101ad03d9dfef83e0c56b462b59ad..823e7b8d3d07eb2afa1cc62d3d9e2af2
248248
.ToLocal(&value) ||
249249
!value->IsBoolean()) {
250250
return Nothing<bool>();
251-
@@ -93,9 +93,9 @@ Maybe<bool> ObjectGetBool(v8::Local<v8::Context> context,
251+
@@ -95,9 +95,9 @@ Maybe<bool> ObjectGetBool(v8::Local<v8::Context> context,
252252
MaybeLocal<v8::Object> ObjectGetObject(v8::Local<v8::Context> context,
253253
Local<Object> object,
254254
const char* property) {
@@ -260,7 +260,7 @@ index 3b5d9615021101ad03d9dfef83e0c56b462b59ad..823e7b8d3d07eb2afa1cc62d3d9e2af2
260260
.ToLocal(&value) ||
261261
!value->IsObject()) {
262262
return {};
263-
@@ -106,7 +106,7 @@ MaybeLocal<v8::Object> ObjectGetObject(v8::Local<v8::Context> context,
263+
@@ -108,7 +108,7 @@ MaybeLocal<v8::Object> ObjectGetObject(v8::Local<v8::Context> context,
264264
// Create a protocol::Network::Headers from the v8 object.
265265
std::unique_ptr<protocol::Network::Headers> createHeadersFromObject(
266266
v8::Local<v8::Context> context, Local<Object> headers_obj) {
@@ -269,7 +269,7 @@ index 3b5d9615021101ad03d9dfef83e0c56b462b59ad..823e7b8d3d07eb2afa1cc62d3d9e2af2
269269

270270
std::unique_ptr<protocol::DictionaryValue> dict =
271271
protocol::DictionaryValue::create();
272-
@@ -127,7 +127,7 @@ std::unique_ptr<protocol::Network::Headers> createHeadersFromObject(
272+
@@ -129,7 +129,7 @@ std::unique_ptr<protocol::Network::Headers> createHeadersFromObject(
273273
.To(&property_value)) {
274274
return {};
275275
}
@@ -278,7 +278,7 @@ index 3b5d9615021101ad03d9dfef83e0c56b462b59ad..823e7b8d3d07eb2afa1cc62d3d9e2af2
278278
property_value);
279279
}
280280

281-
@@ -137,7 +137,7 @@ std::unique_ptr<protocol::Network::Headers> createHeadersFromObject(
281+
@@ -139,7 +139,7 @@ std::unique_ptr<protocol::Network::Headers> createHeadersFromObject(
282282
// Create a protocol::Network::Request from the v8 object.
283283
std::unique_ptr<protocol::Network::Request> createRequestFromObject(
284284
v8::Local<v8::Context> context, Local<Object> request) {
@@ -287,7 +287,7 @@ index 3b5d9615021101ad03d9dfef83e0c56b462b59ad..823e7b8d3d07eb2afa1cc62d3d9e2af2
287287
protocol::String url;
288288
if (!ObjectGetProtocolString(context, request, "url").To(&url)) {
289289
return {};
290-
@@ -169,7 +169,7 @@ std::unique_ptr<protocol::Network::Request> createRequestFromObject(
290+
@@ -171,7 +171,7 @@ std::unique_ptr<protocol::Network::Request> createRequestFromObject(
291291
// Create a protocol::Network::Response from the v8 object.
292292
std::unique_ptr<protocol::Network::Response> createResponseFromObject(
293293
v8::Local<v8::Context> context, Local<Object> response) {
@@ -359,10 +359,10 @@ index 4a35e41e78a22993f87ab9d5919f401a7b742438..327d7b77bc306db8193fa68bc7129c33
359359
CHECK(!env->temporary_required_module_facade_original.IsEmpty());
360360
return env->temporary_required_module_facade_original.Get(isolate);
361361
diff --git a/src/node.h b/src/node.h
362-
index 16a0c71aef949b0ddd27def9dc843298f9a6b75f..28fa4cb3e7a621480a5ff11c48666c0de1363375 100644
362+
index fe44369dff7519ea0d960ae478d5caf524e17366..bba7393e7378fa7468837319af7b7f643b68167e 100644
363363
--- a/src/node.h
364364
+++ b/src/node.h
365-
@@ -1050,7 +1050,7 @@ NODE_DEPRECATED("Use v8::Date::ValueOf() directly",
365+
@@ -1049,7 +1049,7 @@ NODE_DEPRECATED("Use v8::Date::ValueOf() directly",
366366

367367
#define NODE_DEFINE_CONSTANT(target, constant) \
368368
do { \
@@ -371,7 +371,7 @@ index 16a0c71aef949b0ddd27def9dc843298f9a6b75f..28fa4cb3e7a621480a5ff11c48666c0d
371371
v8::Local<v8::Context> context = isolate->GetCurrentContext(); \
372372
v8::Local<v8::String> constant_name = v8::String::NewFromUtf8Literal( \
373373
isolate, #constant, v8::NewStringType::kInternalized); \
374-
@@ -1066,7 +1066,7 @@ NODE_DEPRECATED("Use v8::Date::ValueOf() directly",
374+
@@ -1065,7 +1065,7 @@ NODE_DEPRECATED("Use v8::Date::ValueOf() directly",
375375

376376
#define NODE_DEFINE_HIDDEN_CONSTANT(target, constant) \
377377
do { \
@@ -539,10 +539,10 @@ index 36a21b9523351fe2f225ffe7fca184d737640b62..c6e9e2c00064348c435ae10871a4013c
539539
READONLY_PROPERTY(target, "exitCodes", exit_codes);
540540

541541
diff --git a/src/node_file.cc b/src/node_file.cc
542-
index 5de3ebb04b12286a07e3041d0a6dd1cc9072e76a..75be21c9e8b413f522240a906da06d26c44d5b71 100644
542+
index 9f888b28ecb05f3496c0b18fdd6a2c1cc9b068fd..57c8dc35dc86efed6e8736e4649b90905a8da54b 100644
543543
--- a/src/node_file.cc
544544
+++ b/src/node_file.cc
545-
@@ -3755,7 +3755,7 @@ void BindingData::Deserialize(Local<Context> context,
545+
@@ -3761,7 +3761,7 @@ void BindingData::Deserialize(Local<Context> context,
546546
int index,
547547
InternalFieldInfoBase* info) {
548548
DCHECK_IS_SNAPSHOT_SLOT(index);
@@ -627,7 +627,7 @@ index 9dcca7509f37f239b8442201b086df428415dcd1..b0cf8c3a8e1c3e89d621a865390b1bdb
627627
// Recreate the buffer in the constructor.
628628
InternalFieldInfo* casted_info = static_cast<InternalFieldInfo*>(info);
629629
diff --git a/src/node_realm.cc b/src/node_realm.cc
630-
index 66a8ee48fc68b22eaf6c9d9209cc5cb2439e55ff..b31e244f8af7d37c35319853a478776c609b9bca 100644
630+
index b6461c7bb009fa3f44cb0225eec49dbb161d81fd..5ffe23beb7b33f8becf5ba997fea2119e9aa23cf 100644
631631
--- a/src/node_realm.cc
632632
+++ b/src/node_realm.cc
633633
@@ -19,7 +19,7 @@ using v8::String;
@@ -740,7 +740,7 @@ index 9b5ada71c174567498c4902259d97f9d11fefb91..1134856a202bac0a4ff1957d5ecc5600
740740
if (wasi->memory_.IsEmpty()) {
741741
THROW_ERR_WASI_NOT_STARTED(isolate);
742742
diff --git a/src/node_webstorage.cc b/src/node_webstorage.cc
743-
index e3c3223789032badbab56a558148da67e99ca9b2..9a7b7db881a564a68683c55cb10919454e80edbf 100644
743+
index a442a479b8732ef793aaf3bf57decc4f324eb816..d6dee522023a4e65d948b1554e9ae472f1e96e40 100644
744744
--- a/src/node_webstorage.cc
745745
+++ b/src/node_webstorage.cc
746746
@@ -58,7 +58,7 @@ using v8::Value;
@@ -752,7 +752,7 @@ index e3c3223789032badbab56a558148da67e99ca9b2..9a7b7db881a564a68683c55cb1091945
752752
auto dom_exception_str = FIXED_ONE_BYTE_STRING(isolate, "DOMException");
753753
auto err_name = FIXED_ONE_BYTE_STRING(isolate, "QuotaExceededError");
754754
auto err_message =
755-
@@ -434,7 +434,7 @@ Maybe<void> Storage::Store(Local<Name> key, Local<Value> value) {
755+
@@ -438,7 +438,7 @@ Maybe<void> Storage::Store(Local<Name> key, Local<Value> value) {
756756
}
757757

758758
static MaybeLocal<String> Uint32ToName(Local<Context> context, uint32_t index) {
@@ -762,10 +762,10 @@ index e3c3223789032badbab56a558148da67e99ca9b2..9a7b7db881a564a68683c55cb1091945
762762

763763
static void Clear(const FunctionCallbackInfo<Value>& info) {
764764
diff --git a/src/node_worker.cc b/src/node_worker.cc
765-
index 8555ab556b5b74a1cf9cf30747f1f417bfe4e4d9..1a2532337504444d59098304b87e0d65f16e838c 100644
765+
index ddfea91272d03d4ef1d4ac1b982ada5dcd24b601..7b4335475cc70369a1e868de70c749465a5bdfbd 100644
766766
--- a/src/node_worker.cc
767767
+++ b/src/node_worker.cc
768-
@@ -1289,8 +1289,6 @@ void GetEnvMessagePort(const FunctionCallbackInfo<Value>& args) {
768+
@@ -1288,8 +1288,6 @@ void GetEnvMessagePort(const FunctionCallbackInfo<Value>& args) {
769769
Local<Object> port = env->message_port();
770770
CHECK_IMPLIES(!env->is_main_thread(), !port.IsEmpty());
771771
if (!port.IsEmpty()) {

‎patches/node/build_add_gn_build_files.patch‎

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ really in 20/21. We have to wait until 22 is released to be able to
1111
build with upstream GN files.
1212

1313
diff --git a/configure.py b/configure.py
14-
index 91283ca577f580dbf1e0c4e2dbf851a9ceaa38ed..e8eaff30ec947677db2d45425f9180759d0c55de 100755
14+
index 77c87f5a9539714f68278d95ec79878cc52dc18b..ff93eebd4714ac8d9c9abe9c53e3636f02e0baac 100755
1515
--- a/configure.py
1616
+++ b/configure.py
1717
@@ -1728,7 +1728,7 @@ def configure_v8(o, configs):
@@ -93,7 +93,7 @@ index f9426599f2d5dc6ad061407f0c4eb2c9203a4433..302030f610965f07dd6998d282275c1b
9393
// Handles compilation and caching of built-in JavaScript modules and
9494
// bootstrap scripts, whose source are bundled into the binary as static data.
9595
diff --git a/tools/install.py b/tools/install.py
96-
index 8797b59e59c85a8877b977fa3281e50165e6f6b2..0af01e075616195f38fb242626dcab770ec1eb57 100755
96+
index a619fd17b16e404cf8deb5b91f7dbd980895f760..2b981b23e724120f69a5f7ef655e5f648aa310e9 100755
9797
--- a/tools/install.py
9898
+++ b/tools/install.py
9999
@@ -222,6 +222,7 @@ def headers(options, action):
@@ -115,7 +115,7 @@ index 8797b59e59c85a8877b977fa3281e50165e6f6b2..0af01e075616195f38fb242626dcab77
115115
diff --git a/tools/js2c.cc b/tools/js2c.cc
116116
old mode 100644
117117
new mode 100755
118-
index 21992cbe894a880e3223c379326b62db22f2f12d..1296a5457422099035ba34f2b02624f2e9dfb0f0
118+
index 9c2f70de4e00834ff448e573743898072dc14c5d..71a12c606f4da7165cc41a295a278b2e504af1b6
119119
--- a/tools/js2c.cc
120120
+++ b/tools/js2c.cc
121121
@@ -28,6 +28,7 @@ namespace js2c {
@@ -210,7 +210,7 @@ index 21992cbe894a880e3223c379326b62db22f2f12d..1296a5457422099035ba34f2b02624f2
210210
static_cast<int>(def_buf.size()),
211211
def_buf.data(),
212212
static_cast<int>(init_buf.size()),
213-
@@ -846,12 +890,15 @@ int JS2C(const FileList& js_files,
213+
@@ -836,12 +880,15 @@ int JS2C(const FileList& js_files,
214214
}
215215
}
216216

@@ -226,7 +226,7 @@ index 21992cbe894a880e3223c379326b62db22f2f12d..1296a5457422099035ba34f2b02624f2
226226
Fragment out = Format(definitions, initializers, registrations);
227227
return WriteIfChanged(out, dest);
228228
}
229-
@@ -877,6 +924,8 @@ int Main(int argc, char* argv[]) {
229+
@@ -867,6 +914,8 @@ int Main(int argc, char* argv[]) {
230230
std::string arg(argv[i]);
231231
if (arg == "--verbose") {
232232
is_verbose = true;
@@ -235,7 +235,7 @@ index 21992cbe894a880e3223c379326b62db22f2f12d..1296a5457422099035ba34f2b02624f2
235235
} else if (arg == "--root") {
236236
if (i == argc - 1) {
237237
fprintf(stderr, "--root must be followed by a path\n");
238-
@@ -925,6 +974,14 @@ int Main(int argc, char* argv[]) {
238+
@@ -915,6 +964,14 @@ int Main(int argc, char* argv[]) {
239239
}
240240
}
241241

@@ -250,7 +250,7 @@ index 21992cbe894a880e3223c379326b62db22f2f12d..1296a5457422099035ba34f2b02624f2
250250
// Should have exactly 3 types: `.js`, `.mjs` and `.gypi`.
251251
assert(file_map.size() == 3);
252252
auto gypi_it = file_map.find(".gypi");
253-
@@ -951,6 +1008,7 @@ int Main(int argc, char* argv[]) {
253+
@@ -941,6 +998,7 @@ int Main(int argc, char* argv[]) {
254254
std::sort(mjs_it->second.begin(), mjs_it->second.end());
255255

256256
return JS2C(js_it->second, mjs_it->second, gypi_it->second[0], output);

‎patches/node/build_compile_with_c_20_support.patch‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@ V8 requires C++20 support as of https://chromium-review.googlesource.com/c/v8/v8
1010
This can be removed when Electron upgrades to a version of Node.js containing the required V8 version.
1111

1212
diff --git a/common.gypi b/common.gypi
13-
index c28d6f5fe2c922f0b1e3f7e56289c78e7b91c294..95c56305926fc3e0e46e4cf99ec86d3d1b5576a7 100644
13+
index 4cb925480961ae88eb423559ab34ac0ee91239e4..bbfc0f4ec293df19662e57fa4890c4c53cd79d75 100644
1414
--- a/common.gypi
1515
+++ b/common.gypi
16-
@@ -539,7 +539,7 @@
16+
@@ -536,7 +536,7 @@
1717
'-fno-rtti',
1818
'-fno-exceptions',
1919
'-fno-strict-aliasing',
@@ -22,7 +22,7 @@ index c28d6f5fe2c922f0b1e3f7e56289c78e7b91c294..95c56305926fc3e0e46e4cf99ec86d3d
2222
],
2323
'defines': [ '__STDC_FORMAT_MACROS' ],
2424
'ldflags': [ '-rdynamic' ],
25-
@@ -719,7 +719,7 @@
25+
@@ -716,7 +716,7 @@
2626
['clang==1', {
2727
'xcode_settings': {
2828
'GCC_VERSION': 'com.apple.compilers.llvm.clang.1_0',

0 commit comments

Comments
 (0)