Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fs: adjust typecheck for type in fs.symlink() #49741

Merged

Conversation

LiviaMedeiros
Copy link
Contributor

Alternative to: #44641

@nodejs-github-bot nodejs-github-bot added errors Issues and PRs related to JavaScript errors originated in Node.js core. fs Issues and PRs related to the fs subsystem / file system. needs-ci PRs that need a full CI run. labels Sep 20, 2023
@LiviaMedeiros LiviaMedeiros added semver-major PRs that contain breaking changes and should be released in the next major version. needs-citgm PRs that need a CITGM CI run. labels Sep 20, 2023
@LiviaMedeiros LiviaMedeiros added the request-ci Add this label to start a Jenkins CI on a PR. label Sep 21, 2023
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Sep 21, 2023
@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot
Copy link
Collaborator

nodejs-github-bot commented Sep 21, 2023

@aduh95
Copy link
Contributor

aduh95 commented Sep 24, 2023

Ping @nodejs/TSC for reviews since this is semver-major.
Aside: The CITGM is quite hard to decipher, hopefully nodejs/citgm#959 will fix that.

@aduh95
Copy link
Contributor

aduh95 commented Sep 29, 2023

@nodejs-github-bot
Copy link
Collaborator

lib/fs.js Show resolved Hide resolved
Comment on lines +625 to +657
switch (type) {
case undefined:
case null:
case 'file':
return 0;
case 'dir':
return UV_FS_SYMLINK_DIR;
case 'junction':
return UV_FS_SYMLINK_JUNCTION;
Copy link

@Mifrill Mifrill Oct 17, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
switch (type) {
case undefined:
case null:
case 'file':
return 0;
case 'dir':
return UV_FS_SYMLINK_DIR;
case 'junction':
return UV_FS_SYMLINK_JUNCTION;
const linkTypes = {
undefined: 0,
null: 0,
file: 0,
dir: UV_FS_SYMLINK_DIR,
junction: UV_FS_SYMLINK_JUNCTION
};
return linkTypes[type] || 0;

The || 0 is a fallback in case the type is not found in the linkTypes object. If type is not one of the defined values in the linkTypes object, linkType will default to 0. This ensures that linkType always has a value and doesn't become undefined. It's a way to handle unexpected or unknown values for type.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We intentionally don't fallback to file. If an unknown type is passed, we must throw TypeError, which is done by validateOneOf().

Copy link
Member

@mcollina mcollina left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@LiviaMedeiros LiviaMedeiros added author ready PRs that have at least one approval, no pending requests for changes, and a CI started. request-ci Add this label to start a Jenkins CI on a PR. labels Nov 18, 2023
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Nov 18, 2023
@nodejs-github-bot
Copy link
Collaborator

@LiviaMedeiros LiviaMedeiros added the request-ci Add this label to start a Jenkins CI on a PR. label Feb 26, 2024
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Feb 26, 2024
@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot
Copy link
Collaborator

@nodejs-github-bot
Copy link
Collaborator

@aduh95
Copy link
Contributor

aduh95 commented May 5, 2024

FreeBSD CI is failing consistently

../deps/v8/src/base/small-vector.h:25:3: error: static_assert failed due to requirement '::v8::base::is_trivially_copyable<std::pair<const v8::internal::compiler::turboshaft::PhiOp *, const v8::internal::compiler::turboshaft::OpIndex>>::value' "T should be trivially copyable"
  ASSERT_TRIVIALLY_COPYABLE(T);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../deps/v8/src/base/macros.h:206:3: note: expanded from macro 'ASSERT_TRIVIALLY_COPYABLE'
  static_assert(::v8::base::is_trivially_copyable<T>::value, \
  ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../deps/v8/src/compiler/turboshaft/loop-unrolling-reducer.h:431:65: note: in instantiation of template class 'v8::base::SmallVector<std::pair<const v8::internal::compiler::turboshaft::PhiOp *, const v8::internal::compiler::turboshaft::OpIndex>, 16>' requested here
  base::SmallVector<std::pair<const PhiOp*, const OpIndex>, 16> phis;
                                                                ^
1 error generated.

@aduh95 aduh95 removed the author ready PRs that have at least one approval, no pending requests for changes, and a CI started. label May 5, 2024
@targos
Copy link
Member

targos commented May 6, 2024

FreeBSD should be skipped. This needs a rebase to not be identified as Node.js 21.

Throws `TypeError` instead of `Error`
Enables autodetection on Windows if `type === undefined`
Explicitly disallows unknown strings and non-string values
@LiviaMedeiros LiviaMedeiros added the request-ci Add this label to start a Jenkins CI on a PR. label May 6, 2024
@github-actions github-actions bot added request-ci-failed An error occurred while starting CI via request-ci label, and manual interventon is needed. and removed request-ci Add this label to start a Jenkins CI on a PR. labels May 6, 2024
Copy link
Contributor

github-actions bot commented May 6, 2024

Failed to start CI
   ⚠  Something was pushed to the Pull Request branch since the last approving review.
   ✘  Refusing to run CI on potentially unsafe PR
https://github.com/nodejs/node/actions/runs/8964951019

@nodejs-github-bot
Copy link
Collaborator

nodejs-github-bot commented May 6, 2024

@LiviaMedeiros LiviaMedeiros removed the request-ci-failed An error occurred while starting CI via request-ci label, and manual interventon is needed. label May 6, 2024
@nodejs-github-bot
Copy link
Collaborator

@mcollina mcollina added commit-queue Add this label to land a pull request using GitHub Actions. commit-queue-squash Add this label to instruct the Commit Queue to squash all the PR commits into the first one. labels May 6, 2024
@nodejs-github-bot nodejs-github-bot removed the commit-queue Add this label to land a pull request using GitHub Actions. label May 6, 2024
@nodejs-github-bot nodejs-github-bot merged commit f202322 into nodejs:main May 6, 2024
59 checks passed
@nodejs-github-bot
Copy link
Collaborator

Landed in f202322

Ch3nYuY pushed a commit to Ch3nYuY/node that referenced this pull request May 8, 2024
Throws `TypeError` instead of `Error`
Enables autodetection on Windows if `type === undefined`
Explicitly disallows unknown strings and non-string values

PR-URL: nodejs#49741
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Rafael Gonzaga <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Gireesh Punathil <[email protected]>
eliphazbouye pushed a commit to eliphazbouye/node that referenced this pull request Jun 20, 2024
Throws `TypeError` instead of `Error`
Enables autodetection on Windows if `type === undefined`
Explicitly disallows unknown strings and non-string values

PR-URL: nodejs#49741
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Rafael Gonzaga <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Gireesh Punathil <[email protected]>
bmeck pushed a commit to bmeck/node that referenced this pull request Jun 22, 2024
Throws `TypeError` instead of `Error`
Enables autodetection on Windows if `type === undefined`
Explicitly disallows unknown strings and non-string values

PR-URL: nodejs#49741
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Rafael Gonzaga <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Gireesh Punathil <[email protected]>
RafaelGSS added a commit that referenced this pull request Oct 9, 2024
Semver-Major Commits:

assert,util:
  * (SEMVER-MAJOR) change WeakMap and WeakSet comparison handling (Cristian Barlutiu) #53495
buffer:
  * (SEMVER-MAJOR) throw when writing beyond buffer" (Robert Nagy) #54588
  * (SEMVER-MAJOR) make File cloneable (Matthew Aitken) #47613
build:
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #54536
  * (SEMVER-MAJOR) disable ICF for mksnapshot (Leszek Swirski) #54077
  * (SEMVER-MAJOR) include v8-sandbox.h header in distribution (Michaël Zasso) #54077
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #54077
  * (SEMVER-MAJOR) warn for GCC versions earlier than 12.2 (Michaël Zasso) #54081
  * (SEMVER-MAJOR) drop experimental support for Windows <10 (Michaël Zasso) #54079
  * (SEMVER-MAJOR) remove support for 32-bit Windows (Michaël Zasso) #53184
  * (SEMVER-MAJOR) compile with C++20 support (Michaël Zasso) #45427
child_process:
  * (SEMVER-MAJOR) remove unused internal event (Rich Trott) #53793
cli:
  * (SEMVER-MAJOR) remove deprecated V8 flag (Omer Katz) #54761
  * (SEMVER-MAJOR) move --trace-atomics-wait to eol (Marco Ippolito) #52747
  * (SEMVER-MAJOR) remove --no-experimental-global-customevent flag (Daeyeon Jeong) #52723
  * (SEMVER-MAJOR) remove --no-experimental-fetch flag (Filip Skokan) #52611
  * (SEMVER-MAJOR) remove --no-experimental-global-webcrypto flag (Filip Skokan) #52564
crypto:
  * (SEMVER-MAJOR) runtime deprecate crypto.fips (Yagiz Nizipli) #55019
  * (SEMVER-MAJOR) remove ERR_CRYPTO_SCRYPT_INVALID_PARAMETER (Tobias Nießen) #53305
  * (SEMVER-MAJOR) move DEP0182 to runtime deprecation (Tobias Nießen) #52552
deps:
  * (SEMVER-MAJOR) V8: cherry-pick 97199f686e2f (Michaël Zasso) #54536
  * (SEMVER-MAJOR) V8: cherry-pick 01a47f3ffff2 (Michaël Zasso) #54536
  * (SEMVER-MAJOR) patch V8 to support older Clang versions (Michaël Zasso) #54536
  * (SEMVER-MAJOR) always define V8_NODISCARD as no-op (Michaël Zasso) #54536
  * (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) #54536
  * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #54536
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54536
  * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #54536
  * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #54536
  * (SEMVER-MAJOR) update V8 to 12.9.202.18 (Michaël Zasso) #54536
  * (SEMVER-MAJOR) remove bogus V8 DCHECK (Michaël Zasso) #54077
  * (SEMVER-MAJOR) V8: cherry-pick 00e9eeb3fb2c (Michaël Zasso) #54077
  * (SEMVER-MAJOR) V8: cherry-pick b1397772c70c (Michaël Zasso) #54077
  * (SEMVER-MAJOR) V8: cherry-pick 35888fee7bba (Joyee Cheung) #54077
  * (SEMVER-MAJOR) always define V8_NODISCARD as no-op (Michaël Zasso) #54077
  * (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) #54077
  * (SEMVER-MAJOR) V8: revert CL 5331688 (Michaël Zasso) #54077
  * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #54077
  * (SEMVER-MAJOR) silence internal V8 deprecation warning (Michaël Zasso) #54077
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #54077
  * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #54077
  * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 12.8.374.13 (Michaël Zasso) #54077
doc:
  * (SEMVER-MAJOR) reflect toolchains used for official binaries (Richard Lau) #54967
  * (SEMVER-MAJOR) use gcc 12 on AIX for Node.js >=23 (Richard Lau) #54338
esm:
  * (SEMVER-MAJOR) export 'module.exports' on ESM CJS wrapper (Guy Bedford) #53848
events:
  * (SEMVER-MAJOR) set EventEmitterAsyncResource fields private (Yagiz Nizipli) #54889
fs:
  * (SEMVER-MAJOR) adjust typecheck for `type` in `fs.symlink()` (Livia Medeiros) #49741
  * (SEMVER-MAJOR) runtime deprecate `dirent.path` (Antoine du Hamel) #51050
lib:
  * (SEMVER-MAJOR) validate signals with interface converter (Jason Zhang) #54965
  * (SEMVER-MAJOR) implement interface converter in webidl (Jason Zhang) #54965
  * (SEMVER-MAJOR) expose global CloseEvent (Matthew Aitken) #53355
net:
  * (SEMVER-MAJOR) validate host name for server listen (Jason Zhang) #54470
path:
  * (SEMVER-MAJOR) fix bugs and inconsistencies (Hüseyin Açacak) #54224
process:
  * (SEMVER-MAJOR) remove `process.assert` (Aviv Keller) #55035
src:
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 131 (Michaël Zasso) #54536
  * (SEMVER-MAJOR) stop using deprecated fields of `v8::FastApiCallbackOptions` (Andreas Haas) #54077
  * (SEMVER-MAJOR) remove dependency on wrapper-descriptor-based CppHeap (Joyee Cheung) #54077
  * (SEMVER-MAJOR) add source location to v8::TaskRunner (François Doray) #54077
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 129 (Michaël Zasso) #54077
  * (SEMVER-MAJOR) do not use soon-to-be-deprecated V8 API (Igor Sheludko) #53174
  * (SEMVER-MAJOR) add UV_PIPE_NO_TRUNCATE for bind in pipe_wrap.cc (theanarkh) #52347
stream:
  * (SEMVER-MAJOR) pipe to a closed or destroyed stream is not allowed in pipeline (jakecastelli) #53241
string_decoder:
  * (SEMVER-MAJOR) refactor encoding validation (Yagiz Nizipli) #54957
test:
  * (SEMVER-MAJOR) update v8-stats test for V8 12.6 (Michaël Zasso) #54077
test_runner:
  * (SEMVER-MAJOR) detect only tests when --test is not used (Colin Ihrig) #54881
  * (SEMVER-MAJOR) always make spec the default reporter (Colin Ihrig) #54548
  * (SEMVER-MAJOR) expose lcov reporter as newable function (Chemi Atlow) #52403
timers:
  * (SEMVER-MAJOR) emit warning if delay is negative or NaN (jakecastelli) #46678
tls:
  * (SEMVER-MAJOR) fix 'ERR_TLS_PSK_SET_IDENTIY_HINT_FAILED' typo (Aviv Keller) #52627
tools:
  * (SEMVER-MAJOR) add additonal include dirs for V8 on AIX (Abdirahim Musse) #54536
  * (SEMVER-MAJOR) update V8 gypfiles for 12.8 (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 gypfiles for 12.7 (Richard Lau) #54077
  * (SEMVER-MAJOR) update V8 gypfiles for 12.6 (Michaël Zasso) #54077
util:
  * (SEMVER-MAJOR) move util.log to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isPrimitive to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isFunction to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isError to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isDate to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isObject to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isRegExp to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isUndefined to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isSymbol to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isString to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isNumber to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isNullOrUndefined to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isNull to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isBuffer to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isBoolean to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util._extend to eol (marco-ippolito) #52744
zlib:
  * (SEMVER-MAJOR) remove `zlib.bytesRead` (Yagiz Nizipli) #55020

PR-URL: TBD
RafaelGSS added a commit that referenced this pull request Oct 9, 2024
Semver-Major Commits:

assert,util:
  * (SEMVER-MAJOR) change WeakMap and WeakSet comparison handling (Cristian Barlutiu) #53495
buffer:
  * (SEMVER-MAJOR) throw when writing beyond buffer" (Robert Nagy) #54588
  * (SEMVER-MAJOR) make File cloneable (Matthew Aitken) #47613
build:
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #54536
  * (SEMVER-MAJOR) disable ICF for mksnapshot (Leszek Swirski) #54077
  * (SEMVER-MAJOR) include v8-sandbox.h header in distribution (Michaël Zasso) #54077
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #54077
  * (SEMVER-MAJOR) warn for GCC versions earlier than 12.2 (Michaël Zasso) #54081
  * (SEMVER-MAJOR) drop experimental support for Windows <10 (Michaël Zasso) #54079
  * (SEMVER-MAJOR) remove support for 32-bit Windows (Michaël Zasso) #53184
  * (SEMVER-MAJOR) compile with C++20 support (Michaël Zasso) #45427
child_process:
  * (SEMVER-MAJOR) remove unused internal event (Rich Trott) #53793
cli:
  * (SEMVER-MAJOR) remove deprecated V8 flag (Omer Katz) #54761
  * (SEMVER-MAJOR) move --trace-atomics-wait to eol (Marco Ippolito) #52747
  * (SEMVER-MAJOR) remove --no-experimental-global-customevent flag (Daeyeon Jeong) #52723
  * (SEMVER-MAJOR) remove --no-experimental-fetch flag (Filip Skokan) #52611
  * (SEMVER-MAJOR) remove --no-experimental-global-webcrypto flag (Filip Skokan) #52564
crypto:
  * (SEMVER-MAJOR) runtime deprecate crypto.fips (Yagiz Nizipli) #55019
  * (SEMVER-MAJOR) remove ERR_CRYPTO_SCRYPT_INVALID_PARAMETER (Tobias Nießen) #53305
  * (SEMVER-MAJOR) move DEP0182 to runtime deprecation (Tobias Nießen) #52552
deps:
  * (SEMVER-MAJOR) V8: cherry-pick 97199f686e2f (Michaël Zasso) #54536
  * (SEMVER-MAJOR) V8: cherry-pick 01a47f3ffff2 (Michaël Zasso) #54536
  * (SEMVER-MAJOR) patch V8 to support older Clang versions (Michaël Zasso) #54536
  * (SEMVER-MAJOR) always define V8_NODISCARD as no-op (Michaël Zasso) #54536
  * (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) #54536
  * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #54536
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54536
  * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #54536
  * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #54536
  * (SEMVER-MAJOR) update V8 to 12.9.202.18 (Michaël Zasso) #54536
  * (SEMVER-MAJOR) remove bogus V8 DCHECK (Michaël Zasso) #54077
  * (SEMVER-MAJOR) V8: cherry-pick 00e9eeb3fb2c (Michaël Zasso) #54077
  * (SEMVER-MAJOR) V8: cherry-pick b1397772c70c (Michaël Zasso) #54077
  * (SEMVER-MAJOR) V8: cherry-pick 35888fee7bba (Joyee Cheung) #54077
  * (SEMVER-MAJOR) always define V8_NODISCARD as no-op (Michaël Zasso) #54077
  * (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) #54077
  * (SEMVER-MAJOR) V8: revert CL 5331688 (Michaël Zasso) #54077
  * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #54077
  * (SEMVER-MAJOR) silence internal V8 deprecation warning (Michaël Zasso) #54077
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #54077
  * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #54077
  * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 12.8.374.13 (Michaël Zasso) #54077
doc:
  * (SEMVER-MAJOR) reflect toolchains used for official binaries (Richard Lau) #54967
  * (SEMVER-MAJOR) use gcc 12 on AIX for Node.js >=23 (Richard Lau) #54338
esm:
  * (SEMVER-MAJOR) export 'module.exports' on ESM CJS wrapper (Guy Bedford) #53848
events:
  * (SEMVER-MAJOR) set EventEmitterAsyncResource fields private (Yagiz Nizipli) #54889
fs:
  * (SEMVER-MAJOR) adjust typecheck for `type` in `fs.symlink()` (Livia Medeiros) #49741
  * (SEMVER-MAJOR) runtime deprecate `dirent.path` (Antoine du Hamel) #51050
lib:
  * (SEMVER-MAJOR) validate signals with interface converter (Jason Zhang) #54965
  * (SEMVER-MAJOR) implement interface converter in webidl (Jason Zhang) #54965
  * (SEMVER-MAJOR) expose global CloseEvent (Matthew Aitken) #53355
net:
  * (SEMVER-MAJOR) validate host name for server listen (Jason Zhang) #54470
path:
  * (SEMVER-MAJOR) fix bugs and inconsistencies (Hüseyin Açacak) #54224
process:
  * (SEMVER-MAJOR) remove `process.assert` (Aviv Keller) #55035
src:
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 131 (Michaël Zasso) #54536
  * (SEMVER-MAJOR) stop using deprecated fields of `v8::FastApiCallbackOptions` (Andreas Haas) #54077
  * (SEMVER-MAJOR) remove dependency on wrapper-descriptor-based CppHeap (Joyee Cheung) #54077
  * (SEMVER-MAJOR) add source location to v8::TaskRunner (François Doray) #54077
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 129 (Michaël Zasso) #54077
  * (SEMVER-MAJOR) do not use soon-to-be-deprecated V8 API (Igor Sheludko) #53174
  * (SEMVER-MAJOR) add UV_PIPE_NO_TRUNCATE for bind in pipe_wrap.cc (theanarkh) #52347
stream:
  * (SEMVER-MAJOR) pipe to a closed or destroyed stream is not allowed in pipeline (jakecastelli) #53241
string_decoder:
  * (SEMVER-MAJOR) refactor encoding validation (Yagiz Nizipli) #54957
test:
  * (SEMVER-MAJOR) update v8-stats test for V8 12.6 (Michaël Zasso) #54077
test_runner:
  * (SEMVER-MAJOR) detect only tests when --test is not used (Colin Ihrig) #54881
  * (SEMVER-MAJOR) always make spec the default reporter (Colin Ihrig) #54548
  * (SEMVER-MAJOR) expose lcov reporter as newable function (Chemi Atlow) #52403
timers:
  * (SEMVER-MAJOR) emit warning if delay is negative or NaN (jakecastelli) #46678
tls:
  * (SEMVER-MAJOR) fix 'ERR_TLS_PSK_SET_IDENTIY_HINT_FAILED' typo (Aviv Keller) #52627
tools:
  * (SEMVER-MAJOR) add additonal include dirs for V8 on AIX (Abdirahim Musse) #54536
  * (SEMVER-MAJOR) update V8 gypfiles for 12.8 (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 gypfiles for 12.7 (Richard Lau) #54077
  * (SEMVER-MAJOR) update V8 gypfiles for 12.6 (Michaël Zasso) #54077
util:
  * (SEMVER-MAJOR) move util.log to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isPrimitive to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isFunction to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isError to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isDate to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isObject to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isRegExp to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isUndefined to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isSymbol to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isString to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isNumber to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isNullOrUndefined to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isNull to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isBuffer to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isBoolean to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util._extend to eol (marco-ippolito) #52744
zlib:
  * (SEMVER-MAJOR) remove `zlib.bytesRead` (Yagiz Nizipli) #55020

PR-URL: #55338
RafaelGSS added a commit that referenced this pull request Oct 9, 2024
Semver-Major Commits:

assert,util:
  * (SEMVER-MAJOR) change WeakMap and WeakSet comparison handling (Cristian Barlutiu) #53495
buffer:
  * (SEMVER-MAJOR) throw when writing beyond buffer" (Robert Nagy) #54588
  * (SEMVER-MAJOR) make File cloneable (Matthew Aitken) #47613
build:
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #54536
  * (SEMVER-MAJOR) disable ICF for mksnapshot (Leszek Swirski) #54077
  * (SEMVER-MAJOR) include v8-sandbox.h header in distribution (Michaël Zasso) #54077
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #54077
  * (SEMVER-MAJOR) warn for GCC versions earlier than 12.2 (Michaël Zasso) #54081
  * (SEMVER-MAJOR) drop experimental support for Windows <10 (Michaël Zasso) #54079
  * (SEMVER-MAJOR) remove support for 32-bit Windows (Michaël Zasso) #53184
  * (SEMVER-MAJOR) compile with C++20 support (Michaël Zasso) #45427
child_process:
  * (SEMVER-MAJOR) remove unused internal event (Rich Trott) #53793
cli:
  * (SEMVER-MAJOR) remove deprecated V8 flag (Omer Katz) #54761
  * (SEMVER-MAJOR) move --trace-atomics-wait to eol (Marco Ippolito) #52747
  * (SEMVER-MAJOR) remove --no-experimental-global-customevent flag (Daeyeon Jeong) #52723
  * (SEMVER-MAJOR) remove --no-experimental-fetch flag (Filip Skokan) #52611
  * (SEMVER-MAJOR) remove --no-experimental-global-webcrypto flag (Filip Skokan) #52564
crypto:
  * (SEMVER-MAJOR) runtime deprecate crypto.fips (Yagiz Nizipli) #55019
  * (SEMVER-MAJOR) remove ERR_CRYPTO_SCRYPT_INVALID_PARAMETER (Tobias Nießen) #53305
  * (SEMVER-MAJOR) move DEP0182 to runtime deprecation (Tobias Nießen) #52552
deps:
  * (SEMVER-MAJOR) V8: cherry-pick 97199f686e2f (Michaël Zasso) #54536
  * (SEMVER-MAJOR) V8: cherry-pick 01a47f3ffff2 (Michaël Zasso) #54536
  * (SEMVER-MAJOR) patch V8 to support older Clang versions (Michaël Zasso) #54536
  * (SEMVER-MAJOR) always define V8_NODISCARD as no-op (Michaël Zasso) #54536
  * (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) #54536
  * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #54536
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54536
  * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #54536
  * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #54536
  * (SEMVER-MAJOR) update V8 to 12.9.202.18 (Michaël Zasso) #54536
  * (SEMVER-MAJOR) remove bogus V8 DCHECK (Michaël Zasso) #54077
  * (SEMVER-MAJOR) V8: cherry-pick 00e9eeb3fb2c (Michaël Zasso) #54077
  * (SEMVER-MAJOR) V8: cherry-pick b1397772c70c (Michaël Zasso) #54077
  * (SEMVER-MAJOR) V8: cherry-pick 35888fee7bba (Joyee Cheung) #54077
  * (SEMVER-MAJOR) always define V8_NODISCARD as no-op (Michaël Zasso) #54077
  * (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) #54077
  * (SEMVER-MAJOR) V8: revert CL 5331688 (Michaël Zasso) #54077
  * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #54077
  * (SEMVER-MAJOR) silence internal V8 deprecation warning (Michaël Zasso) #54077
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #54077
  * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #54077
  * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 12.8.374.13 (Michaël Zasso) #54077
doc:
  * (SEMVER-MAJOR) reflect toolchains used for official binaries (Richard Lau) #54967
  * (SEMVER-MAJOR) use gcc 12 on AIX for Node.js >=23 (Richard Lau) #54338
esm:
  * (SEMVER-MAJOR) export 'module.exports' on ESM CJS wrapper (Guy Bedford) #53848
events:
  * (SEMVER-MAJOR) set EventEmitterAsyncResource fields private (Yagiz Nizipli) #54889
fs:
  * (SEMVER-MAJOR) adjust typecheck for `type` in `fs.symlink()` (Livia Medeiros) #49741
  * (SEMVER-MAJOR) runtime deprecate `dirent.path` (Antoine du Hamel) #51050
lib:
  * (SEMVER-MAJOR) validate signals with interface converter (Jason Zhang) #54965
  * (SEMVER-MAJOR) implement interface converter in webidl (Jason Zhang) #54965
  * (SEMVER-MAJOR) expose global CloseEvent (Matthew Aitken) #53355
net:
  * (SEMVER-MAJOR) validate host name for server listen (Jason Zhang) #54470
path:
  * (SEMVER-MAJOR) fix bugs and inconsistencies (Hüseyin Açacak) #54224
process:
  * (SEMVER-MAJOR) remove `process.assert` (Aviv Keller) #55035
src:
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 131 (Michaël Zasso) #54536
  * (SEMVER-MAJOR) stop using deprecated fields of `v8::FastApiCallbackOptions` (Andreas Haas) #54077
  * (SEMVER-MAJOR) remove dependency on wrapper-descriptor-based CppHeap (Joyee Cheung) #54077
  * (SEMVER-MAJOR) add source location to v8::TaskRunner (François Doray) #54077
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 129 (Michaël Zasso) #54077
  * (SEMVER-MAJOR) do not use soon-to-be-deprecated V8 API (Igor Sheludko) #53174
  * (SEMVER-MAJOR) add UV_PIPE_NO_TRUNCATE for bind in pipe_wrap.cc (theanarkh) #52347
stream:
  * (SEMVER-MAJOR) pipe to a closed or destroyed stream is not allowed in pipeline (jakecastelli) #53241
string_decoder:
  * (SEMVER-MAJOR) refactor encoding validation (Yagiz Nizipli) #54957
test:
  * (SEMVER-MAJOR) update v8-stats test for V8 12.6 (Michaël Zasso) #54077
test_runner:
  * (SEMVER-MAJOR) detect only tests when --test is not used (Colin Ihrig) #54881
  * (SEMVER-MAJOR) always make spec the default reporter (Colin Ihrig) #54548
  * (SEMVER-MAJOR) expose lcov reporter as newable function (Chemi Atlow) #52403
timers:
  * (SEMVER-MAJOR) emit warning if delay is negative or NaN (jakecastelli) #46678
tls:
  * (SEMVER-MAJOR) fix 'ERR_TLS_PSK_SET_IDENTIY_HINT_FAILED' typo (Aviv Keller) #52627
tools:
  * (SEMVER-MAJOR) add additonal include dirs for V8 on AIX (Abdirahim Musse) #54536
  * (SEMVER-MAJOR) update V8 gypfiles for 12.8 (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 gypfiles for 12.7 (Richard Lau) #54077
  * (SEMVER-MAJOR) update V8 gypfiles for 12.6 (Michaël Zasso) #54077
util:
  * (SEMVER-MAJOR) move util.log to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isPrimitive to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isFunction to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isError to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isDate to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isObject to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isRegExp to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isUndefined to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isSymbol to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isString to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isNumber to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isNullOrUndefined to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isNull to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isBuffer to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isBoolean to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util._extend to eol (marco-ippolito) #52744
zlib:
  * (SEMVER-MAJOR) remove `zlib.bytesRead` (Yagiz Nizipli) #55020

PR-URL: #55338
RafaelGSS added a commit that referenced this pull request Oct 9, 2024
Semver-Major Commits:

assert,util:
  * (SEMVER-MAJOR) change WeakMap and WeakSet comparison handling (Cristian Barlutiu) #53495
buffer:
  * (SEMVER-MAJOR) throw when writing beyond buffer" (Robert Nagy) #54588
  * (SEMVER-MAJOR) make File cloneable (Matthew Aitken) #47613
build:
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #54536
  * (SEMVER-MAJOR) disable ICF for mksnapshot (Leszek Swirski) #54077
  * (SEMVER-MAJOR) include v8-sandbox.h header in distribution (Michaël Zasso) #54077
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #54077
  * (SEMVER-MAJOR) warn for GCC versions earlier than 12.2 (Michaël Zasso) #54081
  * (SEMVER-MAJOR) drop experimental support for Windows <10 (Michaël Zasso) #54079
  * (SEMVER-MAJOR) remove support for 32-bit Windows (Michaël Zasso) #53184
  * (SEMVER-MAJOR) compile with C++20 support (Michaël Zasso) #45427
child_process:
  * (SEMVER-MAJOR) remove unused internal event (Rich Trott) #53793
cli:
  * (SEMVER-MAJOR) remove deprecated V8 flag (Omer Katz) #54761
  * (SEMVER-MAJOR) move --trace-atomics-wait to eol (Marco Ippolito) #52747
  * (SEMVER-MAJOR) remove --no-experimental-global-customevent flag (Daeyeon Jeong) #52723
  * (SEMVER-MAJOR) remove --no-experimental-fetch flag (Filip Skokan) #52611
  * (SEMVER-MAJOR) remove --no-experimental-global-webcrypto flag (Filip Skokan) #52564
crypto:
  * (SEMVER-MAJOR) runtime deprecate crypto.fips (Yagiz Nizipli) #55019
  * (SEMVER-MAJOR) remove ERR_CRYPTO_SCRYPT_INVALID_PARAMETER (Tobias Nießen) #53305
  * (SEMVER-MAJOR) move DEP0182 to runtime deprecation (Tobias Nießen) #52552
deps:
  * (SEMVER-MAJOR) V8: cherry-pick 97199f686e2f (Michaël Zasso) #54536
  * (SEMVER-MAJOR) V8: cherry-pick 01a47f3ffff2 (Michaël Zasso) #54536
  * (SEMVER-MAJOR) patch V8 to support older Clang versions (Michaël Zasso) #54536
  * (SEMVER-MAJOR) always define V8_NODISCARD as no-op (Michaël Zasso) #54536
  * (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) #54536
  * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #54536
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54536
  * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #54536
  * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #54536
  * (SEMVER-MAJOR) update V8 to 12.9.202.18 (Michaël Zasso) #54536
  * (SEMVER-MAJOR) remove bogus V8 DCHECK (Michaël Zasso) #54077
  * (SEMVER-MAJOR) V8: cherry-pick 00e9eeb3fb2c (Michaël Zasso) #54077
  * (SEMVER-MAJOR) V8: cherry-pick b1397772c70c (Michaël Zasso) #54077
  * (SEMVER-MAJOR) V8: cherry-pick 35888fee7bba (Joyee Cheung) #54077
  * (SEMVER-MAJOR) always define V8_NODISCARD as no-op (Michaël Zasso) #54077
  * (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) #54077
  * (SEMVER-MAJOR) V8: revert CL 5331688 (Michaël Zasso) #54077
  * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #54077
  * (SEMVER-MAJOR) silence internal V8 deprecation warning (Michaël Zasso) #54077
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #54077
  * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #54077
  * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #54077
  * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 to 12.8.374.13 (Michaël Zasso) #54077
doc:
  * (SEMVER-MAJOR) reflect toolchains used for official binaries (Richard Lau) #54967
  * (SEMVER-MAJOR) use gcc 12 on AIX for Node.js >=23 (Richard Lau) #54338
esm:
  * (SEMVER-MAJOR) export 'module.exports' on ESM CJS wrapper (Guy Bedford) #53848
events:
  * (SEMVER-MAJOR) set EventEmitterAsyncResource fields private (Yagiz Nizipli) #54889
fs:
  * (SEMVER-MAJOR) adjust typecheck for `type` in `fs.symlink()` (Livia Medeiros) #49741
  * (SEMVER-MAJOR) runtime deprecate `dirent.path` (Antoine du Hamel) #51050
lib:
  * (SEMVER-MAJOR) validate signals with interface converter (Jason Zhang) #54965
  * (SEMVER-MAJOR) implement interface converter in webidl (Jason Zhang) #54965
  * (SEMVER-MAJOR) expose global CloseEvent (Matthew Aitken) #53355
net:
  * (SEMVER-MAJOR) validate host name for server listen (Jason Zhang) #54470
path:
  * (SEMVER-MAJOR) fix bugs and inconsistencies (Hüseyin Açacak) #54224
process:
  * (SEMVER-MAJOR) remove `process.assert` (Aviv Keller) #55035
src:
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 131 (Michaël Zasso) #54536
  * (SEMVER-MAJOR) stop using deprecated fields of `v8::FastApiCallbackOptions` (Andreas Haas) #54077
  * (SEMVER-MAJOR) remove dependency on wrapper-descriptor-based CppHeap (Joyee Cheung) #54077
  * (SEMVER-MAJOR) add source location to v8::TaskRunner (François Doray) #54077
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 129 (Michaël Zasso) #54077
  * (SEMVER-MAJOR) do not use soon-to-be-deprecated V8 API (Igor Sheludko) #53174
  * (SEMVER-MAJOR) add UV_PIPE_NO_TRUNCATE for bind in pipe_wrap.cc (theanarkh) #52347
stream:
  * (SEMVER-MAJOR) pipe to a closed or destroyed stream is not allowed in pipeline (jakecastelli) #53241
string_decoder:
  * (SEMVER-MAJOR) refactor encoding validation (Yagiz Nizipli) #54957
test:
  * (SEMVER-MAJOR) update v8-stats test for V8 12.6 (Michaël Zasso) #54077
test_runner:
  * (SEMVER-MAJOR) detect only tests when --test is not used (Colin Ihrig) #54881
  * (SEMVER-MAJOR) always make spec the default reporter (Colin Ihrig) #54548
  * (SEMVER-MAJOR) expose lcov reporter as newable function (Chemi Atlow) #52403
timers:
  * (SEMVER-MAJOR) emit warning if delay is negative or NaN (jakecastelli) #46678
tls:
  * (SEMVER-MAJOR) fix 'ERR_TLS_PSK_SET_IDENTIY_HINT_FAILED' typo (Aviv Keller) #52627
tools:
  * (SEMVER-MAJOR) add additonal include dirs for V8 on AIX (Abdirahim Musse) #54536
  * (SEMVER-MAJOR) update V8 gypfiles for 12.8 (Michaël Zasso) #54077
  * (SEMVER-MAJOR) update V8 gypfiles for 12.7 (Richard Lau) #54077
  * (SEMVER-MAJOR) update V8 gypfiles for 12.6 (Michaël Zasso) #54077
util:
  * (SEMVER-MAJOR) move util.log to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isPrimitive to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isFunction to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isError to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isDate to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isObject to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isRegExp to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isUndefined to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isSymbol to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isString to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isNumber to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isNullOrUndefined to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isNull to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isBuffer to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util.isBoolean to eol (marco-ippolito) #52744
  * (SEMVER-MAJOR) move util._extend to eol (marco-ippolito) #52744
zlib:
  * (SEMVER-MAJOR) remove `zlib.bytesRead` (Yagiz Nizipli) #55020

PR-URL: #55338
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
commit-queue-squash Add this label to instruct the Commit Queue to squash all the PR commits into the first one. errors Issues and PRs related to JavaScript errors originated in Node.js core. fs Issues and PRs related to the fs subsystem / file system. needs-ci PRs that need a full CI run. needs-citgm PRs that need a CITGM CI run. semver-major PRs that contain breaking changes and should be released in the next major version.
Projects
None yet
Development

Successfully merging this pull request may close these issues.