44097 Commits

Author SHA1 Message Date
Colin Ihrig
200b665cca
sqlite: add DatabaseSync.prototype[Symbol.dispose]()
This commit adds support for the explicit resource management
proposal to the sqlite module.

Refs: https://github.com/nodejs/node/pull/53752#discussion_r1667750387
PR-URL: https://github.com/nodejs/node/pull/57506
Reviewed-By: Zeyu "Alex" Yang <himself65@outlook.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Edy Silva <edigleyssonsilva@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
2025-03-18 18:52:07 +00:00
Gürgün Dayıoğlu
a20acd407d
lib: limit split function calls to prevent excessive array length
PR-URL: https://github.com/nodejs/node/pull/57501
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Jacob Smith <jacob@frende.me>
2025-03-18 15:52:50 +00:00
Colin Ihrig
1de917b0f7
sqlite: add StatementSync.prototype.columns()
This commit adds a method for retrieving column metadata from
a prepared statement.

Fixes: https://github.com/nodejs/node/issues/57457
PR-URL: https://github.com/nodejs/node/pull/57490
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Edy Silva <edigleyssonsilva@gmail.com>
2025-03-18 13:22:32 +00:00
Colin Ihrig
36e89dd13c
doc: replace NOTEs that do not render properly
This commit removes two NOTEs that render properly in the GitHub
web interface, but not on the Node.js docs website.

PR-URL: https://github.com/nodejs/node/pull/57484
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Xuguang Mei <meixuguang@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-03-17 15:44:34 +00:00
jakecastelli
38390e5f28
url: fix constructor error message for URLPattern
PR-URL: https://github.com/nodejs/node/pull/57482
Reviewed-By: Kohei Ueno <kohei.ueno119@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Daeyeon Jeong <daeyeon.dev@gmail.com>
Reviewed-By: Xuguang Mei <meixuguang@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Zijian Liu <lxxyxzj@gmail.com>
Reviewed-By: Jason Zhang <xzha4350@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
2025-03-17 10:39:42 +00:00
Shelley Vohr
758428450b
src: remove deleted tls file
PR-URL: https://github.com/nodejs/node/pull/57481
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Xuguang Mei <meixuguang@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-03-17 09:24:15 +00:00
Rafael Gonzaga
bd8f2ba0d2
doc: prefer to sign commits under nodejs repository
PR-URL: https://github.com/nodejs/node/pull/57311
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2025-03-17 09:10:26 +00:00
Richard Lau
fab6906c5d
test: update parallel/test-tls-dhe for OpenSSL 3.5
The output of the `s_client` command invoked by the test has changed
in the OpenSSL 3.5.0 version of `s_client`. Update the test so that
it works with both the old and new output -- the `s_client` binary
being run may not be at the exact same version of OpenSSL as used
by Node.js so the updated test allows either output.

PR-URL: https://github.com/nodejs/node/pull/57477
Refs: https://github.com/openssl/openssl/pull/26734
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Xuguang Mei <meixuguang@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-03-17 03:42:55 +00:00
Node.js GitHub Bot
ab9660b55a
deps: update icu to 77.1
PR-URL: https://github.com/nodejs/node/pull/57455
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: LiviaMedeiros <livia@cirno.name>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Steven R Loomis <srl295@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
2025-03-16 20:10:32 +00:00
Eugenio Ceschia
8ccbfb656a cli: clarify --cpu-prof-name allowed values
Refs: https://github.com/nodejs/node/issues/57418
PR-URL: https://github.com/nodejs/node/pull/57433
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2025-03-16 10:28:42 -07:00
Filip Skokan
0cfc471e82
crypto: ensure expected JWK alg in SubtleCrypto.importKey RSA imports
PR-URL: https://github.com/nodejs/node/pull/57450
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2025-03-16 15:32:12 +00:00
letianpailove
8b41272f79 doc: fixed the incorrect splitting of multiple words
PR-URL: https://github.com/nodejs/node/pull/57454
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2025-03-16 08:27:00 -07:00
James M Snell
fb07807e9a src: make minor cleanups in encoding_binding.cc
PR-URL: https://github.com/nodejs/node/pull/57448
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2025-03-16 08:07:57 -07:00
James M Snell
387b8cbb8b src: make minor cleanups in compile_cache.cc
PR-URL: https://github.com/nodejs/node/pull/57448
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2025-03-16 08:07:55 -07:00
Marco Ippolito
fef180c8a2
http: coerce content-length to number
PR-URL: https://github.com/nodejs/node/pull/57458
Fixes: https://github.com/nodejs/node/issues/57456
Reviewed-By: Tim Perry <pimterry@gmail.com>
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2025-03-16 12:28:49 +00:00
Choongwoo Han
2cb1d07e0f
deps: V8: cherry-pick c172ffc5bf54
Original commit message:

    Compact retained maps array more often

    When we add maps to the retained maps array, we compacted the array if
    it's full. But, since we are now adding maps in a batch, it's unlikely
    to meet the condition. Thus, update the condition to check whether new
    size exceeds the capacity.

    Bug: 398528460
    Change-Id: I89caa47b69532c6397596edfe5caf7c7d24768cc
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6330019
    Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
    Commit-Queue: Choongwoo Han <choongwoo.han@microsoft.com>
    Cr-Commit-Position: refs/heads/main@{#99163}

Refs: c172ffc5bf
PR-URL: https://github.com/nodejs/node/pull/57437
Fixes: https://github.com/nodejs/node/issues/57412
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Co-Authored-By: tunamagur0
  <47546832+tunamagur0@users.noreply.github.com>
2025-03-16 12:17:51 +01:00
Antoine du Hamel
ee0a006a20
doc: add review guidelines for collaborator nominations
PR-URL: https://github.com/nodejs/node/pull/57449
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
2025-03-16 08:30:14 +00:00
Rich Trott
8a5a849a44
fs: apply exclude function to root path
In at least some situations, the root path was
being added to the results of globbing even if
it matched the optional exclude function.

In the relevant test file, a variable was renamed
for consistency. (There was a patterns and pattern2,
rather than patterns2.) The test case is added to
patterns2.

Fixes: https://github.com/nodejs/node/issues/56260
PR-URL: https://github.com/nodejs/node/pull/57420
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Jason Zhang <xzha4350@gmail.com>
Reviewed-By: LiviaMedeiros <livia@cirno.name>
Reviewed-By: James M Snell <jasnell@gmail.com>
2025-03-16 05:26:54 +00:00
JonasBa
d5ac3e3803 src: define urlpattern components using a macro
PR-URL: https://github.com/nodejs/node/pull/57452
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2025-03-16 02:00:13 +00:00
Jonas
26c4851821
build: fix update-wpt workflow
PR-URL: https://github.com/nodejs/node/pull/57468
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Filip Skokan <panva.ip@gmail.com>
2025-03-15 21:50:33 +00:00
dependabot[bot]
63e3cc7e82
tools: bump @babel/helpers from 7.26.9 to 7.26.10 in /tools/eslint
Bumps [@babel/helpers](https://github.com/babel/babel/tree/HEAD/packages/babel-helpers) from 7.26.9 to 7.26.10.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.10/packages/babel-helpers)

---
updated-dependencies:
- dependency-name: "@babel/helpers"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
PR-URL: https://github.com/nodejs/node/pull/57444
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2025-03-15 17:47:18 +00:00
Filip Skokan
824c6a55f0
crypto: add optional callback to crypto.diffieHellman
PR-URL: https://github.com/nodejs/node/pull/57274
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2025-03-15 10:44:04 +00:00
Allon Murienik
2affc3ada7
doc: fix typo in url.md
"objg" -> "obj" in `URLPattern` constructor documentation.

Fixes: https://github.com/nodejs/node/issues/57464
PR-URL: https://github.com/nodejs/node/pull/57467
Co-authored-by: Lawlight <lawlight02@protonmail.com>
Reviewed-By: Jake Yuesong Li <jake.yuesong@gmail.com>
Reviewed-By: Daeyeon Jeong <daeyeon.dev@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2025-03-15 10:24:20 +01:00
Darshan Sen
e162783843
doc: add history info for --use-system-ca
These are the PRs for --use-system-ca:
- initial implementation of the option with just macOS support
  https://github.com/nodejs/node/pull/56599 landed in v23.8.0.
- Windows support https://github.com/nodejs/node/pull/56833
  landed in v23.8.0
- non-Windows and non-macOS support
  https://github.com/nodejs/node/pull/57009 landed in v23.9.0

This change documents the history info.

Signed-off-by: Darshan Sen <raisinten@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/57432
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
2025-03-15 08:35:29 +00:00
Darshan Sen
d765e70802
doc: remove typo YAML snippet from tls.getCACertificates doc
Noticed it while going through
https://github.com/nodejs/node/pull/57107/files#diff-6114e55c49ec9bc0edc33830f7770a335a46373a84b8372957c387d88a23b7deR2399,
so thought of removing it.

Signed-off-by: Darshan Sen <raisinten@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/57459
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2025-03-15 05:29:54 +00:00
Tobias Nießen
3cf14f83f8 doc: fix typo in sqlite.md
PR-URL: https://github.com/nodejs/node/pull/57473
Reviewed-By: Jake Yuesong Li <jake.yuesong@gmail.com>
Reviewed-By: Edy Silva <edigleyssonsilva@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2025-03-14 17:37:09 -07:00
Yagiz Nizipli
72aa2ea841
deps: update ada to v3.2.1
PR-URL: https://github.com/nodejs/node/pull/57429
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2025-03-14 23:59:48 +00:00
Rafael Gonzaga
645e376231
doc: explicit mention arbitrary code execution as a vuln
This request came from Github Open Source Secure and
it's always welcome to clarify the policy

PR-URL: https://github.com/nodejs/node/pull/57426
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2025-03-14 22:51:52 +00:00
Node.js GitHub Bot
078af918d0
deps: update undici to 7.5.0
PR-URL: https://github.com/nodejs/node/pull/57427
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Matthew Aitken <maitken033380023@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
2025-03-14 18:25:23 +00:00
zhenweijin
1ba47324e0 buffer: make buflen in integer range
PR-URL: https://github.com/nodejs/node/pull/51821
Fixes: https://github.com/nodejs/node/issues/51817
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2025-03-14 10:44:25 -07:00
James M Snell
b71267e20c src: cleanup crypto more
* Use ncrypto APIs where appropriate
* Remove obsolete no-longer used functions
* Improve error handling a bit
* move secure heap handling to ncrypto
  To simplify handling of boringssl/openssl, move secure
  heap impl to ncrypto. Overall the reduces the complexity
  of the code in crypto_util by eliminating additional
  ifdef branches.
* simplify CryptoErrorStore::ToException a bit
* simplify error handling in crypto_common
* move curve utility methods to ncrypto
* verify that released DataPointers aren't on secure heap
  The ByteSource does not currently know how to free a DataPointer
  allocated on the secure heap, so just verify.
  DataPointers on the secure heap are not something that users can
  allocate on their own. Their use is rare. Eventually ByteSource
  is going to be refactored around ncrypto APIs so these additional
  checks should be temporary.
* simplify some ifdefs that are covered by ncrypto
* cleanup some obsolete includes in crypto_util

PR-URL: https://github.com/nodejs/node/pull/57323
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2025-03-14 07:09:49 -07:00
James M Snell
c0788f0e86 lib: make getCallSites sourceMap option truly optional
When calling the `util.getCallSites(...)` API, if the `options`
argument is omitted, then the `options.sourceMap` option is defaulted
to false. However, if any empty `options` is passed, it would throw
an error is `sourceMap` was not explicitly given. This relaxes that
so that `sourceMap` can be left unspecified.

For instance, before this commit, `getCallSites({})` would throw an
error.

Also, add more test coverage of this.

PR-URL: https://github.com/nodejs/node/pull/57388
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Jason Zhang <xzha4350@gmail.com>
2025-03-14 07:07:10 -07:00
Node.js GitHub Bot
c8b9d38fd8
deps: update googletest to 0bdccf4
PR-URL: https://github.com/nodejs/node/pull/57380
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
2025-03-14 08:47:41 +00:00
Node.js GitHub Bot
33955b7c02
deps: update acorn to 8.14.1
PR-URL: https://github.com/nodejs/node/pull/57382
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2025-03-14 08:37:50 +00:00
Claudio W.
2a553d80b3
meta: move ovflowd to emeritus
PR-URL: https://github.com/nodejs/node/pull/57443
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2025-03-14 09:07:25 +01:00
Node.js GitHub Bot
5d9b63dbd4
2025-03-13, Version 23.10.0 (Current)
Notable changes:

config:
  * (SEMVER-MINOR) add config file support (Marco Ippolito) https://github.com/nodejs/node/pull/57016
  * (SEMVER-MINOR) set default config as `node.config.json` (Marco Ippolito) https://github.com/nodejs/node/pull/57171
crypto:
  * update root certificates to NSS 3.108 (Node.js GitHub Bot) https://github.com/nodejs/node/pull/57381
doc:
  * add geeksilva97 to collaborators (Edy Silva) https://github.com/nodejs/node/pull/57241
src:
  * (SEMVER-MINOR) create `THROW_ERR_OPTIONS_BEFORE_BOOTSTRAPPING` (Marco Ippolito) https://github.com/nodejs/node/pull/57016
test_runner:
  * (SEMVER-MINOR) change ts default glob (Marco Ippolito) https://github.com/nodejs/node/pull/57359
tls:
  * (SEMVER-MINOR) implement `tls.getCACertificates()` (Joyee Cheung) https://github.com/nodejs/node/pull/57107
v8:
  * (SEMVER-MINOR) add `v8.getCppHeapStatistics()` method (Aditi) https://github.com/nodejs/node/pull/57146

PR-URL: https://github.com/nodejs/node/pull/57424
2025-03-13 21:45:29 +01:00
Richard Lau
81d3db2250
doc: update maintaining-openssl.md for openssl
Update the instructions for maintaining OpenSSL in the Node.js source
tree to reflect switching back from the quictls fork of OpenSSL back
to official OpenSSL.

PR-URL: https://github.com/nodejs/node/pull/57413
Refs: https://github.com/nodejs/node/pull/57301
Refs: https://github.com/nodejs/node/pull/57142
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2025-03-13 17:42:04 +00:00
James M Snell
3329efecb1 src: refine ncrypto more
An eventual goal for ncrypto is to completely abstract away
details of working directly with openssl in order to make it
easier to work with multiple different openssl/boringssl versions.
As part of that we want to move away from direct reliance on
specific openssl APIs in the runtime and instead go through
the ncrypto abstractions. Not only does this help other
runtimes trying to be compatible with Node.js, but it helps
Node.js also by reducing the complexity of the crypto code
in Node.js itself.

PR-URL: https://github.com/nodejs/node/pull/57300
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2025-03-13 08:40:12 -07:00
Marco Ippolito
8f693f8d43
2025-03-13, Version 20.19.0 'Iron' (LTS)
Notable changes:

crypto:
  * update root certificates to NSS 3.107 (Node.js GitHub Bot) https://github.com/nodejs/node/pull/56566
module:
  * (SEMVER-MINOR) only emit require(esm) warning under --trace-require-module (Joyee Cheung) https://github.com/nodejs/node/pull/56194
  * (SEMVER-MINOR) unflag --experimental-require-module (Joyee Cheung) https://github.com/nodejs/node/pull/55085
  * (SEMVER-MINOR) implement the "module-sync" exports condition (Joyee Cheung) https://github.com/nodejs/node/pull/54648
  * (SEMVER-MINOR) unflag detect-module (Geoffrey Booth) https://github.com/nodejs/node/pull/53619
  * (SEMVER-MINOR) add __esModule to require()'d ESM (Joyee Cheung) https://github.com/nodejs/node/pull/52166
process:
  * (SEMVER-MINOR) add process.features.require_module (Joyee Cheung) https://github.com/nodejs/node/pull/55241
worker:
  * (SEMVER-MINOR) add postMessageToThread (Paolo Insogna) https://github.com/nodejs/node/pull/53682

PR-URL: https://github.com/nodejs/node/pull/57349
2025-03-13 14:13:32 +01:00
Mohammed Keyvanzadeh
1189a26f65
src: cleanup aliased_buffer.h
- Mark `AliasedBufferBase` as `final` as nothing derives from it.
- Simplify scalar check with `std::is_scalar_v`.
- Remove redundant `const`-qualifiers from function declaration
parameters.
- Add `const`-qualifiers to function definition parameters where
appropriate.
- Remove redundant `inline` specifiers from functions that are
templates or has template parents, and from functions that are entirely
declared inside class definitions.
- Remove redundant template arguments.
- Remove redundant qualified name.
- Fix typo and improve grammar.

PR-URL: https://github.com/nodejs/node/pull/57395
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2025-03-13 12:32:28 +00:00
Yukihiro Hasegawa
d55f11b943
doc: add missing deprecated badges in fs.md
PR-URL: https://github.com/nodejs/node/pull/57384
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-03-13 12:32:11 +00:00
Yagiz Nizipli
dfb2536eb1
tls: remove unnecessary type check on normalize
PR-URL: https://github.com/nodejs/node/pull/57336
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2025-03-13 12:31:53 +00:00
npm CLI robot
ba22c013a2
deps: upgrade npm to 11.2.0
PR-URL: https://github.com/nodejs/node/pull/57334
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-03-13 12:31:42 +00:00
Felix Rieseberg
c16e26d066
doc: fix small typo in process.md
PR-URL: https://github.com/nodejs/node/pull/57333
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: James M Snell <jasnell@gmail.com>
2025-03-13 13:15:45 +01:00
Gürgün Dayıoğlu
a0139e06a0
timers: remove unused parameter from insertGuarded
PR-URL: https://github.com/nodejs/node/pull/57251
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-03-12 22:27:21 +00:00
Rafael Gonzaga
10ea7646d9
doc: add note about sync nodejs-private branches
PR-URL: https://github.com/nodejs/node/pull/57404
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2025-03-12 20:47:26 +00:00
Ruben Bridgewater
d23b8a0cc4 assert: mark partialDeepStrictEqual() as stable
The current implementation is well tested, fast and handles all
known edge cases properly.

PR-URL: https://github.com/nodejs/node/pull/57370
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br>
2025-03-12 18:26:17 +00:00
Ruben Bridgewater
ebbc5f7017 assert: implement partial error comparison
assert.partialDeepStrictEqual now also handled error properties as
expected. On top of that, the main implementation also handles
non-string `name` and `message` properties and the comparison is a
tad faster by removing duplicated comparison steps.

As a drive-by fix this also cleans up some code by abstracting code
and renaming variables for clarity.

PR-URL: https://github.com/nodejs/node/pull/57370
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br>
2025-03-12 18:26:17 +00:00
Ruben Bridgewater
64f56e4156 assert,util: improve performance
This improves the performance for array comparison by making the
sparse array detection simpler. On top of that it adds a fast path
for sets and maps that only contain objects as key.

PR-URL: https://github.com/nodejs/node/pull/57370
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br>
2025-03-12 18:26:16 +00:00
Ruben Bridgewater
77607d5306 benchmark: adjust assert runtimes
Each file should have a reasonable runtime while having a good
accuracy. This adjust those up and down to have minimal runtimes
with a good accuracy.

PR-URL: https://github.com/nodejs/node/pull/57370
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br>
2025-03-12 18:26:15 +00:00