node-linux-arm64 19.0.1 → 19.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +398 -1
- package/LICENSE +15 -8
- package/README.md +23 -8
- package/bin/node +0 -0
- package/include/node/common.gypi +2 -6
- package/include/node/config.gypi +13 -3
- package/include/node/js_native_api.h +2 -0
- package/include/node/js_native_api_types.h +2 -1
- package/include/node/node.h +19 -2
- package/include/node/node_api.h +6 -4
- package/include/node/node_api_types.h +5 -0
- package/include/node/node_version.h +2 -2
- package/include/node/uv/version.h +2 -2
- package/include/node/uv/win.h +14 -15
- package/include/node/uv.h +3 -2
- package/include/node/v8-array-buffer.h +8 -0
- package/include/node/v8-context.h +1 -0
- package/include/node/v8-internal.h +16 -1
- package/include/node/v8-isolate.h +1 -0
- package/include/node/v8-version.h +3 -3
- package/include/node/v8config.h +33 -0
- package/include/node/zconf.h +16 -3
- package/include/node/zlib.h +137 -108
- package/package.json +1 -1
- package/share/doc/node/gdbinit +61 -0
- package/share/man/man1/node.1 +1 -0
- package/include/node/uv/android-ifaddrs.h +0 -54
package/README.md
CHANGED
|
@@ -266,12 +266,14 @@ For information about the governance of the Node.js project, see
|
|
|
266
266
|
**Anna Henningsen** <<anna@addaleax.net>> (she/her)
|
|
267
267
|
* [aduh95](https://github.com/aduh95) -
|
|
268
268
|
**Antoine du Hamel** <<duhamelantoine1995@gmail.com>> (he/him)
|
|
269
|
+
* [anonrig](https://github.com/anonrig) -
|
|
270
|
+
**Yagiz Nizipli** <<yagiz@nizipli.com>> (he/him)
|
|
269
271
|
* [antsmartian](https://github.com/antsmartian) -
|
|
270
272
|
**Anto Aravinth** <<anto.aravinth.cse@gmail.com>> (he/him)
|
|
271
273
|
* [apapirovski](https://github.com/apapirovski) -
|
|
272
274
|
**Anatoli Papirovski** <<apapirovski@mac.com>> (he/him)
|
|
273
275
|
* [AshCripps](https://github.com/AshCripps) -
|
|
274
|
-
**Ash Cripps** <<
|
|
276
|
+
**Ash Cripps** <<email@ashleycripps.co.uk>>
|
|
275
277
|
* [Ayase-252](https://github.com/Ayase-252) -
|
|
276
278
|
**Qingyu Deng** <<i@ayase-lab.com>>
|
|
277
279
|
* [bcoe](https://github.com/bcoe) -
|
|
@@ -310,8 +312,6 @@ For information about the governance of the Node.js project, see
|
|
|
310
312
|
**David Carlier** <<devnexen@gmail.com>>
|
|
311
313
|
* [devsnek](https://github.com/devsnek) -
|
|
312
314
|
**Gus Caplan** <<me@gus.host>> (they/them)
|
|
313
|
-
* [dmabupt](https://github.com/dmabupt) -
|
|
314
|
-
**Xu Meng** <<dmabupt@gmail.com>> (he/him)
|
|
315
315
|
* [edsadr](https://github.com/edsadr) -
|
|
316
316
|
**Adrian Estrada** <<edsadr@gmail.com>> (he/him)
|
|
317
317
|
* [erickwendel](https://github.com/erickwendel) -
|
|
@@ -370,6 +370,8 @@ For information about the governance of the Node.js project, see
|
|
|
370
370
|
**LiviaMedeiros** <<livia@cirno.name>>
|
|
371
371
|
* [lpinca](https://github.com/lpinca) -
|
|
372
372
|
**Luigi Pinca** <<luigipinca@gmail.com>> (he/him)
|
|
373
|
+
* [lukekarrys](https://github.com/lukekarrys) -
|
|
374
|
+
**Luke Karrys** <<luke@lukekarrys.com>> (he/him)
|
|
373
375
|
* [Lxxyx](https://github.com/Lxxyx) -
|
|
374
376
|
**Zijian Liu** <<lxxyxzj@gmail.com>> (he/him)
|
|
375
377
|
* [marsonya](https://github.com/marsonya) -
|
|
@@ -396,8 +398,6 @@ For information about the governance of the Node.js project, see
|
|
|
396
398
|
**Ouyang Yadong** <<oyydoibh@gmail.com>> (he/him)
|
|
397
399
|
* [panva](https://github.com/panva) -
|
|
398
400
|
**Filip Skokan** <<panva.ip@gmail.com>>
|
|
399
|
-
* [PoojaDurgad](https://github.com/PoojaDurgad) -
|
|
400
|
-
**Pooja D P** <<Pooja.D.P@ibm.com>> (she/her)
|
|
401
401
|
* [puzpuzpuz](https://github.com/puzpuzpuz) -
|
|
402
402
|
**Andrey Pechkurov** <<apechkurov@gmail.com>> (he/him)
|
|
403
403
|
* [Qard](https://github.com/Qard) -
|
|
@@ -425,7 +425,7 @@ For information about the governance of the Node.js project, see
|
|
|
425
425
|
* [ShogunPanda](https://github.com/ShogunPanda) -
|
|
426
426
|
**Paolo Insogna** <<paolo@cowtech.it>> (he/him)
|
|
427
427
|
* [srl295](https://github.com/srl295) -
|
|
428
|
-
**Steven R Loomis** <<
|
|
428
|
+
**Steven R Loomis** <<srl295@gmail.com>>
|
|
429
429
|
* [starkwang](https://github.com/starkwang) -
|
|
430
430
|
**Weijia Wang** <<starkwang@126.com>>
|
|
431
431
|
* [sxa](https://github.com/sxa) -
|
|
@@ -444,7 +444,7 @@ For information about the governance of the Node.js project, see
|
|
|
444
444
|
**Rich Trott** <<rtrott@gmail.com>> (he/him)
|
|
445
445
|
* [vdeturckheim](https://github.com/vdeturckheim) -
|
|
446
446
|
**Vladimir de Turckheim** <<vlad2t@hotmail.com>> (he/him)
|
|
447
|
-
* [
|
|
447
|
+
* [VoltrexKeyva](https://github.com/VoltrexKeyva) -
|
|
448
448
|
**Mohammed Keyvanzadeh** <<mohammadkeyvanzade94@gmail.com>> (he/him)
|
|
449
449
|
* [watilde](https://github.com/watilde) -
|
|
450
450
|
**Daijiro Wachi** <<daijiro.wachi@gmail.com>> (he/him)
|
|
@@ -494,6 +494,8 @@ For information about the governance of the Node.js project, see
|
|
|
494
494
|
**Jamie Davis** <<davisjam@vt.edu>> (he/him)
|
|
495
495
|
* [digitalinfinity](https://github.com/digitalinfinity) -
|
|
496
496
|
**Hitesh Kanwathirtha** <<digitalinfinity@gmail.com>> (he/him)
|
|
497
|
+
* [dmabupt](https://github.com/dmabupt) -
|
|
498
|
+
**Xu Meng** <<dmabupt@gmail.com>> (he/him)
|
|
497
499
|
* [dnlup](https://github.com/dnlup)
|
|
498
500
|
**dnlup** <<dnlup.dev@gmail.com>>
|
|
499
501
|
* [eljefedelrodeodeljefe](https://github.com/eljefedelrodeodeljefe) -
|
|
@@ -590,6 +592,8 @@ For information about the governance of the Node.js project, see
|
|
|
590
592
|
**Bert Belder** <<bertbelder@gmail.com>>
|
|
591
593
|
* [pmq20](https://github.com/pmq20) -
|
|
592
594
|
**Minqi Pan** <<pmq2001@gmail.com>>
|
|
595
|
+
* [PoojaDurgad](https://github.com/PoojaDurgad) -
|
|
596
|
+
**Pooja D P** <<Pooja.D.P@ibm.com>> (she/her)
|
|
593
597
|
* [princejwesley](https://github.com/princejwesley) -
|
|
594
598
|
**Prince John Wesley** <<princejohnwesley@gmail.com>>
|
|
595
599
|
* [psmarshall](https://github.com/psmarshall) -
|
|
@@ -662,6 +666,8 @@ maintaining the Node.js project.
|
|
|
662
666
|
|
|
663
667
|
* [Ayase-252](https://github.com/Ayase-252) -
|
|
664
668
|
**Qingyu Deng** <<i@ayase-lab.com>>
|
|
669
|
+
* [bmuenzenmeyer](https://github.com/bmuenzenmeyer) -
|
|
670
|
+
**Brian Muenzenmeyer** <<brian.muenzenmeyer@gmail.com>> (he/him)
|
|
665
671
|
* [daeyeon](https://github.com/daeyeon) -
|
|
666
672
|
**Daeyeon Jeong** <<daeyeon.dev@gmail.com>> (he/him)
|
|
667
673
|
* [F3n67u](https://github.com/F3n67u) -
|
|
@@ -684,9 +690,12 @@ maintaining the Node.js project.
|
|
|
684
690
|
**Pooja Durgad** <<Pooja.D.P@ibm.com>>
|
|
685
691
|
* [RaisinTen](https://github.com/RaisinTen) -
|
|
686
692
|
**Darshan Sen** <<raisinten@gmail.com>>
|
|
687
|
-
* [
|
|
693
|
+
* [VoltrexKeyva](https://github.com/VoltrexKeyva) -
|
|
688
694
|
**Mohammed Keyvanzadeh** <<mohammadkeyvanzade94@gmail.com>> (he/him)
|
|
689
695
|
|
|
696
|
+
Triagers follow the [Triage Guide](./doc/contributing/issues.md#triaging-a-bug-report) when
|
|
697
|
+
responding to new issues.
|
|
698
|
+
|
|
690
699
|
### Release keys
|
|
691
700
|
|
|
692
701
|
Primary GPG keys for Node.js Releasers (some Releasers sign with subkeys):
|
|
@@ -779,6 +788,12 @@ releases on a rotation basis as outlined in the
|
|
|
779
788
|
* [vdeturckheim](https://github.com/vdeturckheim) -
|
|
780
789
|
**Vladimir de Turckheim** <<vlad2t@hotmail.com>> (he/him)
|
|
781
790
|
* NearForm
|
|
791
|
+
* [RafaelGSS](https://github.com/RafaelGSS) -
|
|
792
|
+
**Rafael Gonzaga** <<rafael.nunu@hotmail.com>> (he/him)
|
|
793
|
+
* NodeSource
|
|
794
|
+
* [juanarbol](https://github.com/juanarbol) -
|
|
795
|
+
**Juan José Arboleda** <<soyjuanarbol@gmail.com>> (he/him)
|
|
796
|
+
* Platformatic
|
|
782
797
|
* [mcollina](https://github.com/mcollina) -
|
|
783
798
|
**Matteo Collina** <<matteo.collina@gmail.com>> (he/him)
|
|
784
799
|
* Red Hat and IBM
|
package/bin/node
CHANGED
|
Binary file
|
package/include/node/common.gypi
CHANGED
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
|
|
37
37
|
# Reset this number to 0 on major V8 upgrades.
|
|
38
38
|
# Increment by one for each non-official patch applied to deps/v8.
|
|
39
|
-
'v8_embedder_string': '-node.
|
|
39
|
+
'v8_embedder_string': '-node.8',
|
|
40
40
|
|
|
41
41
|
##### V8 defaults for Node.js #####
|
|
42
42
|
|
|
@@ -283,11 +283,7 @@
|
|
|
283
283
|
'-std:c++17'
|
|
284
284
|
],
|
|
285
285
|
'BufferSecurityCheck': 'true',
|
|
286
|
-
'
|
|
287
|
-
['_toolset=="target"', {
|
|
288
|
-
'DebugInformationFormat': 1 # /Z7 embed info in .obj files
|
|
289
|
-
}],
|
|
290
|
-
],
|
|
286
|
+
'DebugInformationFormat': 1, # /Z7 embed info in .obj files
|
|
291
287
|
'ExceptionHandling': 0, # /EHsc
|
|
292
288
|
'MultiProcessorCompilation': 'true',
|
|
293
289
|
'StringPooling': 'true', # pool string literals
|
package/include/node/config.gypi
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# Do not edit. Generated by the configure script.
|
|
2
2
|
{ 'target_defaults': {'cflags': ['-msign-return-address=all'], 'default_configuration': 'Release', 'defines': ['NODE_OPENSSL_CONF_NAME=nodejs_conf', 'NODE_OPENSSL_HAS_QUIC'], 'include_dirs': [], 'libraries': []},
|
|
3
|
-
'variables': { '
|
|
3
|
+
'variables': { 'arm_fpu': 'neon',
|
|
4
|
+
'asan': 0,
|
|
4
5
|
'coverage': 'false',
|
|
5
6
|
'dcheck_always_on': 0,
|
|
6
7
|
'debug_nghttp2': 'false',
|
|
@@ -12,12 +13,12 @@
|
|
|
12
13
|
'force_dynamic_crt': 0,
|
|
13
14
|
'gas_version': '2.30',
|
|
14
15
|
'host_arch': 'arm64',
|
|
15
|
-
'icu_data_in': '../../deps/icu-tmp/
|
|
16
|
+
'icu_data_in': '../../deps/icu-tmp/icudt72l.dat',
|
|
16
17
|
'icu_endianness': 'l',
|
|
17
18
|
'icu_gyp_path': 'tools/icu/icu-generic.gyp',
|
|
18
19
|
'icu_path': 'deps/icu-small',
|
|
19
20
|
'icu_small': 'false',
|
|
20
|
-
'icu_ver_major': '
|
|
21
|
+
'icu_ver_major': '72',
|
|
21
22
|
'is_debug': 0,
|
|
22
23
|
'libdir': 'lib',
|
|
23
24
|
'llvm_version': '0.0',
|
|
@@ -26,6 +27,7 @@
|
|
|
26
27
|
'node_byteorder': 'little',
|
|
27
28
|
'node_debug_lib': 'false',
|
|
28
29
|
'node_enable_d8': 'false',
|
|
30
|
+
'node_enable_v8_vtunejit': 'false',
|
|
29
31
|
'node_fipsinstall': 'false',
|
|
30
32
|
'node_install_corepack': 'true',
|
|
31
33
|
'node_install_npm': 'true',
|
|
@@ -124,6 +126,7 @@
|
|
|
124
126
|
'lib/internal/error_serdes.js',
|
|
125
127
|
'lib/internal/errors.js',
|
|
126
128
|
'lib/internal/event_target.js',
|
|
129
|
+
'lib/internal/file.js',
|
|
127
130
|
'lib/internal/fixed_queue.js',
|
|
128
131
|
'lib/internal/freelist.js',
|
|
129
132
|
'lib/internal/freeze_intrinsics.js',
|
|
@@ -132,6 +135,7 @@
|
|
|
132
135
|
'lib/internal/fs/dir.js',
|
|
133
136
|
'lib/internal/fs/promises.js',
|
|
134
137
|
'lib/internal/fs/read_file_context.js',
|
|
138
|
+
'lib/internal/fs/recursive_watch.js',
|
|
135
139
|
'lib/internal/fs/rimraf.js',
|
|
136
140
|
'lib/internal/fs/streams.js',
|
|
137
141
|
'lib/internal/fs/sync_write_stream.js',
|
|
@@ -161,6 +165,7 @@
|
|
|
161
165
|
'lib/internal/main/test_runner.js',
|
|
162
166
|
'lib/internal/main/watch_mode.js',
|
|
163
167
|
'lib/internal/main/worker_thread.js',
|
|
168
|
+
'lib/internal/mime.js',
|
|
164
169
|
'lib/internal/modules/cjs/helpers.js',
|
|
165
170
|
'lib/internal/modules/cjs/loader.js',
|
|
166
171
|
'lib/internal/modules/esm/assert.js',
|
|
@@ -247,7 +252,11 @@
|
|
|
247
252
|
'lib/internal/test/binding.js',
|
|
248
253
|
'lib/internal/test/transfer.js',
|
|
249
254
|
'lib/internal/test_runner/harness.js',
|
|
255
|
+
'lib/internal/test_runner/mock.js',
|
|
250
256
|
'lib/internal/test_runner/runner.js',
|
|
257
|
+
'lib/internal/test_runner/tap_checker.js',
|
|
258
|
+
'lib/internal/test_runner/tap_lexer.js',
|
|
259
|
+
'lib/internal/test_runner/tap_parser.js',
|
|
251
260
|
'lib/internal/test_runner/tap_stream.js',
|
|
252
261
|
'lib/internal/test_runner/test.js',
|
|
253
262
|
'lib/internal/test_runner/utils.js',
|
|
@@ -271,6 +280,7 @@
|
|
|
271
280
|
'lib/internal/v8_prof_polyfill.js',
|
|
272
281
|
'lib/internal/v8_prof_processor.js',
|
|
273
282
|
'lib/internal/validators.js',
|
|
283
|
+
'lib/internal/vm.js',
|
|
274
284
|
'lib/internal/vm/module.js',
|
|
275
285
|
'lib/internal/wasm_web_api.js',
|
|
276
286
|
'lib/internal/watch_mode/files_watcher.js',
|
|
@@ -401,6 +401,7 @@ NAPI_EXTERN napi_status NAPI_CDECL napi_create_arraybuffer(napi_env env,
|
|
|
401
401
|
size_t byte_length,
|
|
402
402
|
void** data,
|
|
403
403
|
napi_value* result);
|
|
404
|
+
#ifndef NODE_API_NO_EXTERNAL_BUFFERS_ALLOWED
|
|
404
405
|
NAPI_EXTERN napi_status NAPI_CDECL
|
|
405
406
|
napi_create_external_arraybuffer(napi_env env,
|
|
406
407
|
void* external_data,
|
|
@@ -408,6 +409,7 @@ napi_create_external_arraybuffer(napi_env env,
|
|
|
408
409
|
napi_finalize finalize_cb,
|
|
409
410
|
void* finalize_hint,
|
|
410
411
|
napi_value* result);
|
|
412
|
+
#endif // NODE_API_NO_EXTERNAL_BUFFERS_ALLOWED
|
|
411
413
|
NAPI_EXTERN napi_status NAPI_CDECL napi_get_arraybuffer_info(
|
|
412
414
|
napi_env env, napi_value arraybuffer, void** data, size_t* byte_length);
|
|
413
415
|
NAPI_EXTERN napi_status NAPI_CDECL napi_is_typedarray(napi_env env,
|
|
@@ -98,7 +98,8 @@ typedef enum {
|
|
|
98
98
|
napi_date_expected,
|
|
99
99
|
napi_arraybuffer_expected,
|
|
100
100
|
napi_detachable_arraybuffer_expected,
|
|
101
|
-
napi_would_deadlock // unused
|
|
101
|
+
napi_would_deadlock, // unused
|
|
102
|
+
napi_no_external_buffers_allowed
|
|
102
103
|
} napi_status;
|
|
103
104
|
// Note: when adding a new enum value to `napi_status`, please also update
|
|
104
105
|
// * `const int last_status` in the definition of `napi_get_last_error_info()'
|
package/include/node/node.h
CHANGED
|
@@ -228,6 +228,8 @@ class MultiIsolatePlatform;
|
|
|
228
228
|
class InitializationResultImpl;
|
|
229
229
|
|
|
230
230
|
namespace ProcessFlags {
|
|
231
|
+
// TODO(addaleax): Switch to uint32_t to match std::atomic<uint32_t>
|
|
232
|
+
// init_process_flags in node.cc
|
|
231
233
|
enum Flags : uint64_t {
|
|
232
234
|
kNoFlags = 0,
|
|
233
235
|
// Enable stdio inheritance, which is disabled by default.
|
|
@@ -349,10 +351,25 @@ inline std::unique_ptr<InitializationResult> InitializeOncePerProcess(
|
|
|
349
351
|
}
|
|
350
352
|
|
|
351
353
|
enum OptionEnvvarSettings {
|
|
352
|
-
|
|
353
|
-
|
|
354
|
+
// Allow the options to be set via the environment variable, like
|
|
355
|
+
// `NODE_OPTIONS`.
|
|
356
|
+
kAllowedInEnvvar = 0,
|
|
357
|
+
// Disallow the options to be set via the environment variable, like
|
|
358
|
+
// `NODE_OPTIONS`.
|
|
359
|
+
kDisallowedInEnvvar = 1,
|
|
360
|
+
// Deprecated, use kAllowedInEnvvar instead.
|
|
361
|
+
kAllowedInEnvironment = kAllowedInEnvvar,
|
|
362
|
+
// Deprecated, use kDisallowedInEnvvar instead.
|
|
363
|
+
kDisallowedInEnvironment = kDisallowedInEnvvar,
|
|
354
364
|
};
|
|
355
365
|
|
|
366
|
+
// Process the arguments and set up the per-process options.
|
|
367
|
+
// If the `settings` is set as OptionEnvvarSettings::kAllowedInEnvvar, the
|
|
368
|
+
// options that are allowed in the environment variable are processed. Options
|
|
369
|
+
// that are disallowed to be set via environment variable are processed as
|
|
370
|
+
// errors.
|
|
371
|
+
// Otherwise all the options that are disallowed (and those are allowed) to be
|
|
372
|
+
// set via environment variable are processed.
|
|
356
373
|
NODE_EXTERN int ProcessGlobalArgs(std::vector<std::string>* args,
|
|
357
374
|
std::vector<std::string>* exec_args,
|
|
358
375
|
std::vector<std::string>* errors,
|
package/include/node/node_api.h
CHANGED
|
@@ -153,6 +153,7 @@ NAPI_EXTERN napi_status NAPI_CDECL napi_create_buffer(napi_env env,
|
|
|
153
153
|
size_t length,
|
|
154
154
|
void** data,
|
|
155
155
|
napi_value* result);
|
|
156
|
+
#ifndef NODE_API_NO_EXTERNAL_BUFFERS_ALLOWED
|
|
156
157
|
NAPI_EXTERN napi_status NAPI_CDECL
|
|
157
158
|
napi_create_external_buffer(napi_env env,
|
|
158
159
|
size_t length,
|
|
@@ -160,6 +161,7 @@ napi_create_external_buffer(napi_env env,
|
|
|
160
161
|
napi_finalize finalize_cb,
|
|
161
162
|
void* finalize_hint,
|
|
162
163
|
napi_value* result);
|
|
164
|
+
#endif // NODE_API_NO_EXTERNAL_BUFFERS_ALLOWED
|
|
163
165
|
NAPI_EXTERN napi_status NAPI_CDECL napi_create_buffer_copy(napi_env env,
|
|
164
166
|
size_t length,
|
|
165
167
|
const void* data,
|
|
@@ -206,11 +208,11 @@ napi_get_uv_event_loop(napi_env env, struct uv_loop_s** loop);
|
|
|
206
208
|
NAPI_EXTERN napi_status NAPI_CDECL napi_fatal_exception(napi_env env,
|
|
207
209
|
napi_value err);
|
|
208
210
|
|
|
209
|
-
NAPI_EXTERN napi_status NAPI_CDECL
|
|
210
|
-
|
|
211
|
+
NAPI_EXTERN napi_status NAPI_CDECL
|
|
212
|
+
napi_add_env_cleanup_hook(napi_env env, napi_cleanup_hook fun, void* arg);
|
|
211
213
|
|
|
212
|
-
NAPI_EXTERN napi_status NAPI_CDECL
|
|
213
|
-
|
|
214
|
+
NAPI_EXTERN napi_status NAPI_CDECL
|
|
215
|
+
napi_remove_env_cleanup_hook(napi_env env, napi_cleanup_hook fun, void* arg);
|
|
214
216
|
|
|
215
217
|
NAPI_EXTERN napi_status NAPI_CDECL
|
|
216
218
|
napi_open_callback_scope(napi_env env,
|
|
@@ -6,6 +6,11 @@
|
|
|
6
6
|
typedef struct napi_callback_scope__* napi_callback_scope;
|
|
7
7
|
typedef struct napi_async_context__* napi_async_context;
|
|
8
8
|
typedef struct napi_async_work__* napi_async_work;
|
|
9
|
+
|
|
10
|
+
#if NAPI_VERSION >= 3
|
|
11
|
+
typedef void(NAPI_CDECL* napi_cleanup_hook)(void* arg);
|
|
12
|
+
#endif // NAPI_VERSION >= 3
|
|
13
|
+
|
|
9
14
|
#if NAPI_VERSION >= 4
|
|
10
15
|
typedef struct napi_threadsafe_function__* napi_threadsafe_function;
|
|
11
16
|
#endif // NAPI_VERSION >= 4
|
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
#define SRC_NODE_VERSION_H_
|
|
24
24
|
|
|
25
25
|
#define NODE_MAJOR_VERSION 19
|
|
26
|
-
#define NODE_MINOR_VERSION
|
|
27
|
-
#define NODE_PATCH_VERSION
|
|
26
|
+
#define NODE_MINOR_VERSION 2
|
|
27
|
+
#define NODE_PATCH_VERSION 0
|
|
28
28
|
|
|
29
29
|
#define NODE_VERSION_IS_LTS 0
|
|
30
30
|
#define NODE_VERSION_LTS_CODENAME ""
|
package/include/node/uv/win.h
CHANGED
|
@@ -263,21 +263,14 @@ typedef union {
|
|
|
263
263
|
} unused_; /* TODO: retained for ABI compatibility; remove me in v2.x. */
|
|
264
264
|
} uv_cond_t;
|
|
265
265
|
|
|
266
|
-
typedef
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
SRWLOCK unused_;
|
|
275
|
-
} unused1_;
|
|
276
|
-
/* TODO: remove me in v2.x. */
|
|
277
|
-
struct {
|
|
278
|
-
uv_mutex_t unused1_;
|
|
279
|
-
uv_mutex_t unused2_;
|
|
280
|
-
} unused2_;
|
|
266
|
+
typedef struct {
|
|
267
|
+
SRWLOCK read_write_lock_;
|
|
268
|
+
/* TODO: retained for ABI compatibility; remove me in v2.x */
|
|
269
|
+
#ifdef _WIN64
|
|
270
|
+
unsigned char padding_[72];
|
|
271
|
+
#else
|
|
272
|
+
unsigned char padding_[44];
|
|
273
|
+
#endif
|
|
281
274
|
} uv_rwlock_t;
|
|
282
275
|
|
|
283
276
|
typedef struct {
|
|
@@ -384,6 +377,12 @@ typedef struct {
|
|
|
384
377
|
OVERLAPPED overlapped; \
|
|
385
378
|
size_t queued_bytes; \
|
|
386
379
|
} io; \
|
|
380
|
+
/* in v2, we can move these to the UV_CONNECT_PRIVATE_FIELDS */ \
|
|
381
|
+
struct { \
|
|
382
|
+
ULONG_PTR result; /* overlapped.Internal is reused to hold the result */\
|
|
383
|
+
HANDLE pipeHandle; \
|
|
384
|
+
DWORD duplex_flags; \
|
|
385
|
+
} connect; \
|
|
387
386
|
} u; \
|
|
388
387
|
struct uv_req_s* next_req;
|
|
389
388
|
|
package/include/node/uv.h
CHANGED
|
@@ -1133,8 +1133,8 @@ struct uv_interface_address_s {
|
|
|
1133
1133
|
|
|
1134
1134
|
struct uv_passwd_s {
|
|
1135
1135
|
char* username;
|
|
1136
|
-
long uid;
|
|
1137
|
-
long gid;
|
|
1136
|
+
unsigned long uid;
|
|
1137
|
+
unsigned long gid;
|
|
1138
1138
|
char* shell;
|
|
1139
1139
|
char* homedir;
|
|
1140
1140
|
};
|
|
@@ -1242,6 +1242,7 @@ UV_EXTERN uv_pid_t uv_os_getppid(void);
|
|
|
1242
1242
|
UV_EXTERN int uv_os_getpriority(uv_pid_t pid, int* priority);
|
|
1243
1243
|
UV_EXTERN int uv_os_setpriority(uv_pid_t pid, int priority);
|
|
1244
1244
|
|
|
1245
|
+
UV_EXTERN unsigned int uv_available_parallelism(void);
|
|
1245
1246
|
UV_EXTERN int uv_cpu_info(uv_cpu_info_t** cpu_infos, int* count);
|
|
1246
1247
|
UV_EXTERN void uv_free_cpu_info(uv_cpu_info_t* cpu_infos, int count);
|
|
1247
1248
|
|
|
@@ -240,6 +240,11 @@ class V8_EXPORT ArrayBuffer : public Object {
|
|
|
240
240
|
*/
|
|
241
241
|
bool IsDetachable() const;
|
|
242
242
|
|
|
243
|
+
/**
|
|
244
|
+
* Returns true if this ArrayBuffer has been detached.
|
|
245
|
+
*/
|
|
246
|
+
bool WasDetached() const;
|
|
247
|
+
|
|
243
248
|
/**
|
|
244
249
|
* Detaches this ArrayBuffer and all its views (typed arrays).
|
|
245
250
|
* Detaching sets the byte length of the buffer and all typed arrays to zero,
|
|
@@ -253,6 +258,9 @@ class V8_EXPORT ArrayBuffer : public Object {
|
|
|
253
258
|
* pointer coordinates the lifetime management of the internal storage
|
|
254
259
|
* with any live ArrayBuffers on the heap, even across isolates. The embedder
|
|
255
260
|
* should not attempt to manage lifetime of the storage through other means.
|
|
261
|
+
*
|
|
262
|
+
* The returned shared pointer will not be empty, even if the ArrayBuffer has
|
|
263
|
+
* been detached. Use |WasDetached| to tell if it has been detached instead.
|
|
256
264
|
*/
|
|
257
265
|
std::shared_ptr<BackingStore> GetBackingStore();
|
|
258
266
|
|
|
@@ -290,6 +290,7 @@ class V8_EXPORT Context : public Data {
|
|
|
290
290
|
Local<Function> after_hook,
|
|
291
291
|
Local<Function> resolve_hook);
|
|
292
292
|
|
|
293
|
+
bool HasTemplateLiteralObject(Local<Value> object);
|
|
293
294
|
/**
|
|
294
295
|
* Stack-allocated class which sets the execution context for all
|
|
295
296
|
* operations executed within a local scope.
|
|
@@ -182,7 +182,7 @@ constexpr size_t kSandboxSizeLog2 = 37; // 128 GB
|
|
|
182
182
|
#else
|
|
183
183
|
// Everywhere else use a 1TB sandbox.
|
|
184
184
|
constexpr size_t kSandboxSizeLog2 = 40; // 1 TB
|
|
185
|
-
#endif //
|
|
185
|
+
#endif // V8_TARGET_OS_ANDROID
|
|
186
186
|
constexpr size_t kSandboxSize = 1ULL << kSandboxSizeLog2;
|
|
187
187
|
|
|
188
188
|
// Required alignment of the sandbox. For simplicity, we require the
|
|
@@ -223,6 +223,21 @@ static_assert(kSandboxMinimumReservationSize > kPtrComprCageReservationSize,
|
|
|
223
223
|
"The minimum reservation size for a sandbox must be larger than "
|
|
224
224
|
"the pointer compression cage contained within it.");
|
|
225
225
|
|
|
226
|
+
// The maximum buffer size allowed inside the sandbox. This is mostly dependent
|
|
227
|
+
// on the size of the guard regions around the sandbox: an attacker must not be
|
|
228
|
+
// able to construct a buffer that appears larger than the guard regions and
|
|
229
|
+
// thereby "reach out of" the sandbox.
|
|
230
|
+
constexpr size_t kMaxSafeBufferSizeForSandbox = 32ULL * GB - 1;
|
|
231
|
+
static_assert(kMaxSafeBufferSizeForSandbox <= kSandboxGuardRegionSize,
|
|
232
|
+
"The maximum allowed buffer size must not be larger than the "
|
|
233
|
+
"sandbox's guard regions");
|
|
234
|
+
|
|
235
|
+
constexpr size_t kBoundedSizeShift = 29;
|
|
236
|
+
static_assert(1ULL << (64 - kBoundedSizeShift) ==
|
|
237
|
+
kMaxSafeBufferSizeForSandbox + 1,
|
|
238
|
+
"The maximum size of a BoundedSize must be synchronized with the "
|
|
239
|
+
"kMaxSafeBufferSizeForSandbox");
|
|
240
|
+
|
|
226
241
|
#endif // V8_ENABLE_SANDBOX
|
|
227
242
|
|
|
228
243
|
#ifdef V8_COMPRESS_POINTERS
|
|
@@ -536,6 +536,7 @@ class V8_EXPORT Isolate {
|
|
|
536
536
|
kFunctionPrototypeCaller = 114,
|
|
537
537
|
kTurboFanOsrCompileStarted = 115,
|
|
538
538
|
kAsyncStackTaggingCreateTaskCall = 116,
|
|
539
|
+
kDurationFormat = 117,
|
|
539
540
|
|
|
540
541
|
// If you add new values here, you'll also need to update Chromium's:
|
|
541
542
|
// web_feature.mojom, use_counter_callback.cc, and enums.xml. V8 changes to
|
|
@@ -9,9 +9,9 @@
|
|
|
9
9
|
// NOTE these macros are used by some of the tool scripts and the build
|
|
10
10
|
// system so their names cannot be changed without changing the scripts.
|
|
11
11
|
#define V8_MAJOR_VERSION 10
|
|
12
|
-
#define V8_MINOR_VERSION
|
|
13
|
-
#define V8_BUILD_NUMBER
|
|
14
|
-
#define V8_PATCH_LEVEL
|
|
12
|
+
#define V8_MINOR_VERSION 8
|
|
13
|
+
#define V8_BUILD_NUMBER 168
|
|
14
|
+
#define V8_PATCH_LEVEL 20
|
|
15
15
|
|
|
16
16
|
// Use 1 for candidates and 0 otherwise.
|
|
17
17
|
// (Boolean macro values are not supported by all preprocessors.)
|
package/include/node/v8config.h
CHANGED
|
@@ -579,6 +579,37 @@ path. Add it with -I<path> to the command line
|
|
|
579
579
|
#define V8_NO_UNIQUE_ADDRESS /* NOT SUPPORTED */
|
|
580
580
|
#endif
|
|
581
581
|
|
|
582
|
+
// Marks a type as being eligible for the "trivial" ABI despite having a
|
|
583
|
+
// non-trivial destructor or copy/move constructor. Such types can be relocated
|
|
584
|
+
// after construction by simply copying their memory, which makes them eligible
|
|
585
|
+
// to be passed in registers. The canonical example is std::unique_ptr.
|
|
586
|
+
//
|
|
587
|
+
// Use with caution; this has some subtle effects on constructor/destructor
|
|
588
|
+
// ordering and will be very incorrect if the type relies on its address
|
|
589
|
+
// remaining constant. When used as a function argument (by value), the value
|
|
590
|
+
// may be constructed in the caller's stack frame, passed in a register, and
|
|
591
|
+
// then used and destructed in the callee's stack frame. A similar thing can
|
|
592
|
+
// occur when values are returned.
|
|
593
|
+
//
|
|
594
|
+
// TRIVIAL_ABI is not needed for types which have a trivial destructor and
|
|
595
|
+
// copy/move constructors, since those are automatically trivial by the ABI
|
|
596
|
+
// spec.
|
|
597
|
+
//
|
|
598
|
+
// It is also not likely to be effective on types too large to be passed in one
|
|
599
|
+
// or two registers on typical target ABIs.
|
|
600
|
+
//
|
|
601
|
+
// See also:
|
|
602
|
+
// https://clang.llvm.org/docs/AttributeReference.html#trivial-abi
|
|
603
|
+
// https://libcxx.llvm.org/docs/DesignDocs/UniquePtrTrivialAbi.html
|
|
604
|
+
#if defined(__clang__) && defined(__has_attribute)
|
|
605
|
+
#if __has_attribute(trivial_abi)
|
|
606
|
+
#define V8_TRIVIAL_ABI [[clang::trivial_abi]]
|
|
607
|
+
#endif // __has_attribute(trivial_abi)
|
|
608
|
+
#endif // defined(__clang__) && defined(__has_attribute)
|
|
609
|
+
#if !defined(V8_TRIVIAL_ABI)
|
|
610
|
+
#define V8_TRIVIAL_ABI
|
|
611
|
+
#endif //!defined(V8_TRIVIAL_ABI)
|
|
612
|
+
|
|
582
613
|
// Helper macro to define no_sanitize attributes only with clang.
|
|
583
614
|
#if defined(__clang__) && defined(__has_attribute)
|
|
584
615
|
#if __has_attribute(no_sanitize)
|
|
@@ -703,6 +734,8 @@ V8 shared library set USING_V8_SHARED.
|
|
|
703
734
|
#define V8_TARGET_ARCH_ARM 1
|
|
704
735
|
#elif defined(__mips64)
|
|
705
736
|
#define V8_TARGET_ARCH_MIPS64 1
|
|
737
|
+
#elif defined(__loongarch64)
|
|
738
|
+
#define V8_TARGET_ARCH_LOONG64 1
|
|
706
739
|
#elif defined(_ARCH_PPC64)
|
|
707
740
|
#define V8_TARGET_ARCH_PPC64 1
|
|
708
741
|
#elif defined(_ARCH_PPC)
|
package/include/node/zconf.h
CHANGED
|
@@ -50,6 +50,9 @@
|
|
|
50
50
|
# define crc32 z_crc32
|
|
51
51
|
# define crc32_combine z_crc32_combine
|
|
52
52
|
# define crc32_combine64 z_crc32_combine64
|
|
53
|
+
# define crc32_combine_gen z_crc32_combine_gen
|
|
54
|
+
# define crc32_combine_gen64 z_crc32_combine_gen64
|
|
55
|
+
# define crc32_combine_op z_crc32_combine_op
|
|
53
56
|
# define crc32_z z_crc32_z
|
|
54
57
|
# define deflate z_deflate
|
|
55
58
|
# define deflateBound z_deflateBound
|
|
@@ -361,6 +364,9 @@
|
|
|
361
364
|
# ifdef FAR
|
|
362
365
|
# undef FAR
|
|
363
366
|
# endif
|
|
367
|
+
# ifndef WIN32_LEAN_AND_MEAN
|
|
368
|
+
# define WIN32_LEAN_AND_MEAN
|
|
369
|
+
# endif
|
|
364
370
|
# include <windows.h>
|
|
365
371
|
/* No need for _export, use ZLIB.DEF instead. */
|
|
366
372
|
/* For complete Windows compatibility, use WINAPI, not __stdcall. */
|
|
@@ -482,11 +488,18 @@ typedef uLong FAR uLongf;
|
|
|
482
488
|
# undef _LARGEFILE64_SOURCE
|
|
483
489
|
#endif
|
|
484
490
|
|
|
485
|
-
#
|
|
486
|
-
#
|
|
491
|
+
#ifndef Z_HAVE_UNISTD_H
|
|
492
|
+
# ifdef __WATCOMC__
|
|
493
|
+
# define Z_HAVE_UNISTD_H
|
|
494
|
+
# endif
|
|
495
|
+
#endif
|
|
496
|
+
#ifndef Z_HAVE_UNISTD_H
|
|
497
|
+
# if defined(_LARGEFILE64_SOURCE) && !defined(_WIN32)
|
|
498
|
+
# define Z_HAVE_UNISTD_H
|
|
499
|
+
# endif
|
|
487
500
|
#endif
|
|
488
501
|
#ifndef Z_SOLO
|
|
489
|
-
# if defined(Z_HAVE_UNISTD_H)
|
|
502
|
+
# if defined(Z_HAVE_UNISTD_H)
|
|
490
503
|
# include <unistd.h> /* for SEEK_*, off_t, and _LFS64_LARGEFILE */
|
|
491
504
|
# ifdef VMS
|
|
492
505
|
# include <unixio.h> /* for off_t */
|