Commit Graph

2588 Commits

Author SHA1 Message Date
Michael Dawson
c43a944231 tools: fix error reported by coverity in js2c.cc
Coverity reported using the wrong argument types
to printf

Signed-off-by: Michael Dawson <midawson@redhat.com>
PR-URL: https://github.com/nodejs/node/pull/52142
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2024-03-25 09:52:53 -04:00
Michaël Zasso
4e278f0253
build: speed up compilation of some V8 files
This introduces a special target to compile some of the
'v8_initializers' files with "-O1" instead of "-O3" to avoid huge
compilation times with GCC versions <13.

PR-URL: https://github.com/nodejs/node/pull/52083
Fixes: https://github.com/nodejs/node/issues/52068
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Daniel Lemire <daniel@lemire.me>
2024-03-19 08:49:33 +01:00
Node.js GitHub Bot
a21b15a14e
tools: update github_reporter to 1.7.0
PR-URL: https://github.com/nodejs/node/pull/52121
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2024-03-19 00:27:30 +00:00
Marco Ippolito
d60a871db2
tools: remove gyp-next .github folder
PR-URL: https://github.com/nodejs/node/pull/52064
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Tierney Cyren <hello@bnb.im>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
2024-03-15 08:44:08 +00:00
Node.js GitHub Bot
6ad5353764
tools: update gyp-next to 0.16.2
PR-URL: https://github.com/nodejs/node/pull/52062
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Zijian Liu <lxxyxzj@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2024-03-15 02:27:44 +00:00
Po-Chuan Hsieh
dab85bdc06
tools: install manpage to share/man for FreeBSD
FreeBSD now install manpages to share/man/ instead of man/.

Refs: https://cgit.freebsd.org/ports/commit/?id=003a571d1d6585196545295efc181514f171c4c4
Refs: https://cgit.freebsd.org/ports/commit/?id=99ea45a72a2800fc90e98ee225a42c3e88da8602
Refs: https://cgit.freebsd.org/ports/commit/?id=94cb251581ce0b94a40dee0728884367c3a4a82d
PR-URL: https://github.com/nodejs/node/pull/51791
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
Reviewed-By: Richard Lau <rlau@redhat.com>
2024-03-11 17:42:51 +00:00
Marco Ippolito
cde37e7b63
tools: automate gyp-next update
PR-URL: https://github.com/nodejs/node/pull/52014
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2024-03-11 10:33:57 +00:00
Cheng Zhao
6aa1d98fa5
tools: fix installing node with shared mode
Fix a bug caused by https://github.com/nodejs/node/pull/50737 that,
make install fails for --shared mode.

PR-URL: https://github.com/nodejs/node/pull/51910
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2024-03-01 12:20:53 +00:00
Node.js GitHub Bot
6bb7c4d916
tools: update eslint to 8.57.0
PR-URL: https://github.com/nodejs/node/pull/51867
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2024-02-27 00:48:14 +00:00
Node.js GitHub Bot
13f66c24da
crypto: update root certificates to NSS 3.98
This is the certdata.txt[0] from NSS 3.98, released on 2024-02-15.

This is the version of NSS that will ship in Firefox 124 on
2024-03-19.

Certificates added:
- Telekom Security TLS ECC Root 2020
- Telekom Security TLS RSA Root 2023

Certificates removed:
- Security Communication Root CA

[0] https://hg.mozilla.org/projects/nss/raw-file/NSS_3_98_RTM/lib/ckfw/builtins/certdata.txt

PR-URL: https://github.com/nodejs/node/pull/51794
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2024-02-25 18:33:50 +00:00
Node.js GitHub Bot
cb13e52226 tools: update lint-md-dependencies to rollup@4.12.0
PR-URL: https://github.com/nodejs/node/pull/51795
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2024-02-25 11:20:08 +00:00
Node.js GitHub Bot
921b883535 tools: update lint-md-dependencies to rollup@4.12.0
PR-URL: https://github.com/nodejs/node/pull/51795
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2024-02-25 11:20:07 +00:00
Cheng Zhao
d8586db699
tools: fix missing [[fallthrough]] in js2c
The latest clang warns about this.

PR-URL: https://github.com/nodejs/node/pull/51845
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2024-02-25 08:10:00 +00:00
BuShe Pie
56ced192a1
build: remove librt libs link for Android compatibility
PR-URL: https://github.com/nodejs/node/pull/51632
Fixes: https://github.com/nodejs/node/issues/50184
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
2024-02-25 06:39:00 +00:00
Cheng Zhao
f04abdbe3d build: do not rely on gn_helpers in GN build
PR-URL: https://github.com/nodejs/node/pull/51439
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2024-02-23 20:49:43 +09:00
Cheng Zhao
b1468d21ee build,tools: make addons tests work with GN
PR-URL: https://github.com/nodejs/node/pull/50737
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
2024-02-23 16:14:42 +09:00
Joyee Cheung
72df124e38
build: encode non-ASCII Latin1 characters as one byte in JS2C
Previously we had two encodings for JS files:

1. If a file contains only ASCII characters, encode it as a one-byte
  string (interpreted as uint8_t array during loading).
2. If a file contains any characters with code point above 127,
  encode it as a two-byte string (interpreted as uint16_t array
  during loading).

This was done because V8 only supports Latin-1 and UTF16 encoding
as underlying representation for strings. To store the JS code
as external strings to save encoding cost and memory overhead
we need to follow the representations supported by V8.
Notice that there is a gap in the Latin1 range (128-255) that we
encoded as two-byte, which was an undocumented TODO for a long
time. That was fine previously because then files that contained
code points beyond the 0-127 range contained code points >255.
Now we have undici which contains code points in the range 0-255
(minus a replaceable code point >255). So this patch adds handling
for the 128-255 range to reduce the size overhead caused by encoding
them as two-byte. This could reduce the size of the binary by
~500KB and helps future files with this kind of code points.

Drive-by: replace `’` with `'` in undici.js to make it a Latin-1
only string. That could be removed if undici updates itself to
replace this character in the comment.

PR-URL: https://github.com/nodejs/node/pull/51605
Reviewed-By: Daniel Lemire <daniel@lemire.me>
Reviewed-By: Ethan Arrowood <ethan@arrowood.dev>
2024-02-17 17:09:24 +00:00
Michaël Zasso
3f4f642ede deps: update icu to 74.2
Refs: https://github.com/unicode-org/icu/releases/tag/release-74-2
PR-URL: https://github.com/nodejs/node/pull/51723
Refs: https://github.com/nodejs/node/pull/51721
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
Reviewed-By: LiviaMedeiros <livia@cirno.name>
Reviewed-By: Steven R Loomis <srl295@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
2024-02-15 19:46:30 +00:00
Michaël Zasso
1c147423d0 tools: fix update-icu.sh
The name of the sources MD5 file has changed.

Refs: https://github.com/unicode-org/icu/releases/tag/release-74-2
PR-URL: https://github.com/nodejs/node/pull/51723
Refs: https://github.com/nodejs/node/pull/51721
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
Reviewed-By: LiviaMedeiros <livia@cirno.name>
Reviewed-By: Steven R Loomis <srl295@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
2024-02-15 19:46:29 +00:00
Node.js GitHub Bot
a8de25ed15
tools: update lint-md-dependencies to rollup@4.10.0
PR-URL: https://github.com/nodejs/node/pull/51720
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2024-02-11 11:51:02 +00:00
Node.js GitHub Bot
8a41d9b636
tools: update github_reporter to 1.6.0
PR-URL: https://github.com/nodejs/node/pull/51658
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2024-02-06 00:46:47 +00:00
Joyee Cheung
ad0bcb9c02
vm: support using the default loader to handle dynamic import()
This patch adds support for using
`vm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER` as
`importModuleDynamically` in all APIs that take the option
except `vm.SourceTextModule`. This allows users to have a shortcut
to support dynamic import() in the compiled code without missing
the compilation cache if they don't need customization of the
loading process. We emit an experimental warning when the
`import()` is actually handled by the default loader through
this option instead of requiring `--experimental-vm-modules`.

In addition this refactors the documentation for
`importModuleDynamically` and adds a dedicated section for it
with examples.

`vm.SourceTextModule` is not supported in this patch because
it needs additional refactoring to handle `initializeImportMeta`,
which can be done in a follow-up.

PR-URL: https://github.com/nodejs/node/pull/51244
Fixes: https://github.com/nodejs/node/issues/51154
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
2024-02-01 11:45:42 +00:00
Node.js GitHub Bot
44476be9bf
tools: update lint-md-dependencies to rollup@4.9.6
PR-URL: https://github.com/nodejs/node/pull/51583
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2024-01-30 00:45:49 +00:00
Shi Pujin
6ae20aa63d
tools: fix loong64 build
PR-URL: https://github.com/nodejs/node/pull/51401
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2024-01-24 21:02:10 +00:00
Marco Ippolito
d8e385a5a2
tools: set normalizeTD text default to empty string
PR-URL: https://github.com/nodejs/node/pull/51543
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
2024-01-24 17:39:36 +00:00
Richard Lau
6ce718df60
tools: limit parallelism with ninja in V8 builds
If `JOBS` has been set in the environment to limit build parallelism,
pass that onto `ninja` when building V8.

PR-URL: https://github.com/nodejs/node/pull/51473
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2024-01-17 17:56:46 +00:00
Michaël Zasso
b180512aef
tools: do not pass invalid flag to C compiler
`-Wno-invalid-offsetof` is only valid for C++ and GCC warns about its
usage for C.

PR-URL: https://github.com/nodejs/node/pull/51409
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2024-01-15 12:29:56 +01:00
Node.js GitHub Bot
4257c0870b
tools: update lint-md-dependencies to rollup@4.9.5
PR-URL: https://github.com/nodejs/node/pull/51460
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2024-01-14 11:44:40 +00:00
Kohei Ueno
d102d16e98
tools: update inspector_protocol to 83b1154
PR-URL: https://github.com/nodejs/node/pull/51309
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
2024-01-11 04:41:26 +00:00
Node.js GitHub Bot
e0b159ee82
tools: update github_reporter to 1.5.4
PR-URL: https://github.com/nodejs/node/pull/51395
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2024-01-10 08:08:18 +00:00
Richard Lau
15b38fa2c1
tools: fix version parsing in brotli update script
Update `tools/dep_updaters/update-brotli.sh` to parse the current
version of brotli from the newer macros `BROTLI_VERSION_MAJOR`,
`BROTLI_VERSION_MINOR` and `BROTLI_VERSION_PATCH`.

PR-URL: https://github.com/nodejs/node/pull/51373
Refs: https://github.com/nodejs/node/pull/50804
Refs: https://github.com/nodejs/security-wg/issues/1181
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2024-01-07 15:39:22 +00:00
Node.js GitHub Bot
ad6c340416
tools: update lint-md-dependencies to rollup@4.9.4
PR-URL: https://github.com/nodejs/node/pull/51396
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2024-01-07 10:23:17 +00:00
Marco Ippolito
5d412a738a
tools: remove openssl v1 update script
PR-URL: https://github.com/nodejs/node/pull/51378
Fixes: https://github.com/nodejs/security-wg/issues/1182
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2024-01-07 09:07:11 +00:00
Alex Yang
921406ce71 tools: remove deprecated python api
PR-URL: https://github.com/nodejs/node/pull/49731
Fixes: https://github.com/nodejs/node/issues/49729
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2024-01-06 20:58:03 -06:00
Node.js GitHub Bot
477d6d7cd5
tools: update lint-md-dependencies to rollup@4.9.2
PR-URL: https://github.com/nodejs/node/pull/51320
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2024-01-02 00:47:40 +00:00
Michaël Zasso
07f3df4453
tools: fix dep_updaters dir updates
Replace directories instead of just copying to take removed files into
account.

PR-URL: https://github.com/nodejs/node/pull/51294
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2023-12-29 15:10:58 +00:00
cola119
f6a83cdb6f tools: update inspector_protocol to c488ba2
PR-URL: https://github.com/nodejs/node/pull/51293
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-12-29 13:10:25 +00:00
cola119
02cdc95126 tools: update inspector_protocol to 9b4a4aa
PR-URL: https://github.com/nodejs/node/pull/51293
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-12-29 13:10:24 +00:00
cola119
323ad042b9 tools: update inspector_protocol to 2f51e05
PR-URL: https://github.com/nodejs/node/pull/51293
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-12-29 13:10:23 +00:00
cola119
0faa94cac8 tools: update inspector_protocol to d7b099b
PR-URL: https://github.com/nodejs/node/pull/51293
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-12-29 13:10:23 +00:00
cola119
5cada97466 tools: update inspector_protocol to 912eb68
PR-URL: https://github.com/nodejs/node/pull/51293
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-12-29 13:10:22 +00:00
cola119
ef5bac0a46 tools: update inspector_protocol to 547c5b8
PR-URL: https://github.com/nodejs/node/pull/51293
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-12-29 13:10:21 +00:00
cola119
39ea735091 tools: update inspector_protocol to ca525fc
PR-URL: https://github.com/nodejs/node/pull/51293
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-12-29 13:10:21 +00:00
Cheng Zhao
df16c69983
doc: the GN files should use Node's license
PR-URL: https://github.com/nodejs/node/pull/50694
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Tierney Cyren <hello@bnb.im>
2023-12-28 20:27:05 +00:00
Michaël Zasso
ee61c2c6d3
build: add -flax-vector-conversions to V8 build
The flag is on by default in Clang and V8 recently made a change that
makes it necessary with GCC.

Refs: 7fbbf93ea8
Refs: 54067c5fbe/clang/include/clang/Basic/LangOptions.def (L133-L134)
Refs: https://gcc.gnu.org/onlinedocs/gcc/C-Dialect-Options.html#index-flax-vector-conversions
PR-URL: https://github.com/nodejs/node/pull/51257
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2023-12-24 11:24:11 +00:00
Node.js GitHub Bot
894f1d5ebf
tools: update lint-md-dependencies to rollup@4.9.1
PR-URL: https://github.com/nodejs/node/pull/51276
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2023-12-24 09:26:33 +00:00
Node.js GitHub Bot
7014eaca7d
tools: update lint-md-dependencies to rollup@4.9.0
PR-URL: https://github.com/nodejs/node/pull/51193
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2023-12-19 10:15:54 +00:00
Antoine du Hamel
898149fed8
doc: remove version from maintaining-dependencies.md
Those create unreasonable maintenance burden as updating one dependency
will conflict with another one. It's unclear we get much value out from
duplicating this information in this document, so this commit removes it

PR-URL: https://github.com/nodejs/node/pull/51195
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
2023-12-19 10:04:25 +00:00
Gabriel Schulhof
7a216d5fd6
node-api: segregate nogc APIs from rest via type system
We define a new type called `node_api_nogc_env` as the `const` version
of `napi_env` and `node_api_nogc_finalize` as a variant of
`napi_finalize` that accepts a `node_api_nogc_env` as its first
argument.

We then modify those APIs which do not affect GC state as accepting a
`node_api_nogc_env`. APIs accepting finalizer callbacks are modified to
accept `node_api_nogc_finalize` callbacks. Thus, the only way to attach
a `napi_finalize` callback, wherein Node-APIs affecting GC state may be
called is to call `node_api_post_finalizer` from a
`node_api_nogc_finalize` callback.

In keeping with the process of introducing new Node-APIs, this feature
is guarded by `NAPI_EXPERIMENTAL`. Since this feature modifies APIs
already marked as stable, it is additionally guared by
`NODE_API_EXPERIMENTAL_NOGC_ENV`, so as to provide a further buffer to
adoption. Nevertheless, both guards must be removed upon releasing a
new version of Node-API.

PR-URL: https://github.com/nodejs/node/pull/50060
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Vladimir Morozov <vmorozov@microsoft.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2023-12-19 07:37:15 +00:00
Node.js GitHub Bot
8573146f72
tools: update eslint to 8.56.0
PR-URL: https://github.com/nodejs/node/pull/51194
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2023-12-19 04:38:28 +00:00
Joyee Cheung
fea74b0f7b
src: support configurable snapshot
- Add support for --build-snapshot-config which allows passing
  snapshot configurations via a JSON configuration file.
- Add support for node::SnapshotConfig in the embedder API

The initial configurable options are:

- "builder" (SnapshotConfig::builder_script_path): path to the
  builder script.
- "withoutCodeCache" (SnapshotFlags::kWithoutCodeCache): disable
  code cache generation.

PR-URL: https://github.com/nodejs/node/pull/50453
Refs: https://github.com/nodejs/node/issues/42566
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
2023-12-15 15:13:46 +01:00
Node.js GitHub Bot
1b60054fff
tools: update lint-md-dependencies to rollup@4.7.0
PR-URL: https://github.com/nodejs/node/pull/51106
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-12-12 00:34:55 +00:00
Node.js GitHub Bot
ab93a35a52
tools: update doc to highlight.js@11.9.0 unified@11.0.4
And unist-util-select@5.1.0.

PR-URL: https://github.com/nodejs/node/pull/50459
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-12-11 01:41:20 +01:00
Stefan Stojanovic
1ba508d51b
win,tools: upgrade Windows signing to smctl
As a part of the new signing requrements for Windows change approach to
use the DigiCert cloud HSM service KeyLocker.

PR-URL: https://github.com/nodejs/node/pull/50956
Fixes: https://github.com/nodejs/build/issues/3491
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2023-12-08 21:58:17 +00:00
Yagiz Nizipli
28b05cf8c8 tools: fix simdjson updater
PR-URL: https://github.com/nodejs/node/pull/50986
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2023-12-06 01:23:59 +00:00
Node.js GitHub Bot
9def0a9f94
tools: update eslint to 8.55.0
PR-URL: https://github.com/nodejs/node/pull/51025
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-12-05 00:37:20 +00:00
Node.js GitHub Bot
646058a257
tools: update lint-md-dependencies to rollup@4.6.1
PR-URL: https://github.com/nodejs/node/pull/51022
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-12-05 00:37:00 +00:00
Node.js GitHub Bot
75e219fb3c
tools: update lint-md-dependencies to rollup@4.5.2
PR-URL: https://github.com/nodejs/node/pull/50913
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-11-29 21:04:09 +00:00
Marco Ippolito
ef5c8e4593
tools: fix current version check
PR-URL: https://github.com/nodejs/node/pull/50951
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-11-28 22:39:29 +00:00
Cheng Zhao
0bb5d88871
v8,tools: expose necessary V8 defines
PR-URL: https://github.com/nodejs/node/pull/50820
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-11-25 04:30:50 +00:00
Ulises Gascón
83df02c180 tools: add macOS notarization verification step
PR-URL: https://github.com/nodejs/node/pull/50833
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2023-11-23 13:51:51 -05:00
Ulises Gascón
5f973d1dfd tools: use macOS keychain to notarize the releases
PR-URL: https://github.com/nodejs/node/pull/50715
Reviewed-By: Michael Dawson <midawson@redhat.com>
2023-11-22 10:33:12 -05:00
Node.js GitHub Bot
7c726f742a deps: update icu to 74.1
PR-URL: https://github.com/nodejs/node/pull/50515
Reviewed-By: Steven R Loomis <srl295@gmail.com>
Reviewed-By: LiviaMedeiros <livia@cirno.name>
2023-11-21 16:55:15 -05:00
Node.js GitHub Bot
8c04b45247
crypto: update root certificates to NSS 3.95
This is the certdata.txt[0] from NSS 3.95, released on 2023-11-16.

This is the version of NSS that will ship in Firefox 121 on
2023-12-19.

Certificates added:
- TrustAsia Global Root CA G3
- TrustAsia Global Root CA G4
- CommScope Public Trust ECC Root-01
- CommScope Public Trust ECC Root-02
- CommScope Public Trust RSA Root-01
- CommScope Public Trust RSA Root-02

Certificates removed:
- Autoridad de Certificacion Firmaprofesional CIF A62634068

[0] https://hg.mozilla.org/projects/nss/raw-file/NSS_3_95_RTM/lib/ckfw/builtins/certdata.txt

PR-URL: https://github.com/nodejs/node/pull/50805
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-11-21 20:55:50 +00:00
Node.js GitHub Bot
b6b05d92f0
tools: update eslint to 8.54.0
PR-URL: https://github.com/nodejs/node/pull/50809
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-11-21 00:49:30 +00:00
Node.js GitHub Bot
fa274693ca
tools: update lint-md-dependencies to rollup@4.5.0
PR-URL: https://github.com/nodejs/node/pull/50807
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-11-21 00:49:22 +00:00
Keyhan Vakil
5b73da02e5 build: add configuration flag to enable Maglev
This adds a configuration flag to enable V8's Maglev compiler.

Unfortunately compilation fails unless you have clang-14+ or gcc-13+,
but I sent a patch for that upstream. Other than that, it builds and all
tests pass locally on my x86-64 Linux machine.

The gn scraper regexes were broken preventing the compilation from
linking. Fix them. As a drive-by, also add additional conditionals for
compilation on 32-bit arm.

Refs: https://github.com/nodejs/node/issues/50690
PR-URL: https://github.com/nodejs/node/pull/50692
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-11-20 04:10:40 +00:00
Chengzhong Wu
d1326e5b54
build: disable flag v8_scriptormodule_legacy_lifetime
Usages of `v8::ScriptOrModule` were removed in https://github.com/nodejs/node/pull/44198
so the flag can be disabled by default.

PR-URL: https://github.com/nodejs/node/pull/50616
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
2023-11-17 03:55:33 +00:00
Yagiz Nizipli
4ec085b240 deps: add simdjson
PR-URL: https://github.com/nodejs/node/pull/50322
Reviewed-By: Jacob Smith <jacob@frende.me>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
2023-11-17 00:16:38 +00:00
Cheng Zhao
1d8483e713
tools: recognize GN files in dep_updaters
PR-URL: https://github.com/nodejs/node/pull/50693
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Tierney Cyren <hello@bnb.im>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2023-11-15 04:37:09 +00:00
Ulises Gascon
dfbca339b7 tools: remove unused file
PR-URL: https://github.com/nodejs/node/pull/50622
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Zeyu "Alex" Yang <himself65@outlook.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2023-11-14 18:57:19 -05:00
Marco Ippolito
0304da22d3
tools: change minimatch install strategy
PR-URL: https://github.com/nodejs/node/pull/50476
Refs: https://github.com/nodejs/security-wg/issues/1037
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-11-13 08:32:30 +00:00
Node.js GitHub Bot
36e4635915
tools: update lint-md-dependencies to rollup@4.3.1
PR-URL: https://github.com/nodejs/node/pull/50675
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2023-11-12 11:07:19 +00:00
Ulises Gascón
ce6c9b050d
tools: add macOS notarization stapler
PR-URL: https://github.com/nodejs/node/pull/50625
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-11-11 19:58:27 +00:00
Cheng Zhao
32af45d241
build: add GN build files
PR-URL: https://github.com/nodejs/node/pull/47637
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-11-11 09:51:05 +00:00
Node.js GitHub Bot
33704c46e3
tools: update eslint to 8.53.0
PR-URL: https://github.com/nodejs/node/pull/50559
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-11-07 00:48:10 +00:00
Node.js GitHub Bot
15a2635c0a
tools: update lint-md-dependencies to rollup@4.3.0
PR-URL: https://github.com/nodejs/node/pull/50556
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2023-11-07 00:48:01 +00:00
Michaël Zasso
cde3296f5f
tools: compare ICU checksums before file changes
Otherwise we end up with an bad update PR when checksums don't match.

Refs: https://github.com/nodejs/node/pull/50495
PR-URL: https://github.com/nodejs/node/pull/50522
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-11-06 11:21:49 +00:00
Marco Ippolito
2a1bd660bd
tools: improve update acorn-walk script
PR-URL: https://github.com/nodejs/node/pull/50473
Refs: https://github.com/nodejs/security-wg/issues/1037
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
2023-11-05 09:43:08 +00:00
Node.js GitHub Bot
83736436b2
tools: update lint-md-dependencies to rollup@4.2.0
PR-URL: https://github.com/nodejs/node/pull/50496
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-11-03 08:24:55 +00:00
Shi Pujin
1b74aa3cb2
test: fix timeout of test-cpu-prof-dir-worker.js in LoongArch devices
PR-URL: https://github.com/nodejs/node/pull/50363
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-11-02 07:29:56 +00:00
Ulises Gascón
d2903f9df2
tools: improve macOS notarization process output readability
PR-URL: https://github.com/nodejs/node/pull/50389
Fixes: https://github.com/nodejs/build/issues/3529
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-11-01 13:40:54 +00:00
Michaël Zasso
6557c1c9b1 tools: update gyp-next to v0.16.1
PR-URL: https://github.com/nodejs/node/pull/50380
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-10-31 12:44:38 +00:00
Node.js GitHub Bot
a913b8742f
tools: update lint-md-dependencies to rollup@4.1.5 unified@11.0.4
PR-URL: https://github.com/nodejs/node/pull/50461
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-10-31 00:31:58 +00:00
Ulises Gascón
1392538d1b
tools: remove unused version function
PR-URL: https://github.com/nodejs/node/pull/50390
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-10-30 11:23:30 +01:00
Marco Ippolito
ecf0330bbe
tools: avoid npm install in deps installation
PR-URL: https://github.com/nodejs/node/pull/50413
Refs: https://github.com/nodejs/node/pull/49747
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-10-30 08:16:39 +00:00
Richard Lau
67b1383149
Revert "tools: update doc dependencies"
This reverts commit 6431c657d9.

PR-URL: https://github.com/nodejs/node/pull/50414
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-10-26 20:46:58 +00:00
Node.js GitHub Bot
6431c657d9
tools: update doc dependencies
- hightlight.js@11.9.0
- remark-frontmatter@5.0.0
- remark-gfm@4.0.0
- remark-html@16.0.1
- remark-parse@11.0.0
- remark-rehype@11.0.0
- unified@11.0.3

PR-URL: https://github.com/nodejs/node/pull/49988
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-26 12:42:35 +00:00
Cheng Zhao
d1ccca9d2b
build: fix building when there is only python3
PR-URL: https://github.com/nodejs/node/pull/48462
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
2023-10-25 02:43:37 +00:00
Node.js GitHub Bot
452de06a0f
tools: update eslint to 8.52.0
PR-URL: https://github.com/nodejs/node/pull/50326
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-24 00:40:53 +00:00
Jithil P Ponnan
9c7af51049
src: add commit hash shorthand in zlib version
src: add commit hash shorthand in zlib version
PR-URL: https://github.com/nodejs/node/pull/50158
Fixes: https://github.com/nodejs/node/issues/50139
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2023-10-23 17:22:16 +00:00
Node.js GitHub Bot
b00e3b300e
tools: update lint-md-dependencies
- @rollup/plugin-commonjs@25.0.7
- @rollup/plugin-node-resolve@15.2.3
- rollup@4.1.4

PR-URL: https://github.com/nodejs/node/pull/50190
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-23 17:11:15 +00:00
Ulises Gascón
fc423db0aa
tools: drop support for osx notarization with gon
Refs: https://github.com/nodejs/build/issues/3385#issuecomment-1729281269
PR-URL: https://github.com/nodejs/node/pull/50291
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
2023-10-21 15:54:17 +00:00
Jungku Lee
f09a50c39d
tools: update comment in update-uncidi.sh and acorn_version.h
PR-URL: https://github.com/nodejs/node/pull/50175
Fixes: https://github.com/nodejs/node/issues/50159
Refs: https://github.com/nodejs/node/pull/50165
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
2023-10-15 22:28:23 +02:00
Mohammed Keyvanzadeh
31bde06233
tools: refactor checkimports.py
- Use f-strings for formatting.
- Use raw strings for regexes alongside f-strings.
- Use a generator.
- Remove unnecessary `else` clause.

PR-URL: https://github.com/nodejs/node/pull/50011
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Christian Clauss <cclauss@me.com>
2023-10-15 15:14:57 +00:00
Antoine du Hamel
d1ef6aa2db
esm: use import attributes instead of import assertions
The old import assertions proposal has been
renamed to "import attributes" with the follwing major changes:

1. The keyword is now `with` instead of `assert`.
2. Unknown assertions cause an error rather than being ignored,

This commit updates the documentation to encourage folks to use the new
syntax, and add aliases for module customization hooks.

PR-URL: https://github.com/nodejs/node/pull/50140
Fixes: https://github.com/nodejs/node/issues/50134
Refs: 159c82c5e6
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
Reviewed-By: Jacob Smith <jacob@frende.me>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2023-10-14 03:52:38 +00:00
Keksonoid
766198b9e1
tools: fix comments referencing dep_updaters scripts
PR-URL: https://github.com/nodejs/node/pull/50165
Fixes: https://github.com/nodejs/node/issues/50159
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: Filip Skokan <panva.ip@gmail.com>
2023-10-13 00:08:05 +02:00
Matteo Collina
7ed50e5af6
deps: update undici to v5.26.3
Signed-off-by: Matteo Collina <hello@matteocollina.com>
PR-URL: https://github.com/nodejs/node/pull/50153
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Filip Skokan <panva.ip@gmail.com>
Reviewed-By: Matthew Aitken <maitken033380023@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2023-10-12 09:42:04 +00:00
Michaël Zasso
8568de3da6
tools: add new V8 headers to distribution
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:55 +02:00
Michaël Zasso
86cb23d09f
tools: update V8 gypfiles for 11.8
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:53 +02:00
Michaël Zasso
9c6219c7e2
tools: update V8 gypfiles for 11.7
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:51 +02:00
Michaël Zasso
73ddf50163
tools: update V8 gypfiles for 11.6
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:50 +02:00
Michaël Zasso
817ef255ea
tools: update V8 gypfiles for 11.5
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:48 +02:00
Michaël Zasso
f34a3a9861
tools: update V8 gypfiles for 11.4
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:46 +02:00
Michaël Zasso
162a0652ab
deps: bump minimum ICU version to 73
Refs: d9715adf89
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:43 +02:00
Node.js GitHub Bot
a0a5b751fb
tools: update lint-md-dependencies
- @rollup/plugin-commonjs@25.0.5
- @rollup/plugin-node-resolve@15.2.2
- rollup@4.0.2

PR-URL: https://github.com/nodejs/node/pull/50083
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 00:45:53 +00:00
Joyee Cheung
387e2929fe
src: generate default snapshot with --predictable
To improve determinism of snapshot generation, add --predictable
to the V8 flags used to initialize a process launched to generate
snapshot. Also add a kGeneratePredictableSnapshot flag
to ProcessInitializationFlags for this and moves the configuration
of these flags into node::InitializeOncePerProcess() so that
it can be shared by embedders.

PR-URL: https://github.com/nodejs/node/pull/48749
Refs: https://github.com/nodejs/build/issues/3043
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
2023-10-09 02:53:19 +00:00
Node.js GitHub Bot
69fb55e6b9
tools: update eslint to 8.51.0
PR-URL: https://github.com/nodejs/node/pull/50084
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-08 18:51:04 +00:00
Ben Noordhuis
f73650ea52
tools: remove genv8constants.py
Unused after commit aa3a572e6b ("build: remove dtrace & etw support")
from last year. I had this vague notion that llnode also used it but
that is another script.

Fixes: https://github.com/nodejs/node/issues/49991
PR-URL: https://github.com/nodejs/node/pull/50023
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-10-05 21:11:10 +00:00
Node.js GitHub Bot
581434e54f
tools: update eslint to 8.50.0
PR-URL: https://github.com/nodejs/node/pull/49989
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2023-10-03 15:32:41 +00:00
Node.js GitHub Bot
344d3c4b7c
tools: update lint-md-dependencies
- remark-parse@11.0.0
- remark-preset-lint-node@5.0.0
- remark-stringify@11.0.0
- rollup@3.29.4

PR-URL: https://github.com/nodejs/node/pull/49983
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-10-03 13:08:30 +00:00
Claudio W
47b2883673
doc: updated building docs for windows
PR-URL: https://github.com/nodejs/node/pull/49767
Reviewed-By: Jacob Smith <jacob@frende.me>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-10-01 14:22:58 +00:00
Daniel Lemire
2990390359
inspector: simplify dispatchProtocolMessage
PR-URL: https://github.com/nodejs/node/pull/49780
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-09-30 01:58:09 +00:00
Rich Trott
7f06c270c6 tools: add navigation ARIA landmark to generated API ToC
As an accessibility improvement, specify the navigation landmark for
the element of our docs that contains the table of contents generated
for the specific API page.

Ref: https://www.w3.org/WAI/ARIA/apg/practices/landmark-regions/
Ref: https://www.w3.org/WAI/WCAG21/Techniques/aria/ARIA20.html
PR-URL: https://github.com/nodejs/node/pull/49882
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Claudio Wunder <cwunder@gnome.org>
Reviewed-By: LiviaMedeiros <livia@cirno.name>
2023-09-28 14:08:53 -07:00
Rich Trott
bc056c2426 doc: add main ARIA landmark to API docs
As an accessibility improvement, specify the main landmark for
the column in our docs that contains the main content.

Ref: https://www.w3.org/WAI/ARIA/apg/practices/landmark-regions/
Ref: https://www.w3.org/WAI/WCAG21/Techniques/aria/ARIA20.html
PR-URL: https://github.com/nodejs/node/pull/49882
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Claudio Wunder <cwunder@gnome.org>
Reviewed-By: LiviaMedeiros <livia@cirno.name>
2023-09-28 14:08:52 -07:00
Ulises Gascon
e97d25687b tools: use osx notarytool for future releases
Signed-off-by: Ulises Gascon <UlisesGascon@users.noreply.github.com>

Refs: https://github.com/nodejs/build/issues/3385
PR-URL: https://github.com/nodejs/node/pull/48701
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-09-28 16:51:37 -04:00
Node.js GitHub Bot
3f1936f698
tools: update github_reporter to 1.5.3
PR-URL: https://github.com/nodejs/node/pull/49877
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-09-28 13:01:41 +00:00
Michael Dawson
2ccfb23b7f
tools: fix uvwasi updater
- fix uvwasi updater to update the right dep in the
  documentation for maintaining dependencies.

Signed-off-by: Michael Dawson <mdawson@devrus.com>
PR-URL: https://github.com/nodejs/node/pull/49682
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-09-19 08:15:23 +00:00
Node.js GitHub Bot
d847895b8d
tools: update lint-md-dependencies to rollup@3.29.2
PR-URL: https://github.com/nodejs/node/pull/49679
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-09-19 00:30:52 +00:00
Node.js GitHub Bot
e4d1259e5f
tools: update eslint to 8.49.0
PR-URL: https://github.com/nodejs/node/pull/49586
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2023-09-12 00:44:25 +00:00
Node.js GitHub Bot
b046a11572
tools: update lint-md-dependencies to rollup@3.29.0 unified@11.0.3
PR-URL: https://github.com/nodejs/node/pull/49584
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-09-12 00:44:16 +00:00
Antoine du Hamel
8103a6418e
doc: rename possibly confusing variable and CSS class
A "selector" usually refers to a CSS selector, when here it refers to a
checkbox.

PR-URL: https://github.com/nodejs/node/pull/49536
Reviewed-By: Claudio Wunder <cwunder@gnome.org>
Reviewed-By: Tierney Cyren <hello@bnb.im>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
2023-09-08 17:03:57 +02:00
Cheng Zhao
def014dff3
tools: allow passing absolute path of config.gypi in js2c
PR-URL: https://github.com/nodejs/node/pull/49162
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
2023-09-07 09:20:38 +00:00
Node.js GitHub Bot
5b31ff1127
tools: update doc dependencies
Updated to rehype-raw@7.0.0 rehype-stringify@10.0.0 unified@11.0.2

PR-URL: https://github.com/nodejs/node/pull/49467
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2023-09-05 06:13:53 +00:00
Joyee Cheung
0028fd12b7
build: add --write-snapshot-as-array-literals to configure.py
This makes it easier to locate indeterminism in the snapshot, with
the following command:

$ ./configure --write-snapshot-as-array-literals
$ make V=
$ mv out/Release/obj/gen/node_snapshot.cc ./node_snapshot.cc
$ make V=
$ diff out/Release/obj/gen/node_snapshot.cc ./node_snapshot.cc

PR-URL: https://github.com/nodejs/node/pull/49312
Refs: https://github.com/nodejs/build/issues/3043
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2023-09-04 23:44:23 +02:00
Node.js GitHub Bot
0ebd0882a8
crypto: update root certificates to NSS 3.93
This is the certdata.txt[0] from NSS 3.93, released on 2023-06-29.

This is the version of NSS that shipped in Firefox 116 on
2023-08-01.

Certificates added:
- Sectigo Public Server Authentication Root E46
- Sectigo Public Server Authentication Root R46
- SSL.com TLS RSA Root CA 2022
- SSL.com TLS ECC Root CA 2022
- Atos TrustedRoot Root CA ECC TLS 2021
- Atos TrustedRoot Root CA RSA TLS 2021

Certificates removed:
- Hongkong Post Root CA 1
- E-Tugra Certification Authority
- E-Tugra Global Root CA RSA v3
- E-Tugra Global Root CA ECC v3

[0] https://hg.mozilla.org/projects/nss/raw-file/NSS_3_93_RTM/lib/ckfw/builtins/certdata.txt

PR-URL: https://github.com/nodejs/node/pull/49341
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-08-29 15:44:57 +00:00
Node.js GitHub Bot
7104a715e0
tools: update eslint to 8.48.0
PR-URL: https://github.com/nodejs/node/pull/49343
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-08-29 00:33:35 +00:00
Node.js GitHub Bot
7e7aad84df
tools: update lint-md-dependencies
PR-URL: https://github.com/nodejs/node/pull/49342
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-08-29 00:33:27 +00:00
Cheng Zhao
0409cdd91c
tools: remove v8_dump_build_config action
The script has been removed in #44741.

PR-URL: https://github.com/nodejs/node/pull/49301
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-08-27 22:06:33 +00:00
Node.js GitHub Bot
1ca23adc35 tools: update lint-md-dependencies
- @rollup/plugin-node-resolve@15.2.0
- unified@11.0.1
- vfile-reporter@8.1.0

PR-URL: https://github.com/nodejs/node/pull/49253
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
2023-08-26 12:56:58 +02:00
Yagiz Nizipli
769823e57c
src: add built-in .env file support
PR-URL: https://github.com/nodejs/node/pull/48890
Refs: https://github.com/orgs/nodejs/discussions/44975
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
2023-08-17 14:08:05 +00:00
Moshe Atlow
e2d666d269
tools: fix github reporter appended multiple times
PR-URL: https://github.com/nodejs/node/pull/49199
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2023-08-16 18:22:45 +00:00
Node.js GitHub Bot
d6d8a6feda tools: update lint-md-dependencies
- @rollup/plugin-commonjs@25.0.4
- rollup@3.28.0

PR-URL: https://github.com/nodejs/node/pull/49122
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-08-15 15:44:50 +02:00
Moshe Atlow
0d6cdb25fe tools: use @reporters/github when running in github actions
PR-URL: https://github.com/nodejs/node/pull/49129
Refs: https://github.com/nodejs/node/issues/49120
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-08-15 07:16:52 +00:00
Moshe Atlow
8972f9beed tools: add @reporters/github to tools
PR-URL: https://github.com/nodejs/node/pull/49129
Refs: https://github.com/nodejs/node/issues/49120
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-08-15 07:16:51 +00:00
Node.js GitHub Bot
a3b25ebcc2
tools: update eslint to 8.47.0
PR-URL: https://github.com/nodejs/node/pull/49124
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-08-15 00:43:52 +00:00
Joyee Cheung
634eb505a4
src: refactor vector writing in snapshot builder
- Build a static table of octal strings and use it instead of
  building octal strings repeatedly during printing.
- Print a newline and an offset for every 64 bytes in the case
  of printing array literals so it's easier to locate
  variation in snapshot blobs.
- Rework the printing routines so that the differences are only
  made in a WriteByteVectorLiteral routine. We can update this
  for compression support in the future.
- Rename Snapshot::Generate() that write the data as C++ source
  instead of a blob as Snaphost::GenerateAsSource() for clarity,
  and move the file stream operations into it to streamline
  error handling.

PR-URL: https://github.com/nodejs/node/pull/48851
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
2023-08-14 12:53:02 +00:00
Daryl Haresign
7f2c810814
src,tools: initialize cppgc
This patch:

- Initializes cppgc in InitializeOncePerProcess() when
  kNoInitializeCppgc is not set
- Create a CppHeap and attach it to the Isolate when
  there isn't one already during IsolateData initialization.
  The CppHeap is detached and terminated when IsolateData
  is freed.
- Publishes the cppgc headers in the tarball.

This allows C++ addons to start using cppgc to manage objects.

A helper node::SetCppgcReference() is also added to help addons
enable cppgc tracing in a user-defined object.

Co-authored-by: Joyee Cheung <joyeec9h3@gmail.com>
Refs: https://github.com/nodejs/node/issues/40786
PR-URL: https://github.com/nodejs/node/pull/45704
Refs: https://docs.google.com/document/d/1ny2Qz_EsUnXGKJRGxoA-FXIE2xpLgaMAN6jD7eAkqFQ/edit
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
2023-08-11 00:43:51 +00:00
Node.js GitHub Bot
e1265cd473
tools: update lint-md-dependencies to rollup@3.27.2
PR-URL: https://github.com/nodejs/node/pull/49035
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-08-08 18:36:25 +00:00
Node.js GitHub Bot
d396a041f7
tools: update eslint to 8.46.0
PR-URL: https://github.com/nodejs/node/pull/48966
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2023-08-01 00:45:18 +00:00
Node.js GitHub Bot
f169f791a0
tools: update lint-md-dependencies to rollup@3.27.0
PR-URL: https://github.com/nodejs/node/pull/48965
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2023-08-01 00:45:06 +00:00
Raz Luvaton
ee391f3781
test_runner: add __proto__ null
PR-URL: https://github.com/nodejs/node/pull/48663
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
2023-07-29 13:22:16 +00:00
Node.js GitHub Bot
9edea976a1
tools: update lint-md-dependencies to rollup@3.26.3
PR-URL: https://github.com/nodejs/node/pull/48888
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Rich Trott <rtrott@gmail.com>
2023-07-25 00:56:53 +00:00
Node.js GitHub Bot
45ec623de6
tools: update lint-md-dependencies to @rollup/plugin-commonjs@25.0.3
PR-URL: https://github.com/nodejs/node/pull/48791
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
2023-07-18 19:27:30 +00:00
Node.js GitHub Bot
8f7c4e9cbf
tools: update eslint to 8.45.0
PR-URL: https://github.com/nodejs/node/pull/48793
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-07-18 00:52:03 +00:00
Richard Lau
6a1316dc99
tools: run fetch_deps.py with Python 3
Python 3 is now required to run `gclient`. Run `tools/v8/fetch_deps.py`,
which spawns `glient`, with Python 3.

PR-URL: https://github.com/nodejs/node/pull/48729
Fixes: https://github.com/nodejs/node/issues/48728
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Debadree Chatterjee <debadree333@gmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-07-12 14:40:57 +00:00
Node.js GitHub Bot
43e5798283
tools: update doc to unist-util-select@5.0.0 unist-util-visit@5.0.0
PR-URL: https://github.com/nodejs/node/pull/48714
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
2023-07-11 16:27:23 +00:00
Node.js GitHub Bot
41f70568a4
tools: update lint-md-dependencies to rollup@3.26.2
PR-URL: https://github.com/nodejs/node/pull/48705
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-07-11 00:53:57 +00:00
Chemi Atlow
c3ab184373
events: allow safely adding listener to abortSignal
PR-URL: https://github.com/nodejs/node/pull/48596
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
2023-07-05 22:04:23 +00:00
Node.js GitHub Bot
2f369ccacf
tools: update eslint to 8.44.0
PR-URL: https://github.com/nodejs/node/pull/48632
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Zeyu "Alex" Yang <himself65@outlook.com>
2023-07-04 00:45:55 +00:00
Node.js GitHub Bot
14e2d69da0
tools: update lint-md-dependencies to rollup@3.26.0
PR-URL: https://github.com/nodejs/node/pull/48631
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
2023-07-04 00:45:46 +00:00
Chengzhong Wu
6ffacbf0f9 node-api: rename internal NAPI_VERSION definition
PR-URL: https://github.com/nodejs/node/pull/48501
Reviewed-By: Gabriel Schulhof <gabrielschulhof@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Vladimir Morozov <vmorozov@microsoft.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2023-06-28 17:08:58 -04:00
Node.js GitHub Bot
9117d45bc1
tools: update lint-md-dependencies
Update to @rollup/plugin-commonjs@25.0.2 and rollup@3.25.2.

PR-URL: https://github.com/nodejs/node/pull/48544
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
2023-06-27 00:59:10 +00:00
Keyhan Vakil
7eafd2f7e8 child_process: improve spawn performance on Linux
Speed up child_process.spawn by enabling the new V8 build flag which
makes fork/exec faster.

Here are the results of running the existing benchmark. Note that this
optimization helps more for applications with larger heaps, so this is
somewhat of an underestimate of the real world performance benefits.

```console
$ ./node benchmark/compare.js --runs 15 \
        --new ./node \
        --old ~/node-v20/out/Release/node \
        --filter params child_process > cpr
$ node-benchmark-compare cpr
                                 confidence improvement  (***)
methodName='exec' n=1000                ***     60.84 % ±5.43%
methodName='execFile' n=1000            ***     53.72 % ±3.33%
methodName='execFileSync' n=1000        ***      9.10 % ±0.84%
methodName='execSync' n=1000            ***     10.44 % ±0.97%
methodName='spawn' n=1000               ***     53.10 % ±2.90%
methodName='spawnSync' n=1000           ***      8.64 % ±1.22%

  0.01 false positives, when considering a 0.1% risk acceptance (***)
```

Fixes: https://github.com/nodejs/node/issues/25382
Fixes: https://github.com/nodejs/node/issues/14917
Refs: https://github.com/nodejs/performance/issues/93
Refs: https://github.com/nodejs/performance/issues/89
PR-URL: https://github.com/nodejs/node/pull/48523
Refs: 1a782f6543
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
Reviewed-By: Debadree Chatterjee <debadree333@gmail.com>
2023-06-24 17:34:44 +00:00
Keyhan Vakil
5c1233dfbc
tools: speedup compilation of js2c output
Incremental compilation of Node.js is slow. Currently on a powerful
Linux machine, it takes about 9 seconds and 830 MB of memory to compile
`gen/node_javascript.cc` with g++. This is the longest step when
recompiling a small change to a Javascript file.

`gen/node_javascript.cc` contains a lot of large binary literals of our
Javascript source code. It is well-known that embedding large binary
literals as C/C++ arrays is slow. One workaround is to include the data
as string literals instead. This is particularly nice for the Javascript
included via js2c, which look better as string literals anyway.

Add a build flag `NODE_JS2C_USE_STRING_LITERALS` to js2c. When this flag
is set, we emit string literals instead of array literals, i.e.:

```c++
// old: static const uint8_t X[] = { ... };
static const uint8_t *X = R"JS2C1b732aee(...)JS2C1b732aee";

// old: static const uint16_t Y[] = { ... };
static const uint16_t *Y = uR"JS2C1b732aee(...)JS2C1b732aee";
```

This requires some modest refactoring in order to deal with the flag
being on or off, but the new code itself is actually shorter.

I only enabled the new flag on Linux/macOS, since those are systems that
I have available for testing. On my Linux system with gcc, it speeds up
compilation by 5.5s (9.0s -> 3.5s). On my Mac system with clang, it
speeds up compilation by 2.2s (3.7s -> 1.5s). (I don't think this flag
will work with MSVC, but it'd probably speed up clang on windows.)

The long-term goal here is probably to allow this to occur incrementally
per Javascript file & in parallel, to avoid recompiling all of
`gen/node_javascript.cc`. Unfortunately the necessary gyp incantations
seem impossible (or at least, far beyond me). Anyway, a 60% speedup is a
nice enough win.

Refs: https://github.com/nodejs/node/issues/47984
PR-URL: https://github.com/nodejs/node/pull/48160
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
2023-06-24 15:52:29 +00:00
Node.js GitHub Bot
cd28ebbcb7
deps: update icu to 73.2
PR-URL: https://github.com/nodejs/node/pull/48502
Reviewed-By: Debadree Chatterjee <debadree333@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
2023-06-23 13:50:48 +00:00
Node.js GitHub Bot
b352e0c36a
tools: update lint-md-dependencies
Updates: rollup@3.25.1 to-vfile@8.0.0 vfile-reporter@8.0.0
PR-URL: https://github.com/nodejs/node/pull/48486
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
2023-06-22 16:34:31 +00:00
Tobias Nießen
0ae8bf8dbc msi: do not create AppData\Roaming\npm
This effectively reverts e431cae7e7 due to
security concerns. The directory is being created with elevated
privileges but its path may depend on an unprivileged user's environment
variables. Creating a directory in certain sensitive locations can cause
Windows to become inoperable.

Creating AppData\Roaming\npm was an intentional addition in order to
resolve https://github.com/nodejs/node-v0.x-archive/issues/8141, which
appears to have been a common issue for users of npm. However, this was
implemented before 4cfe5eb9af, which
changed the MSI installation scope to perMachine. There were concerns
about creating the npm directory in that PR, albeit not related to
security (see https://github.com/nodejs/node-v0.x-archive/pull/25640).

Refs: https://github.com/nodejs/node-v0.x-archive/issues/8141
Refs: https://github.com/nodejs/node-v0.x-archive/pull/8838
Refs: https://github.com/nodejs/node-v0.x-archive/pull/25640
PR-URL: https://github.com/nodejs-private/node-private/pull/408
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
CVE-ID: CVE-2023-30585
2023-06-20 17:30:15 -03:00
Luigi Pinca
e7646a5dc0
tools: replace sed with perl
For cross-platform compatibility use perl instead of sed.

Fixes: https://github.com/nodejs/node/issues/48496
PR-URL: https://github.com/nodejs/node/pull/48499
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-06-20 09:11:55 +00:00
Marco Ippolito
51ca71cb51
tools: automate update openssl v16
PR-URL: https://github.com/nodejs/node/pull/48377
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
2023-06-19 12:53:09 +00:00
Node.js GitHub Bot
9bdd17230d
tools: update eslint to 8.43.0
PR-URL: https://github.com/nodejs/node/pull/48487
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-06-18 06:25:18 +00:00
Node.js GitHub Bot
6287d4d3f8 tools: update doc to to-vfile@8.0.0
PR-URL: https://github.com/nodejs/node/pull/48485
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-06-18 06:12:23 +00:00
Rich Trott
04bd9fd5b3 tools: prepare tools/doc for to-vfile 8.0.0
toVFile.readSync() is removed in favor of readSync().

PR-URL: https://github.com/nodejs/node/pull/48485
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-06-18 06:12:22 +00:00
Node.js GitHub Bot
f3b713d187
tools: update lint-md-dependencies
- `@rollup/plugin-commonjs@25.0.1`
- `rollup@3.24.1`

PR-URL: https://github.com/nodejs/node/pull/48417
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-06-14 22:57:44 +00:00
Node.js GitHub Bot
d402e2ab78
crypto: update root certificates to NSS 3.90
This is the certdata.txt[0] from NSS 3.90, released on 2023-04-06.

This is the version of NSS that shipped in Firefox 113 on
2023-05-09.

Certificates added:
- BJCA Global Root CA1
- BJCA Global Root CA2

[0] https://hg.mozilla.org/projects/nss/raw-file/NSS_3_90_RTM/lib/ckfw/builtins/certdata.txt

PR-URL: https://github.com/nodejs/node/pull/48416
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2023-06-13 00:55:36 +00:00
Joyee Cheung
718f62bfcf
bootstrap: unify snapshot builder and embedder entry points
- Run the embedder entry point directly through
  runEmbedderEntryPoint(), instead of going through another
  JS -> C++ trip through the function returned by
  getEmbedderEntryFunction()
- For --build-snapshot, read the snapshot script code directly in C++
  and pass it to SnapshotBuilder::Generate(), this makes the entry point
  more explicit instead of hiding it in JS land, and also makes it
  possible to invoke SnapshotBuilder::Generate() internally to create
  a custom snapshot.
- Previously we used process.execPath for the embedder to create
  __filename and __dirname in the snapshot builder script while using
  process.argv[1] for --build-snapshot (where it's always set) which
  results in inconsistencies. We now require the embedder to also set
  args[1] when creating the Environment if they intend to run snapshot
  scripts with a context that contains __filename and __dirname, which
  would be derived from args[1]. If they prefer not to include
  build-time paths in the snapshot, we now provide
  node::GetAnonymousMainPath() as an alternative.

PR-URL: https://github.com/nodejs/node/pull/48242
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-06-11 00:34:19 +02:00
Richard Lau
da1c9e3ecb
tools: update eslint-plugin-jsdoc
Run a subset of `tools/dep_updaters/update-eslint.sh` to update
`eslint-plugin-jsdoc` to get rid of a spurious ENOENT error when
running the linter.

PR-URL: https://github.com/nodejs/node/pull/48393
Fixes: https://github.com/nodejs/node/issues/48374
Reviewed-By: Debadree Chatterjee <debadree333@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-06-09 03:40:02 +00:00
Andrea Fassina
c54115391f
tools: add version update to external dependencies
Refs: nodejs/security-wg#973
Most of the duplicated code in all the dependencies updaters
has been moved in the `utils.sh` file

PR-URL: https://github.com/nodejs/node/pull/48081
Refs: https://github.com/nodejs/security-wg/issues/973
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2023-06-06 09:07:34 +00:00
Node.js GitHub Bot
1b4ce6981d tools: update eslint to 8.42.0
PR-URL: https://github.com/nodejs/node/pull/48328
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
2023-06-06 02:04:58 +00:00
Node.js GitHub Bot
cd6bd3f0fb
tools: update rollup lint-md-dependencies
- @rollup/plugin-node-resolve@15.1.0
- rollup@3.23.0

PR-URL: https://github.com/nodejs/node/pull/48329
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Debadree Chatterjee <debadree333@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-06-04 10:46:29 +02:00
Ben Noordhuis
fe76e0964c
tools: don't gitignore base64 config.h
The file is checked into git. Ignoring it causes a very non-obvious way
of breaking tarball builds:

1. Download and unpack tarball
2. Check the sources into git with `git init; git add .; git commit -a`
3. Clean the source tree with `git clean -dfx`
4. Run `./configure && make`
5. Observe build failure because config.h is missing

Fixes: https://github.com/nodejs/node/issues/47638
PR-URL: https://github.com/nodejs/node/pull/48174
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-05-30 11:32:20 +00:00
Marco Ippolito
3e071584dc
tools: automate histogram update
PR-URL: https://github.com/nodejs/node/pull/48171
Refs: https://github.com/nodejs/security-wg/issues/828
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-05-30 08:32:27 +00:00
Luigi Pinca
4aa17bc8dd
tools: use shasum instead of sha256sum
By default, there is no sha256sum command in macOS.

PR-URL: https://github.com/nodejs/node/pull/48229
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Yongsheng Zhang <zyszys98@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-05-29 19:15:08 +00:00
Antoine du Hamel
2fac041508
tools: harmonize dep_updaters scripts
PR-URL: https://github.com/nodejs/node/pull/48201
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
2023-05-29 10:59:52 +00:00
Andrea Fassina
40b89c51a8
tools: deps update authenticate github api request
PR-URL: https://github.com/nodejs/node/pull/48200
Fixes: https://github.com/nodejs/node/issues/48119
Refs: https://github.com/nodejs/security-wg/issues/973
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Mestery <mestery@protonmail.com>
2023-05-29 10:51:37 +00:00
Andrea Fassina
242362440d
doc: fix broken link to new folder doc/contributing/maintaining
PR-URL: https://github.com/nodejs/node/pull/48205
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Deokjin Kim <deokjin81.kim@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2023-05-28 21:28:19 +02:00
Michaël Zasso
d81151e100
tools: refactor v8_pch config
Avoid repetition by defining a new GYP target.

PR-URL: https://github.com/nodejs/node/pull/47364
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2023-05-28 12:01:50 +00:00
Andrea Fassina
847b9e0884
tools: log and verify sha256sum
PR-URL: https://github.com/nodejs/node/pull/48088
Refs: https://github.com/nodejs/security-wg/issues/973
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2023-05-25 19:46:07 +00:00
Andrea Fassina
860d7e3906
tools: use latest upstream commit for zlib updates
Zlib rarely gets new tags or releases, so now we use the latest commit
on the upstream default branch to check if an update is available.

Refs: https://github.com/nodejs/security-wg/issues/973
PR-URL: https://github.com/nodejs/node/pull/48054
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-05-25 00:40:24 +02:00
Joyee Cheung
4da7bc915c
build: replace js2c.py with js2c.cc
PR-URL: https://github.com/nodejs/node/pull/46997
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-05-24 13:33:01 +02:00
Joyee Cheung
7fba2c223d
tools: port js2c.py to C++
This makes it easier to use third-party dependencies in this tool
(e.g. adding compression using algorithms not available in Python).
It is also much faster - locally js2c.py takes ~1.5s to generate the
output whereas this version takes ~0.1s - and consumes less memory
(~110MB v.s. 66MB).

This also modifies the js2c.py a bit to simplify the output, making
it easier to compare with one generated by the C++ version. Locally
the output from the two are identical. We'll remove js2c.py in a
subsequent commit when the C++ version is used by default.

PR-URL: https://github.com/nodejs/node/pull/46997
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-05-24 13:32:58 +02:00
Santiago Gimeno
ceb2a21edd tools: update LICENSE and license-builder.sh
A libuv `LICENSE-extra` file was added and a couple of files were
removed (stdint-msvc2008.h and pthread-fixes.c).

PR-URL: https://github.com/nodejs/node/pull/48078
Fixes: https://github.com/nodejs/node/issues/43931
Fixes: https://github.com/nodejs/node/issues/42496
Fixes: https://github.com/nodejs/node/issues/47715
Fixes: https://github.com/nodejs/node/issues/47259
Fixes: https://github.com/nodejs/node/issues/47241
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Debadree Chatterjee <debadree333@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
2023-05-24 11:07:07 +00:00
Santiago Gimeno
9e68f9413e deps: upgrade to libuv 1.45.0
- linux: introduce io_uring support https://github.com/libuv/libuv/pull/3952
- src: add new metrics APIs https://github.com/libuv/libuv/pull/3749
- unix,win: give thread pool threads an 8 MB stack https://github.com/libuv/libuv/pull/3787
- win,unix: change execution order of timers https://github.com/libuv/libuv/pull/3927

Fixes: https://github.com/nodejs/node/issues/43931
Fixes: https://github.com/nodejs/node/issues/42496
Fixes: https://github.com/nodejs/node/issues/47715
Fixes: https://github.com/nodejs/node/issues/47259
Fixes: https://github.com/nodejs/node/issues/47241
PR-URL: https://github.com/nodejs/node/pull/48078
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Debadree Chatterjee <debadree333@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
2023-05-24 11:07:04 +00:00
Tobias Nießen
300f68e9d0
tools: fix race condition when npm installing
The update scripts that install dependencies from npm blindly assume
that `npm install` will always install the version that was previously
fetched as `dist-tags.latest`. That is not necessarily true, so instead
always install the specific version that the script thinks is current.

PR-URL: https://github.com/nodejs/node/pull/48101
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-05-23 09:45:56 +00:00
Rich Trott
92a938b4dd tools: refloat 7 Node.js patches to cpplint.py
Cherry-pick 12c8b4d154
Original commit message:
    This commit is a suggestion for adding a rule for NULL usages in the
    code base. This will currently report a number of errors which could be
    ignored using // NOLINT (readability/null_usage)

    PR-URL: https://github.com/nodejs/node/pull/17373
    Reviewed-By: Jon Moss <me@jonathanmoss.me>
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
    Reviewed-By: Timothy Gu <timothygu99@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
    Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
    Reviewed-By: Tobias Nießen <tniessen@tnie.de>

Refs: 12c8b4d154

Cherry-pick fc81e80191
Original commit message:

    Update cpplint.py to check for inline headers when the corresponding
    header is already included.

    PR-URL: https://github.com/nodejs/node/pull/21521
    Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
    Reviewed-By: James M Snell <jasnell@gmail.com>

Refs: fc81e80191

Cherry-pick cbc3dd997e
Original commit message:

    src, tools: add check for left leaning pointers

    This commit adds a rule to cpplint to check that pointers in the code
    base lean to the left and not right, and also fixes the violations
    reported.

    PR-URL: https://github.com/nodejs/node/pull/21010
    Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
    Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
    Reviewed-By: James M Snell <jasnell@gmail.com>

Refs: cbc3dd997e

Cherry-pick 902998190a
Original commit message:

    tools: fix cpplint.py header rules

    THIS COMMIT SHOULD GO WITH THE NEXT. IT WILL FIND NEW LINT.

    PR-URL: https://github.com/nodejs/node/pull/26306
    Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>

Refs: 902998190a

Cherry-pick 0a25ace9c3
Original commit message:

    tools: move cpplint configuration to .cpplint

    PR-URL: https://github.com/nodejs/node/pull/27098
    Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
    Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com>

Refs: 0a25ace9c3

Cherry-pick afa9a7206c
Original commit message:

    tools: refloat update link to google styleguide for cpplint

    This commit updates two old links to Google's C++ styleguide which
    currently result in a 404 when accessed.

    PR-URL: https://github.com/nodejs/node/pull/30876
    Reviewed-By: Michaël Zasso <targos@protonmail.com>
    Reviewed-By: David Carlier <devnexen@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Richard Lau <riclau@uk.ibm.com>
    Reviewed-By: Rich Trott <rtrott@gmail.com>

Refs: afa9a7206c

Cherry-pick e23bf8f771
Original commit message:

    tools,src: refloat forbid usage of v8::Persistent

    `v8::Persistent` comes with the surprising catch that it requires
    manual cleanup. `v8::Global` doesn’t, making it easier to use,
    and additionally provides move semantics. New code should always
    use `v8::Global`.

    PR-URL: https://github.com/nodejs/node/pull/31018
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Richard Lau <riclau@uk.ibm.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: David Carlier <devnexen@gmail.com>
    Reviewed-By: Rich Trott <rtrott@gmail.com>
    Reviewed-By: Gus Caplan <me@gus.host>
    Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
    Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
    Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>

PR-URL: https://github.com/nodejs/node/pull/35569
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>

PR-URL: https://github.com/nodejs/node/pull/35719
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>

PR-URL: https://github.com/nodejs/node/pull/35866

PR-URL: https://github.com/nodejs/node/pull/36213
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>

PR-URL: https://github.com/nodejs/node/pull/36235
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>

PR-URL: https://github.com/nodejs/node/pull/36324
Reviewed-By: Beth Griggs <bgriggs@redhat.com>

PR-URL: https://github.com/nodejs/node/pull/38851
Reviewed-By: Khaidi Chu <i@2333.moe>

PR-URL: https://github.com/nodejs/node/pull/42416
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/48098
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2023-05-23 05:44:59 +00:00
Yagiz Nizipli
40d8b366eb tools: update cpplint to 1.6.1
PR-URL: https://github.com/nodejs/node/pull/48098
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
2023-05-23 05:44:58 +00:00
Node.js GitHub Bot
c55aa01e48
tools: update eslint to 8.41.0
PR-URL: https://github.com/nodejs/node/pull/48097
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-05-23 00:49:59 +00:00
Node.js GitHub Bot
0f25097cb4
tools: update lint-md-dependencies
Update to remark-parse@10.0.2, remark-stringify@10.0.3, and
rollup@3.22.0.

PR-URL: https://github.com/nodejs/node/pull/48096
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-05-23 00:49:47 +00:00
Node.js GitHub Bot
6b8d72513c
tools: update doc to remark-parse@10.0.2
PR-URL: https://github.com/nodejs/node/pull/48095
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Rich Trott <rtrott@gmail.com>
2023-05-23 00:49:37 +00:00
Marco Ippolito
f858dc5b5b
tools: add debug logs
PR-URL: https://github.com/nodejs/node/pull/48060
Reviewed-By: Ruy Adorno <ruyadorno@google.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Deokjin Kim <deokjin81.kim@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-05-22 08:22:10 +00:00
Luigi Pinca
95d24292ed
tools: fix zconf.h path
Use the `DEPS_DIR` variable to build the path instead of hardcoding it.

PR-URL: https://github.com/nodejs/node/pull/48089
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2023-05-21 16:58:01 +00:00
Node.js GitHub Bot
6774144404
tools: update remark-preset-lint-node to 4.0.0
PR-URL: https://github.com/nodejs/node/pull/47995
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
2023-05-17 05:05:53 +00:00
Marco Ippolito
d27301df44
tools: debug log for nghttp3
PR-URL: https://github.com/nodejs/node/pull/47992
Refs: https://github.com/nodejs/node/pull/47576
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
Reviewed-By: Deokjin Kim <deokjin81.kim@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-05-14 15:20:40 +00:00
Jithil P Ponnan
abb1c45af7
src: add cjs_module_lexer_version base64_version
src: add cjs_module_lexer_version base64_version
PR-URL: https://github.com/nodejs/node/pull/45629
Refs: https://github.com/nodejs/node/issues/45260
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Minwoo Jung <nodecorelab@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-05-14 12:16:47 +00:00
Keyhan Vakil
0736d0b3f5
src: register external references for source code
Currently we use external strings for internalized builtin source code.
However when a snapshot is taken, any external string whose resource
is not registered is flattened into a SeqString (see ref). The
result is that module source code stored in the snapshot does not
use external strings after deserialization. This patch registers an
external string resource for each internalized builtin's source. The
savings are substantial: ~1.9 MB of heap memory per isolate, or ~44%
of an otherwise empty isolate's heap usage:

```console
$ node --expose-gc -p 'gc(),process.memoryUsage().heapUsed'
4190968
$ ./node --expose-gc -p 'gc(),process.memoryUsage().heapUsed'
2327536
```

The savings can be even higher for user snapshots which may include
more internal modules.

The existing UnionBytes implementation was ill-suited, because it only
created an external string resource when ToStringChecked was called,
but we need to register the external string resources before the
isolate even exists. We change UnionBytes to no longer own the data,
and shift ownership of the data to a new external resource class
called StaticExternalByteResource.  StaticExternalByteResource are
either statically allocated (for internalized builtin code) or owned
by the static `externalized_builtin_sources` map, so they will only be
destructed when static resources are destructed. We change JS2C to emit
statements to register a string resource for each internalized builtin.

Refs: d2c8fbe9cc/src/snapshot/serializer.cc (L633)
PR-URL: https://github.com/nodejs/node/pull/47055
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
2023-05-10 11:17:59 +00:00
Marco Ippolito
1b177932a1
tools: automate icu-small update
PR-URL: https://github.com/nodejs/node/pull/47727
Refs: https://github.com/nodejs/security-wg/issues/828
Reviewed-By: Steven R Loomis <srl295@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
2023-05-09 21:01:08 +00:00
Node.js GitHub Bot
4f69aae6a0
tools: update lint-md-dependencies to rollup@3.21.5
PR-URL: https://github.com/nodejs/node/pull/47903
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Rich Trott <rtrott@gmail.com>
2023-05-09 09:48:48 +00:00
Node.js GitHub Bot
bf8dd3f293
tools: update eslint to 8.40.0
PR-URL: https://github.com/nodejs/node/pull/47906
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
2023-05-09 06:38:21 +00:00
Moshe Atlow
9e5e2f1dc5
test: migrate a pseudo_tty test to use assertSnapshot
PR-URL: https://github.com/nodejs/node/pull/47803
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2023-05-04 08:34:23 +00:00
Marco Ippolito
109ab0a89c
doc: create maintaining folder for deps
PR-URL: https://github.com/nodejs/node/pull/47589
Refs: https://github.com/nodejs/security-wg/issues/828
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2023-05-02 17:03:23 +00:00