chore: bump node to v18.16.0 (main) (#37973)

* chore: bump node in DEPS to v18.16.0

* build,test: add proper support for IBM i

https://github.com/nodejs/node/pull/46739

* lib: enforce use of trailing commas

https://github.com/nodejs/node/pull/46881

* src: add initial support for single executable applications

https://github.com/nodejs/node/pull/45038

* lib: do not crash using workers with disabled shared array buffers

https://github.com/nodejs/node/pull/41023

* src: remove shadowed variable in OptionsParser::Parse

https://github.com/nodejs/node/pull/46672

* src: allow embedder control of code generation policy

https://github.com/nodejs/node/pull/46368

* src: allow optional Isolate termination in node::Stop()

https://github.com/nodejs/node/pull/46583

* lib: fix BroadcastChannel initialization location

https://github.com/nodejs/node/pull/46864

* chore: fixup patch indices

* chore: sync filenames.json

* fix: add simdutf dep to src/inspector BUILD.gn

- https://github.com/nodejs/node/pull/46471
- https://github.com/nodejs/node/pull/46472

* deps: replace url parser with Ada

https://github.com/nodejs/node/pull/46410

* tls: support automatic DHE

https://github.com/nodejs/node/pull/46978

* fixup! src: add initial support for single executable applications

* http: unify header treatment

https://github.com/nodejs/node/pull/46528

* fix: libc++ buffer overflow in string_view ctor

https://github.com/nodejs/node/pull/46410

* test: include strace openat test

https://github.com/nodejs/node/pull/46150

* fixup! fixup! src: add initial support for single executable applications

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
This commit is contained in:
electron-roller[bot] 2023-04-18 22:23:11 +02:00 committed by GitHub
parent 941153be32
commit de192c2db2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
35 changed files with 240 additions and 360 deletions

View file

@ -7,10 +7,10 @@ This adds GN build files for Node, so we don't have to build with GYP.
diff --git a/BUILD.gn b/BUILD.gn
new file mode 100644
index 0000000000000000000000000000000000000000..5e8577795316984f3073204523d82a17f44b0f88
index 0000000000000000000000000000000000000000..a3e4599c21f2faa92a0dca47b1e0b4e836bb475d
--- /dev/null
+++ b/BUILD.gn
@@ -0,0 +1,439 @@
@@ -0,0 +1,443 @@
+import("//v8/gni/v8.gni")
+import("node.gni")
+
@ -223,6 +223,7 @@ index 0000000000000000000000000000000000000000..5e8577795316984f3073204523d82a17
+ deps = [
+ ":node_js2c",
+ "deps/googletest:gtest",
+ "deps/ada",
+ "deps/base64",
+ "deps/simdutf",
+ "deps/uvwasi",
@ -248,7 +249,10 @@ index 0000000000000000000000000000000000000000..5e8577795316984f3073204523d82a17
+ ]
+ configs += [ ":node_internal_config" ]
+ public_configs = [ ":node_lib_config" ]
+ include_dirs = [ "src" ]
+ include_dirs = [
+ "src",
+ "deps/postject"
+ ]
+ libs = []
+ if (use_system_llhttp) {
+ libs += [ "llhttp" ]
@ -450,6 +454,40 @@ index 0000000000000000000000000000000000000000..5e8577795316984f3073204523d82a17
+ ":tar_headers",
+ ]
+}
diff --git a/deps/ada/BUILD.gn b/deps/ada/BUILD.gn
new file mode 100644
index 0000000000000000000000000000000000000000..a564653c3f05608d59fed5aa071d63b81f4e0e42
--- /dev/null
+++ b/deps/ada/BUILD.gn
@@ -0,0 +1,28 @@
+import("//v8/gni/v8.gni")
+
+config("ada_config") {
+ include_dirs = [ "." ]
+}
+
+static_library("ada") {
+ include_dirs = [ "." ]
+ sources = [ "ada.cpp" ]
+
+ public_configs = [ ":ada_config" ]
+
+ defines = []
+ deps = []
+
+ if (v8_enable_i18n_support) {
+ deps += [
+ "//third_party/icu:icui18n",
+ "//third_party/icu:icuuc",
+ ]
+
+ if (is_win) {
+ deps += [ "//third_party/icu:icudata" ]
+ }
+ } else {
+ defines += [ "ADA_HAS_ICU=0" ]
+ }
+}
diff --git a/deps/base64/BUILD.gn b/deps/base64/BUILD.gn
new file mode 100644
index 0000000000000000000000000000000000000000..694e1991bb11c9ea85fcc69a0e06265d4b0c5aab
@ -1220,10 +1258,10 @@ index 0000000000000000000000000000000000000000..2c9d2826c85bdd033f1df1d6188df636
+}
diff --git a/filenames.json b/filenames.json
new file mode 100644
index 0000000000000000000000000000000000000000..71173dd5c0958d473972dfb397f230df6309b413
index 0000000000000000000000000000000000000000..bfed2576bda1371c35533bcf50888f84d82b57f3
--- /dev/null
+++ b/filenames.json
@@ -0,0 +1,659 @@
@@ -0,0 +1,663 @@
+// This file is automatically generated by generate_gn_filenames_json.py
+// DO NOT EDIT
+{
@ -1478,6 +1516,7 @@ index 0000000000000000000000000000000000000000..71173dd5c0958d473972dfb397f230df
+ "lib/internal/main/prof_process.js",
+ "lib/internal/main/repl.js",
+ "lib/internal/main/run_main_module.js",
+ "lib/internal/main/single_executable_application.js",
+ "lib/internal/main/test_runner.js",
+ "lib/internal/main/watch_mode.js",
+ "lib/internal/main/worker_thread.js",
@ -1498,6 +1537,7 @@ index 0000000000000000000000000000000000000000..71173dd5c0958d473972dfb397f230df
+ "lib/internal/modules/esm/package_config.js",
+ "lib/internal/modules/esm/resolve.js",
+ "lib/internal/modules/esm/translators.js",
+ "lib/internal/modules/esm/utils.js",
+ "lib/internal/modules/package_json_reader.js",
+ "lib/internal/modules/run_main.js",
+ "lib/internal/net.js",
@ -1731,6 +1771,7 @@ index 0000000000000000000000000000000000000000..71173dd5c0958d473972dfb397f230df
+ "src/node_report.cc",
+ "src/node_report_module.cc",
+ "src/node_report_utils.cc",
+ "src/node_sea.cc",
+ "src/node_serdes.cc",
+ "src/node_shadow_realm.cc",
+ "src/node_snapshotable.cc",
@ -1741,7 +1782,6 @@ index 0000000000000000000000000000000000000000..71173dd5c0958d473972dfb397f230df
+ "src/node_trace_events.cc",
+ "src/node_types.cc",
+ "src/node_url.cc",
+ "src/node_url_tables.cc",
+ "src/node_util.cc",
+ "src/node_v8.cc",
+ "src/node_wasi.cc",
@ -1840,6 +1880,7 @@ index 0000000000000000000000000000000000000000..71173dd5c0958d473972dfb397f230df
+ "src/node_report.h",
+ "src/node_revert.h",
+ "src/node_root_certs.h",
+ "src/node_sea.h",
+ "src/node_shadow_realm.h",
+ "src/node_snapshotable.h",
+ "src/node_snapshot_builder.h",
@ -1880,7 +1921,8 @@ index 0000000000000000000000000000000000000000..71173dd5c0958d473972dfb397f230df
+ "src/udp_wrap.h",
+ "src/util.h",
+ "src/util-inl.h",
+ "//v8/include/v8.h"
+ "//v8/include/v8.h",
+ "deps/postject/postject-api.h"
+ ]
+}
diff --git a/node.gni b/node.gni
@ -1918,12 +1960,25 @@ index 0000000000000000000000000000000000000000..9b1a4048a4a64c36d88de0bbe1a548c9
+ args += invoker.args
+ }
+}
diff --git a/node.gyp b/node.gyp
index cf52281bb4479ba20fbe852518edadc2185f0dae..81254f1d4fff9be925ecbb85fb0811c0909900dd 100644
--- a/node.gyp
+++ b/node.gyp
@@ -687,7 +687,7 @@
'src/util-inl.h',
# Dependency headers
'deps/v8/include/v8.h',
- 'deps/postject/postject-api.h'
+ 'deps/postject/postject-api.h',
# javascript files to make for an even more pleasant IDE experience
'<@(library_files)',
'<@(deps_files)',
diff --git a/src/inspector/BUILD.gn b/src/inspector/BUILD.gn
new file mode 100644
index 0000000000000000000000000000000000000000..d1d6b51e8c0c5bc6a5d09e217eb3048361d9d591
index 0000000000000000000000000000000000000000..4ab828dcbf322a9e28674e48c4a6868bd1321be2
--- /dev/null
+++ b/src/inspector/BUILD.gn
@@ -0,0 +1,199 @@
@@ -0,0 +1,200 @@
+import("//v8/gni/v8.gni")
+
+inspector_protocol_dir = "../../tools/inspector_protocol"
@ -1983,6 +2038,7 @@ index 0000000000000000000000000000000000000000..d1d6b51e8c0c5bc6a5d09e217eb30483
+ ":protocol_generated_sources",
+ ":v8_inspector_compress_protocol_json",
+ "../../deps/uv",
+ "../../deps/simdutf",
+ "//third_party/icu:icuuc",
+ ]
+ configs += [ "../..:node_internal_config" ]
@ -2124,7 +2180,7 @@ index 0000000000000000000000000000000000000000..d1d6b51e8c0c5bc6a5d09e217eb30483
+ args = rebase_path(inputs + outputs, root_build_dir)
+}
diff --git a/src/node_version.h b/src/node_version.h
index ee035efadf123464a7b4696a6351364a642cd947..afb9c47cc9324a6197a66e58bc59d40afc37dcf8 100644
index cfab30173a4311582b1ebdc5a1b84b37117a8e69..c254fe22f9e2bc0f1746e773f7ecb0d1db31294b 100644
--- a/src/node_version.h
+++ b/src/node_version.h
@@ -89,7 +89,10 @@
@ -2257,7 +2313,7 @@ index 0000000000000000000000000000000000000000..2a92eccfa582df361f2a889c0d9b32c1
+
+ out_file.writelines(new_contents)
diff --git a/tools/install.py b/tools/install.py
index 9d5f4a48bca2c926b3ffb3c51c070222d4f7ce7b..c9ea9f67d3ccb213db3a5d149f0458987e855c08 100755
index f13f2ecd662a5fb985839b394b45319c091b56d4..21bc48324946d52ed2b1c9eec35c1fcd4c536570 100755
--- a/tools/install.py
+++ b/tools/install.py
@@ -202,60 +202,74 @@ def files(action):
@ -2389,7 +2445,7 @@ index 9d5f4a48bca2c926b3ffb3c51c070222d4f7ce7b..c9ea9f67d3ccb213db3a5d149f045898
action(files_arg, dest)
@@ -282,7 +296,7 @@ def headers(action):
if sys.platform.startswith('aix'):
if sys.platform.startswith('aix') or sys.platform == "os400":
action(['out/Release/node.exp'], 'include/node/')
- subdir_files('deps/v8/include', 'include/node/', wanted_v8_headers)
@ -2398,7 +2454,7 @@ index 9d5f4a48bca2c926b3ffb3c51c070222d4f7ce7b..c9ea9f67d3ccb213db3a5d149f045898
if 'false' == variables.get('node_shared_libuv'):
subdir_files('deps/uv/include', 'include/node/', action)
diff --git a/tools/js2c.py b/tools/js2c.py
index e295949a18508d7989f0925093a9dd6a284fecd6..8ba46c5d78c5c86d9f7b8b6972f3febbe87de61e 100755
index f9c202e861b986e3171aa21079c3b29f51fe0398..ef24c4de0aaa2cd5f3c06e5bd8dd90de2b30ffcb 100755
--- a/tools/js2c.py
+++ b/tools/js2c.py
@@ -131,6 +131,14 @@ def NormalizeFileName(filename):