Skip to content

test_runner: remove Promise return values from test(), suite(), and t.test() #56664

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

Closed
wants to merge 3 commits into from

Conversation

cjihrig
Copy link
Contributor

@cjihrig cjihrig commented Jan 20, 2025

test_runner: automatically wait for subtests to finish

This commit updates the test runner to automatically wait for
subtests to finish. This makes the experience more consistent
with suites and removes the need to await anything.

test_runner: remove promises returned by test()

This commit updates the test() and suite() APIs to no longer
return a Promise.

Fixes: #51292

test_runner: remove promises returned by t.test()

This commit updates the TestContext.prototype.test() API to no
longer return a Promise.

Fixes: #51292

@cjihrig cjihrig added semver-major PRs that contain breaking changes and should be released in the next major version. commit-queue-rebase Add this label to allow the Commit Queue to land a PR in several commits. labels Jan 20, 2025
@nodejs-github-bot
Copy link
Collaborator

Review requested:

  • @nodejs/test_runner

@nodejs-github-bot nodejs-github-bot added needs-ci PRs that need a full CI run. test_runner Issues and PRs related to the test runner subsystem. labels Jan 20, 2025
Copy link

codecov bot commented Jan 20, 2025

Codecov Report

Attention: Patch coverage is 97.05882% with 1 line in your changes missing coverage. Please review.

Project coverage is 89.21%. Comparing base (55cc372) to head (30b191c).
Report is 36 commits behind head on main.

Files with missing lines Patch % Lines
lib/internal/test_runner/harness.js 94.73% 1 Missing ⚠️
Additional details and impacted files
@@           Coverage Diff           @@
##             main   #56664   +/-   ##
=======================================
  Coverage   89.21%   89.21%           
=======================================
  Files         663      663           
  Lines      192002   192028   +26     
  Branches    36928    36925    -3     
=======================================
+ Hits       171292   171319   +27     
+ Misses      13583    13582    -1     
  Partials     7127     7127           
Files with missing lines Coverage Δ
lib/internal/test_runner/test.js 97.09% <100.00%> (+0.02%) ⬆️
lib/internal/test_runner/harness.js 92.91% <94.73%> (+0.23%) ⬆️

... and 28 files with indirect coverage changes

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

Copy link
Member

@pmarchini pmarchini left a comment

Choose a reason for hiding this comment

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

Aside from the nits: I think this is a great devEx enhancement! LGTM

doc/api/test.md Outdated

This comment was marked as resolved.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

There is no change here regarding how a test is recognized as finished. The test is either a synchronous function, a function that returns a Promise, or a function that takes a callback. The test is finished after awaiting the return value or the callback is invoked. That part is already documented.

For example, how would it understand this one completes?

Unrelated to this change - I believe this first snippet has a bug, assuming someCallback() is asynchronous? If it is asynchronous, there should be a Promise or a done callback involved. The second code snippet looks correct, but a Promise could have been used as well.

Does this PR make the done callback required for all subtests?

No.

Copy link
Member

@JakobJingleheimer JakobJingleheimer left a comment

Choose a reason for hiding this comment

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

Do we have a test for ensuring dynamically added test cases finish before the suite closes? This await behaviour was previously required in order to orchestrate that in userland, so I'm just concerned this could break that.

Ref nodejs/nodejs.org#7387

@cjihrig
Copy link
Contributor Author

cjihrig commented Jan 21, 2025

Yes, dynamically added tests still work. The breaking change (aside from the return value change) is that you can no longer await subtests for control flow purposes. For users of describe() there are no changes at all. For users of t.test() awaiting the result becomes await undefined.

@jsumners
Copy link
Contributor

The breaking change (aside from the return value change) is that you can no longer await subtests for control flow purposes.

I'm confused. The docs still say that a test can return a promise:

node/doc/api/test.md

Lines 32 to 43 in 2b34ffe

Tests created via the `test` module consist of a single function that is
processed in one of three ways:
1. A synchronous function that is considered failing if it throws an exception,
and is considered passing otherwise.
2. A function that returns a `Promise` that is considered failing if the
`Promise` rejects, and is considered passing if the `Promise` fulfills.
3. A function that receives a callback function. If the callback receives any
truthy value as its first argument, the test is considered failing. If a
falsy value is passed as the first argument to the callback, the test is
considered passing. If the test function receives a callback function and
also returns a `Promise`, the test will fail.

Are you saying that we can no longer await those returned promises in order to keep the parent test alive?

@cjihrig
Copy link
Contributor Author

cjihrig commented Jan 21, 2025

const r = test('foo', () => {
  return new Promise((resolve) => {
    resolve();
  });
});

This test returns a Promise (the Promise that is resolved()). When that Promise settles, the test is considered finished. That has not changed.

r is the value that node:test returns from test(). This is not, and never has been, the same Promise inside of the test.

Previously, if you were writing a test inside of another test, you needed to await r so that the parent test would not finish before the subtest. With this change, the test runner will automatically wait for you. That is already how describe() works.

The only scenario where this is breaking:

test('foo', async (t) => {
  await t.test('subtest 1');
  // It is no longer guaranteed that the subtest on the previous line has
  // finished by the time this line executes. But the test runner still ensures
  // the order that subtest 1 and subtest 2 are executed in.
  await t.test('subtest 2');
});

@jsumners
Copy link
Contributor

The only scenario where this is breaking:

Thank you for the clarification. I was unaware of await test to guarantee subtests executing in a specific order. That sounds like someone relying on side effects in tests and not something I do. 👍

@targos
Copy link
Member

targos commented Jan 21, 2025

So, is t.test() now identical to a nested test() call?

@cjihrig
Copy link
Contributor Author

cjihrig commented Jan 21, 2025

As far as I know, that was already the case. The difference was that describe() waited for its children, while test() and t.test() did not. Now, all of them wait for their children.

Copy link
Member

@targos targos left a comment

Choose a reason for hiding this comment

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

Approving the breaking change.

@cjihrig cjihrig added the request-ci Add this label to start a Jenkins CI on a PR. label Jan 21, 2025
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Jan 21, 2025
@nodejs-github-bot
Copy link
Collaborator

@climba03003
Copy link
Contributor

climba03003 commented Jan 22, 2025

Can we keep the return Promise but allows to automatic wait for all sub-test be done first, then remove the Promise return on next major?

The main reason is that

  1. Allows backport to 20 and 22. (I believe semver-major won't backport to old release.)
  2. Better migration path for removing the await test when the package is supporting multiple node version

@JoshuaKGoldberg
Copy link

👍 I checked just now and none of those repositories swap what version of @types/node they use. They all either use 0 or 1 version.

So, I think the only way this change would likely+reasonably get in the way via linting is if they:

  1. Bump their version of @types/node
  2. Autofix away awaits due to reports from @typescript-eslint/await-thenable
  3. Run tests matrixed in an older version of Node.js

To get around that, I'd advise using inline eslint-disable-next-line comments on any places where a subtest actually does need to be awaited:

// eslint-disable-next-line @typescript-eslint/await-thenable
await t.test(...);

If there are a ton they could always disable @typescript-eslint/await-thenable in their ESLint config for just e.g. *.test.* files:

{
  files: ['src/**/*.test.*'],
  rules: { '@typescript-eslint/await-thenable': 'off' }
}

@cjihrig
Copy link
Contributor Author

cjihrig commented Jan 27, 2025

Thanks @JoshuaKGoldberg. I've been thinking about this PR for the past few days. I still have a lot of apprehension about landing the return type change, but given the number of folks who appear to be on board with it, I think I'm going to rebase and get this landed.

This commit updates the test runner to automatically wait for
subtests to finish. This makes the experience more consistent
with suites and removes the need to await anything.
This commit updates the test() and suite() APIs to no longer
return a Promise.

Fixes: nodejs#51292
This commit updates the TestContext.prototype.test() API to no
longer return a Promise.

Fixes: nodejs#51292
@cjihrig cjihrig added request-ci Add this label to start a Jenkins CI on a PR. and removed blocked PRs that are blocked by other issues or PRs. labels Jan 29, 2025
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Jan 29, 2025
@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot
Copy link
Collaborator

nodejs-github-bot commented Jan 31, 2025

jasnell pushed a commit that referenced this pull request Jan 31, 2025
This commit updates the test runner to automatically wait for
subtests to finish. This makes the experience more consistent
with suites and removes the need to await anything.

PR-URL: #56664
Fixes: #51292
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Pietro Marchini <pietro.marchini94@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Jacob Smith <jacob@frende.me>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Raz Luvaton <rluvaton@gmail.com>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
jasnell pushed a commit that referenced this pull request Jan 31, 2025
This commit updates the test() and suite() APIs to no longer
return a Promise.

Fixes: #51292
PR-URL: #56664
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Pietro Marchini <pietro.marchini94@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Jacob Smith <jacob@frende.me>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Raz Luvaton <rluvaton@gmail.com>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
jasnell pushed a commit that referenced this pull request Jan 31, 2025
This commit updates the TestContext.prototype.test() API to no
longer return a Promise.

Fixes: #51292
PR-URL: #56664
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Pietro Marchini <pietro.marchini94@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Jacob Smith <jacob@frende.me>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Raz Luvaton <rluvaton@gmail.com>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
@jasnell
Copy link
Member

jasnell commented Jan 31, 2025

Landed in ba4587c...1a2eb15

@jasnell jasnell closed this Jan 31, 2025
RafaelGSS added a commit that referenced this pull request Mar 24, 2025
Semver-Major Commits:

buffer:
  * (SEMVER-MAJOR) make `buflen` in integer range (zhenweijin) #51821
build:
  * (SEMVER-MAJOR) bump supported macOS version to 13.5 (Michaël Zasso) #57115
  * (SEMVER-MAJOR) increase minimum Xcode version to 16.1 (Michaël Zasso) #56824
  * (SEMVER-MAJOR) link V8 with atomic library (Michaël Zasso) #55014
  * (SEMVER-MAJOR) remove support for ppc 32-bit (Michaël Zasso) #55014
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #55014
child_process:
  * (SEMVER-MAJOR) deprecate passing `args` to `spawn` and `execFile` (Daniel Venable) #57199
deps:
  * (SEMVER-MAJOR) V8: cherry-pick f915fa4c9f41 (Olivier Flückiger) #55014
  * (SEMVER-MAJOR) V8: cherry-pick 0d5d6e71bbb0 (Yagiz Nizipli) #55014
  * (SEMVER-MAJOR) V8: cherry-pick 0c11feeeca4a (Michaël Zasso) #55014
  * (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #55014
  * (SEMVER-MAJOR) always define V8_NODISCARD as no-op (Michaël Zasso) #55014
  * (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) #55014
  * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #55014
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #55014
  * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #55014
  * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #55014
  * (SEMVER-MAJOR) update V8 to 13.0.245.25 (Michaël Zasso) #55014
  * (SEMVER-MAJOR) upgrade npm to 11.0.0 (npm team) #56274
  * (SEMVER-MAJOR) update undici to 7.0.0 (Node.js GitHub Bot) #56070
fs:
  * (SEMVER-MAJOR) remove ability to call truncate with fd (Yagiz Nizipli) #57567
  * (SEMVER-MAJOR) remove `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) #55862
  * (SEMVER-MAJOR) deprecate passing invalid types in `fs.existsSync` (Carlos Espa) #55753
  * (SEMVER-MAJOR) runtime deprecate `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) #49686
  * (SEMVER-MAJOR) remove `dirent.path` (Antoine du Hamel) #55548
lib:
  * (SEMVER-MAJOR) remove obsolete Cipher export (James M Snell) #57266
  * (SEMVER-MAJOR) unexpose six process bindings (Michaël Zasso) #57149
  * (SEMVER-MAJOR) make ALS default to AsyncContextFrame (Stephen Belanger) #55552
  * (SEMVER-MAJOR) runtime deprecate SlowBuffer (Rafael Gonzaga) #55175
net:
  * (SEMVER-MAJOR) make _setSimultaneousAccepts() end-of-life deprecated (Yagiz Nizipli) #57550
repl:
  * (SEMVER-MAJOR) runtime deprecate instantiating without new (Aviv Keller) #54869
src:
  * (SEMVER-MAJOR) update GetForegroundTaskRunner override (Etienne Pierre-doray) #55014
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 134 (Michaël Zasso) #55014
  * (SEMVER-MAJOR) drop --experimental-permission in favour of --permission (Rafael Gonzaga) #56240
  * (SEMVER-MAJOR) add async context frame to AsyncResource (Gerhard Stöbich) #56082
  * (SEMVER-MAJOR) nuke deprecated and un-used enum members in `OptionEnvvarSettings` (Juan José) #53079
stream:
  * (SEMVER-MAJOR) catch and forward error from dest.write (jakecastelli) #55270
test:
  * (SEMVER-MAJOR) disable fast API call count checks (Michaël Zasso) #55014
test_runner:
  * (SEMVER-MAJOR) remove promises returned by t.test() (Colin Ihrig) #56664
  * (SEMVER-MAJOR) remove promises returned by test() (Colin Ihrig) #56664
  * (SEMVER-MAJOR) automatically wait for subtests to finish (Colin Ihrig) #56664
timers:
  * (SEMVER-MAJOR) check for immediate instance in clearImmediate (Gürgün Dayıoğlu) #57069
  * (SEMVER-MAJOR) set several methods EOL (Yagiz Nizipli) #56966
tls:
  * (SEMVER-MAJOR) remove deprecated tls.createSecurePair (Jonas) #57361
  * (SEMVER-MAJOR) make server.prototype.setOptions end-of-life (Yagiz Nizipli) #57339
tools:
  * (SEMVER-MAJOR) update V8 gypfiles for 13.0 (Michaël Zasso) #55014
url:
  * (SEMVER-MAJOR) expose urlpattern as global (Jonas) #56950
  * (SEMVER-MAJOR) runtime deprecate url.parse (Yagiz Nizipli) #55017
zlib:
  * (SEMVER-MAJOR) deprecate classes usage without `new` (Yagiz Nizipli) #55718

PR-URL: TBD
RafaelGSS added a commit that referenced this pull request Mar 24, 2025
Semver-Major Commits:

buffer:
  * (SEMVER-MAJOR) make `buflen` in integer range (zhenweijin) #51821
build:
  * (SEMVER-MAJOR) bump supported macOS version to 13.5 (Michaël Zasso) #57115
  * (SEMVER-MAJOR) increase minimum Xcode version to 16.1 (Michaël Zasso) #56824
  * (SEMVER-MAJOR) link V8 with atomic library (Michaël Zasso) #55014
  * (SEMVER-MAJOR) remove support for ppc 32-bit (Michaël Zasso) #55014
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #55014
child_process:
  * (SEMVER-MAJOR) deprecate passing `args` to `spawn` and `execFile` (Daniel Venable) #57199
deps:
  * (SEMVER-MAJOR) V8: cherry-pick f915fa4c9f41 (Olivier Flückiger) #55014
  * (SEMVER-MAJOR) V8: cherry-pick 0d5d6e71bbb0 (Yagiz Nizipli) #55014
  * (SEMVER-MAJOR) V8: cherry-pick 0c11feeeca4a (Michaël Zasso) #55014
  * (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #55014
  * (SEMVER-MAJOR) always define V8_NODISCARD as no-op (Michaël Zasso) #55014
  * (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) #55014
  * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #55014
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #55014
  * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #55014
  * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #55014
  * (SEMVER-MAJOR) update V8 to 13.0.245.25 (Michaël Zasso) #55014
  * (SEMVER-MAJOR) upgrade npm to 11.0.0 (npm team) #56274
  * (SEMVER-MAJOR) update undici to 7.0.0 (Node.js GitHub Bot) #56070
fs:
  * (SEMVER-MAJOR) remove ability to call truncate with fd (Yagiz Nizipli) #57567
  * (SEMVER-MAJOR) remove `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) #55862
  * (SEMVER-MAJOR) deprecate passing invalid types in `fs.existsSync` (Carlos Espa) #55753
  * (SEMVER-MAJOR) runtime deprecate `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) #49686
  * (SEMVER-MAJOR) remove `dirent.path` (Antoine du Hamel) #55548
lib:
  * (SEMVER-MAJOR) remove obsolete Cipher export (James M Snell) #57266
  * (SEMVER-MAJOR) unexpose six process bindings (Michaël Zasso) #57149
  * (SEMVER-MAJOR) make ALS default to AsyncContextFrame (Stephen Belanger) #55552
  * (SEMVER-MAJOR) runtime deprecate SlowBuffer (Rafael Gonzaga) #55175
net:
  * (SEMVER-MAJOR) make _setSimultaneousAccepts() end-of-life deprecated (Yagiz Nizipli) #57550
repl:
  * (SEMVER-MAJOR) runtime deprecate instantiating without new (Aviv Keller) #54869
src:
  * (SEMVER-MAJOR) update GetForegroundTaskRunner override (Etienne Pierre-doray) #55014
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 134 (Michaël Zasso) #55014
  * (SEMVER-MAJOR) drop --experimental-permission in favour of --permission (Rafael Gonzaga) #56240
  * (SEMVER-MAJOR) add async context frame to AsyncResource (Gerhard Stöbich) #56082
  * (SEMVER-MAJOR) nuke deprecated and un-used enum members in `OptionEnvvarSettings` (Juan José) #53079
stream:
  * (SEMVER-MAJOR) catch and forward error from dest.write (jakecastelli) #55270
test:
  * (SEMVER-MAJOR) disable fast API call count checks (Michaël Zasso) #55014
test_runner:
  * (SEMVER-MAJOR) remove promises returned by t.test() (Colin Ihrig) #56664
  * (SEMVER-MAJOR) remove promises returned by test() (Colin Ihrig) #56664
  * (SEMVER-MAJOR) automatically wait for subtests to finish (Colin Ihrig) #56664
timers:
  * (SEMVER-MAJOR) check for immediate instance in clearImmediate (Gürgün Dayıoğlu) #57069
  * (SEMVER-MAJOR) set several methods EOL (Yagiz Nizipli) #56966
tls:
  * (SEMVER-MAJOR) remove deprecated tls.createSecurePair (Jonas) #57361
  * (SEMVER-MAJOR) make server.prototype.setOptions end-of-life (Yagiz Nizipli) #57339
tools:
  * (SEMVER-MAJOR) update V8 gypfiles for 13.0 (Michaël Zasso) #55014
url:
  * (SEMVER-MAJOR) expose urlpattern as global (Jonas) #56950
  * (SEMVER-MAJOR) runtime deprecate url.parse (Yagiz Nizipli) #55017
zlib:
  * (SEMVER-MAJOR) deprecate classes usage without `new` (Yagiz Nizipli) #55718

PR-URL: #57609
RafaelGSS added a commit that referenced this pull request Apr 1, 2025
Semver-Major Commits:

buffer:
  * (SEMVER-MAJOR) make `buflen` in integer range (zhenweijin) #51821
build:
  * (SEMVER-MAJOR) bump supported macOS version to 13.5 (Michaël Zasso) #57115
  * (SEMVER-MAJOR) increase minimum Xcode version to 16.1 (Michaël Zasso) #56824
  * (SEMVER-MAJOR) link V8 with atomic library (Michaël Zasso) #55014
  * (SEMVER-MAJOR) remove support for ppc 32-bit (Michaël Zasso) #55014
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #55014
child_process:
  * (SEMVER-MAJOR) deprecate passing `args` to `spawn` and `execFile` (Daniel Venable) #57199
deps:
  * (SEMVER-MAJOR) V8: cherry-pick f915fa4c9f41 (Olivier Flückiger) #55014
  * (SEMVER-MAJOR) V8: cherry-pick 0d5d6e71bbb0 (Yagiz Nizipli) #55014
  * (SEMVER-MAJOR) V8: cherry-pick 0c11feeeca4a (Michaël Zasso) #55014
  * (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #55014
  * (SEMVER-MAJOR) always define V8_NODISCARD as no-op (Michaël Zasso) #55014
  * (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) #55014
  * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #55014
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #55014
  * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #55014
  * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #55014
  * (SEMVER-MAJOR) update V8 to 13.0.245.25 (Michaël Zasso) #55014
  * (SEMVER-MAJOR) upgrade npm to 11.0.0 (npm team) #56274
  * (SEMVER-MAJOR) update undici to 7.0.0 (Node.js GitHub Bot) #56070
fs:
  * (SEMVER-MAJOR) remove ability to call truncate with fd (Yagiz Nizipli) #57567
  * (SEMVER-MAJOR) remove `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) #55862
  * (SEMVER-MAJOR) deprecate passing invalid types in `fs.existsSync` (Carlos Espa) #55753
  * (SEMVER-MAJOR) runtime deprecate `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) #49686
  * (SEMVER-MAJOR) remove `dirent.path` (Antoine du Hamel) #55548
lib:
  * (SEMVER-MAJOR) remove obsolete Cipher export (James M Snell) #57266
  * (SEMVER-MAJOR) unexpose six process bindings (Michaël Zasso) #57149
  * (SEMVER-MAJOR) make ALS default to AsyncContextFrame (Stephen Belanger) #55552
  * (SEMVER-MAJOR) runtime deprecate SlowBuffer (Rafael Gonzaga) #55175
net:
  * (SEMVER-MAJOR) make _setSimultaneousAccepts() end-of-life deprecated (Yagiz Nizipli) #57550
repl:
  * (SEMVER-MAJOR) runtime deprecate instantiating without new (Aviv Keller) #54869
src:
  * (SEMVER-MAJOR) update GetForegroundTaskRunner override (Etienne Pierre-doray) #55014
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 134 (Michaël Zasso) #55014
  * (SEMVER-MAJOR) drop --experimental-permission in favour of --permission (Rafael Gonzaga) #56240
  * (SEMVER-MAJOR) add async context frame to AsyncResource (Gerhard Stöbich) #56082
  * (SEMVER-MAJOR) nuke deprecated and un-used enum members in `OptionEnvvarSettings` (Juan José) #53079
stream:
  * (SEMVER-MAJOR) catch and forward error from dest.write (jakecastelli) #55270
test:
  * (SEMVER-MAJOR) disable fast API call count checks (Michaël Zasso) #55014
test_runner:
  * (SEMVER-MAJOR) remove promises returned by t.test() (Colin Ihrig) #56664
  * (SEMVER-MAJOR) remove promises returned by test() (Colin Ihrig) #56664
  * (SEMVER-MAJOR) automatically wait for subtests to finish (Colin Ihrig) #56664
timers:
  * (SEMVER-MAJOR) check for immediate instance in clearImmediate (Gürgün Dayıoğlu) #57069
  * (SEMVER-MAJOR) set several methods EOL (Yagiz Nizipli) #56966
tls:
  * (SEMVER-MAJOR) remove deprecated tls.createSecurePair (Jonas) #57361
  * (SEMVER-MAJOR) make server.prototype.setOptions end-of-life (Yagiz Nizipli) #57339
tools:
  * (SEMVER-MAJOR) update V8 gypfiles for 13.0 (Michaël Zasso) #55014
url:
  * (SEMVER-MAJOR) expose urlpattern as global (Jonas) #56950
  * (SEMVER-MAJOR) runtime deprecate url.parse (Yagiz Nizipli) #55017
zlib:
  * (SEMVER-MAJOR) deprecate classes usage without `new` (Yagiz Nizipli) #55718

PR-URL: #57609
RafaelGSS added a commit that referenced this pull request Apr 1, 2025
Semver-Major Commits:

buffer:
  * (SEMVER-MAJOR) make `buflen` in integer range (zhenweijin) #51821
build:
  * (SEMVER-MAJOR) bump supported macOS version to 13.5 (Michaël Zasso) #57115
  * (SEMVER-MAJOR) increase minimum Xcode version to 16.1 (Michaël Zasso) #56824
  * (SEMVER-MAJOR) link V8 with atomic library (Michaël Zasso) #55014
  * (SEMVER-MAJOR) remove support for ppc 32-bit (Michaël Zasso) #55014
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #55014
child_process:
  * (SEMVER-MAJOR) deprecate passing `args` to `spawn` and `execFile` (Daniel Venable) #57199
deps:
  * (SEMVER-MAJOR) V8: cherry-pick f915fa4c9f41 (Olivier Flückiger) #55014
  * (SEMVER-MAJOR) V8: cherry-pick 0d5d6e71bbb0 (Yagiz Nizipli) #55014
  * (SEMVER-MAJOR) V8: cherry-pick 0c11feeeca4a (Michaël Zasso) #55014
  * (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #55014
  * (SEMVER-MAJOR) always define V8_NODISCARD as no-op (Michaël Zasso) #55014
  * (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) #55014
  * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #55014
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #55014
  * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #55014
  * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #55014
  * (SEMVER-MAJOR) update V8 to 13.0.245.25 (Michaël Zasso) #55014
  * (SEMVER-MAJOR) upgrade npm to 11.0.0 (npm team) #56274
  * (SEMVER-MAJOR) update undici to 7.0.0 (Node.js GitHub Bot) #56070
fs:
  * (SEMVER-MAJOR) remove ability to call truncate with fd (Yagiz Nizipli) #57567
  * (SEMVER-MAJOR) remove `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) #55862
  * (SEMVER-MAJOR) deprecate passing invalid types in `fs.existsSync` (Carlos Espa) #55753
  * (SEMVER-MAJOR) runtime deprecate `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) #49686
  * (SEMVER-MAJOR) remove `dirent.path` (Antoine du Hamel) #55548
lib:
  * (SEMVER-MAJOR) remove obsolete Cipher export (James M Snell) #57266
  * (SEMVER-MAJOR) unexpose six process bindings (Michaël Zasso) #57149
  * (SEMVER-MAJOR) make ALS default to AsyncContextFrame (Stephen Belanger) #55552
  * (SEMVER-MAJOR) runtime deprecate SlowBuffer (Rafael Gonzaga) #55175
net:
  * (SEMVER-MAJOR) make _setSimultaneousAccepts() end-of-life deprecated (Yagiz Nizipli) #57550
repl:
  * (SEMVER-MAJOR) runtime deprecate instantiating without new (Aviv Keller) #54869
src:
  * (SEMVER-MAJOR) update GetForegroundTaskRunner override (Etienne Pierre-doray) #55014
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 134 (Michaël Zasso) #55014
  * (SEMVER-MAJOR) drop --experimental-permission in favour of --permission (Rafael Gonzaga) #56240
  * (SEMVER-MAJOR) add async context frame to AsyncResource (Gerhard Stöbich) #56082
  * (SEMVER-MAJOR) nuke deprecated and un-used enum members in `OptionEnvvarSettings` (Juan José) #53079
stream:
  * (SEMVER-MAJOR) catch and forward error from dest.write (jakecastelli) #55270
test:
  * (SEMVER-MAJOR) disable fast API call count checks (Michaël Zasso) #55014
test_runner:
  * (SEMVER-MAJOR) remove promises returned by t.test() (Colin Ihrig) #56664
  * (SEMVER-MAJOR) remove promises returned by test() (Colin Ihrig) #56664
  * (SEMVER-MAJOR) automatically wait for subtests to finish (Colin Ihrig) #56664
timers:
  * (SEMVER-MAJOR) check for immediate instance in clearImmediate (Gürgün Dayıoğlu) #57069
  * (SEMVER-MAJOR) set several methods EOL (Yagiz Nizipli) #56966
tls:
  * (SEMVER-MAJOR) remove deprecated tls.createSecurePair (Jonas) #57361
  * (SEMVER-MAJOR) make server.prototype.setOptions end-of-life (Yagiz Nizipli) #57339
tools:
  * (SEMVER-MAJOR) update V8 gypfiles for 13.0 (Michaël Zasso) #55014
url:
  * (SEMVER-MAJOR) expose urlpattern as global (Jonas) #56950
  * (SEMVER-MAJOR) runtime deprecate url.parse (Yagiz Nizipli) #55017
zlib:
  * (SEMVER-MAJOR) deprecate classes usage without `new` (Yagiz Nizipli) #55718

PR-URL: #57609
RafaelGSS added a commit that referenced this pull request Apr 1, 2025
Semver-Major Commits:

buffer:
  * (SEMVER-MAJOR) make `buflen` in integer range (zhenweijin) #51821
build:
  * (SEMVER-MAJOR) bump supported macOS version to 13.5 (Michaël Zasso) #57115
  * (SEMVER-MAJOR) increase minimum Xcode version to 16.1 (Michaël Zasso) #56824
  * (SEMVER-MAJOR) link V8 with atomic library (Michaël Zasso) #55014
  * (SEMVER-MAJOR) remove support for ppc 32-bit (Michaël Zasso) #55014
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #55014
child_process:
  * (SEMVER-MAJOR) deprecate passing `args` to `spawn` and `execFile` (Daniel Venable) #57199
deps:
  * (SEMVER-MAJOR) V8: cherry-pick f915fa4c9f41 (Olivier Flückiger) #55014
  * (SEMVER-MAJOR) V8: cherry-pick 0d5d6e71bbb0 (Yagiz Nizipli) #55014
  * (SEMVER-MAJOR) V8: cherry-pick 0c11feeeca4a (Michaël Zasso) #55014
  * (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #55014
  * (SEMVER-MAJOR) always define V8_NODISCARD as no-op (Michaël Zasso) #55014
  * (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) #55014
  * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #55014
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #55014
  * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #55014
  * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #55014
  * (SEMVER-MAJOR) update V8 to 13.0.245.25 (Michaël Zasso) #55014
  * (SEMVER-MAJOR) upgrade npm to 11.0.0 (npm team) #56274
  * (SEMVER-MAJOR) update undici to 7.0.0 (Node.js GitHub Bot) #56070
fs:
  * (SEMVER-MAJOR) remove ability to call truncate with fd (Yagiz Nizipli) #57567
  * (SEMVER-MAJOR) remove `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) #55862
  * (SEMVER-MAJOR) deprecate passing invalid types in `fs.existsSync` (Carlos Espa) #55753
  * (SEMVER-MAJOR) runtime deprecate `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) #49686
  * (SEMVER-MAJOR) remove `dirent.path` (Antoine du Hamel) #55548
lib:
  * (SEMVER-MAJOR) remove obsolete Cipher export (James M Snell) #57266
  * (SEMVER-MAJOR) unexpose six process bindings (Michaël Zasso) #57149
  * (SEMVER-MAJOR) make ALS default to AsyncContextFrame (Stephen Belanger) #55552
  * (SEMVER-MAJOR) runtime deprecate SlowBuffer (Rafael Gonzaga) #55175
net:
  * (SEMVER-MAJOR) make _setSimultaneousAccepts() end-of-life deprecated (Yagiz Nizipli) #57550
repl:
  * (SEMVER-MAJOR) runtime deprecate instantiating without new (Aviv Keller) #54869
src:
  * (SEMVER-MAJOR) update GetForegroundTaskRunner override (Etienne Pierre-doray) #55014
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 134 (Michaël Zasso) #55014
  * (SEMVER-MAJOR) drop --experimental-permission in favour of --permission (Rafael Gonzaga) #56240
  * (SEMVER-MAJOR) add async context frame to AsyncResource (Gerhard Stöbich) #56082
  * (SEMVER-MAJOR) nuke deprecated and un-used enum members in `OptionEnvvarSettings` (Juan José) #53079
stream:
  * (SEMVER-MAJOR) catch and forward error from dest.write (jakecastelli) #55270
test:
  * (SEMVER-MAJOR) disable fast API call count checks (Michaël Zasso) #55014
test_runner:
  * (SEMVER-MAJOR) remove promises returned by t.test() (Colin Ihrig) #56664
  * (SEMVER-MAJOR) remove promises returned by test() (Colin Ihrig) #56664
  * (SEMVER-MAJOR) automatically wait for subtests to finish (Colin Ihrig) #56664
timers:
  * (SEMVER-MAJOR) check for immediate instance in clearImmediate (Gürgün Dayıoğlu) #57069
  * (SEMVER-MAJOR) set several methods EOL (Yagiz Nizipli) #56966
tls:
  * (SEMVER-MAJOR) remove deprecated tls.createSecurePair (Jonas) #57361
  * (SEMVER-MAJOR) make server.prototype.setOptions end-of-life (Yagiz Nizipli) #57339
tools:
  * (SEMVER-MAJOR) update V8 gypfiles for 13.0 (Michaël Zasso) #55014
url:
  * (SEMVER-MAJOR) expose urlpattern as global (Jonas) #56950
  * (SEMVER-MAJOR) runtime deprecate url.parse (Yagiz Nizipli) #55017
zlib:
  * (SEMVER-MAJOR) deprecate classes usage without `new` (Yagiz Nizipli) #55718

PR-URL: #57609
RafaelGSS added a commit that referenced this pull request Apr 1, 2025
Semver-Major Commits:

buffer:
  * (SEMVER-MAJOR) make `buflen` in integer range (zhenweijin) #51821
build:
  * (SEMVER-MAJOR) bump supported macOS version to 13.5 (Michaël Zasso) #57115
  * (SEMVER-MAJOR) increase minimum Xcode version to 16.1 (Michaël Zasso) #56824
  * (SEMVER-MAJOR) link V8 with atomic library (Michaël Zasso) #55014
  * (SEMVER-MAJOR) remove support for ppc 32-bit (Michaël Zasso) #55014
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #55014
child_process:
  * (SEMVER-MAJOR) deprecate passing `args` to `spawn` and `execFile` (Daniel Venable) #57199
deps:
  * (SEMVER-MAJOR) V8: cherry-pick f915fa4c9f41 (Olivier Flückiger) #55014
  * (SEMVER-MAJOR) V8: cherry-pick 0d5d6e71bbb0 (Yagiz Nizipli) #55014
  * (SEMVER-MAJOR) V8: cherry-pick 0c11feeeca4a (Michaël Zasso) #55014
  * (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #55014
  * (SEMVER-MAJOR) always define V8_NODISCARD as no-op (Michaël Zasso) #55014
  * (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) #55014
  * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #55014
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #55014
  * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #55014
  * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #55014
  * (SEMVER-MAJOR) update V8 to 13.0.245.25 (Michaël Zasso) #55014
  * (SEMVER-MAJOR) upgrade npm to 11.0.0 (npm team) #56274
  * (SEMVER-MAJOR) update undici to 7.0.0 (Node.js GitHub Bot) #56070
fs:
  * (SEMVER-MAJOR) remove ability to call truncate with fd (Yagiz Nizipli) #57567
  * (SEMVER-MAJOR) remove `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) #55862
  * (SEMVER-MAJOR) deprecate passing invalid types in `fs.existsSync` (Carlos Espa) #55753
  * (SEMVER-MAJOR) runtime deprecate `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) #49686
  * (SEMVER-MAJOR) remove `dirent.path` (Antoine du Hamel) #55548
lib:
  * (SEMVER-MAJOR) remove obsolete Cipher export (James M Snell) #57266
  * (SEMVER-MAJOR) unexpose six process bindings (Michaël Zasso) #57149
  * (SEMVER-MAJOR) make ALS default to AsyncContextFrame (Stephen Belanger) #55552
  * (SEMVER-MAJOR) runtime deprecate SlowBuffer (Rafael Gonzaga) #55175
net:
  * (SEMVER-MAJOR) make _setSimultaneousAccepts() end-of-life deprecated (Yagiz Nizipli) #57550
repl:
  * (SEMVER-MAJOR) runtime deprecate instantiating without new (Aviv Keller) #54869
src:
  * (SEMVER-MAJOR) update GetForegroundTaskRunner override (Etienne Pierre-doray) #55014
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 134 (Michaël Zasso) #55014
  * (SEMVER-MAJOR) drop --experimental-permission in favour of --permission (Rafael Gonzaga) #56240
  * (SEMVER-MAJOR) add async context frame to AsyncResource (Gerhard Stöbich) #56082
  * (SEMVER-MAJOR) nuke deprecated and un-used enum members in `OptionEnvvarSettings` (Juan José) #53079
stream:
  * (SEMVER-MAJOR) catch and forward error from dest.write (jakecastelli) #55270
test:
  * (SEMVER-MAJOR) disable fast API call count checks (Michaël Zasso) #55014
test_runner:
  * (SEMVER-MAJOR) remove promises returned by t.test() (Colin Ihrig) #56664
  * (SEMVER-MAJOR) remove promises returned by test() (Colin Ihrig) #56664
  * (SEMVER-MAJOR) automatically wait for subtests to finish (Colin Ihrig) #56664
timers:
  * (SEMVER-MAJOR) check for immediate instance in clearImmediate (Gürgün Dayıoğlu) #57069
  * (SEMVER-MAJOR) set several methods EOL (Yagiz Nizipli) #56966
tls:
  * (SEMVER-MAJOR) remove deprecated tls.createSecurePair (Jonas) #57361
  * (SEMVER-MAJOR) make server.prototype.setOptions end-of-life (Yagiz Nizipli) #57339
tools:
  * (SEMVER-MAJOR) update V8 gypfiles for 13.0 (Michaël Zasso) #55014
url:
  * (SEMVER-MAJOR) expose urlpattern as global (Jonas) #56950
  * (SEMVER-MAJOR) runtime deprecate url.parse (Yagiz Nizipli) #55017
zlib:
  * (SEMVER-MAJOR) deprecate classes usage without `new` (Yagiz Nizipli) #55718

PR-URL: #57609
RafaelGSS added a commit that referenced this pull request Apr 10, 2025
Semver-Major Commits:

buffer:
  * (SEMVER-MAJOR) make `buflen` in integer range (zhenweijin) #51821
build:
  * (SEMVER-MAJOR) bump supported macOS version to 13.5 (Michaël Zasso) #57115
  * (SEMVER-MAJOR) increase minimum Xcode version to 16.1 (Michaël Zasso) #56824
  * (SEMVER-MAJOR) link V8 with atomic library (Michaël Zasso) #55014
  * (SEMVER-MAJOR) remove support for ppc 32-bit (Michaël Zasso) #55014
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #55014
child_process:
  * (SEMVER-MAJOR) deprecate passing `args` to `spawn` and `execFile` (Daniel Venable) #57199
deps:
  * (SEMVER-MAJOR) V8: cherry-pick f915fa4c9f41 (Olivier Flückiger) #55014
  * (SEMVER-MAJOR) V8: cherry-pick 0d5d6e71bbb0 (Yagiz Nizipli) #55014
  * (SEMVER-MAJOR) V8: cherry-pick 0c11feeeca4a (Michaël Zasso) #55014
  * (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #55014
  * (SEMVER-MAJOR) always define V8_NODISCARD as no-op (Michaël Zasso) #55014
  * (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) #55014
  * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #55014
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #55014
  * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #55014
  * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #55014
  * (SEMVER-MAJOR) update V8 to 13.0.245.25 (Michaël Zasso) #55014
  * (SEMVER-MAJOR) upgrade npm to 11.0.0 (npm team) #56274
  * (SEMVER-MAJOR) update undici to 7.0.0 (Node.js GitHub Bot) #56070
fs:
  * (SEMVER-MAJOR) remove ability to call truncate with fd (Yagiz Nizipli) #57567
  * (SEMVER-MAJOR) remove `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) #55862
  * (SEMVER-MAJOR) deprecate passing invalid types in `fs.existsSync` (Carlos Espa) #55753
  * (SEMVER-MAJOR) runtime deprecate `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) #49686
  * (SEMVER-MAJOR) remove `dirent.path` (Antoine du Hamel) #55548
lib:
  * (SEMVER-MAJOR) remove obsolete Cipher export (James M Snell) #57266
  * (SEMVER-MAJOR) unexpose six process bindings (Michaël Zasso) #57149
  * (SEMVER-MAJOR) make ALS default to AsyncContextFrame (Stephen Belanger) #55552
  * (SEMVER-MAJOR) runtime deprecate SlowBuffer (Rafael Gonzaga) #55175
net:
  * (SEMVER-MAJOR) make _setSimultaneousAccepts() end-of-life deprecated (Yagiz Nizipli) #57550
repl:
  * (SEMVER-MAJOR) runtime deprecate instantiating without new (Aviv Keller) #54869
src:
  * (SEMVER-MAJOR) update GetForegroundTaskRunner override (Etienne Pierre-doray) #55014
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 134 (Michaël Zasso) #55014
  * (SEMVER-MAJOR) drop --experimental-permission in favour of --permission (Rafael Gonzaga) #56240
  * (SEMVER-MAJOR) add async context frame to AsyncResource (Gerhard Stöbich) #56082
  * (SEMVER-MAJOR) nuke deprecated and un-used enum members in `OptionEnvvarSettings` (Juan José) #53079
stream:
  * (SEMVER-MAJOR) catch and forward error from dest.write (jakecastelli) #55270
test:
  * (SEMVER-MAJOR) disable fast API call count checks (Michaël Zasso) #55014
test_runner:
  * (SEMVER-MAJOR) remove promises returned by t.test() (Colin Ihrig) #56664
  * (SEMVER-MAJOR) remove promises returned by test() (Colin Ihrig) #56664
  * (SEMVER-MAJOR) automatically wait for subtests to finish (Colin Ihrig) #56664
timers:
  * (SEMVER-MAJOR) check for immediate instance in clearImmediate (Gürgün Dayıoğlu) #57069
  * (SEMVER-MAJOR) set several methods EOL (Yagiz Nizipli) #56966
tls:
  * (SEMVER-MAJOR) remove deprecated tls.createSecurePair (Jonas) #57361
  * (SEMVER-MAJOR) make server.prototype.setOptions end-of-life (Yagiz Nizipli) #57339
tools:
  * (SEMVER-MAJOR) update V8 gypfiles for 13.0 (Michaël Zasso) #55014
url:
  * (SEMVER-MAJOR) expose urlpattern as global (Jonas) #56950
  * (SEMVER-MAJOR) runtime deprecate url.parse (Yagiz Nizipli) #55017
zlib:
  * (SEMVER-MAJOR) deprecate classes usage without `new` (Yagiz Nizipli) #55718

PR-URL: #57609
RafaelGSS added a commit that referenced this pull request Apr 11, 2025
Semver-Major Commits:

buffer:
  * (SEMVER-MAJOR) make `buflen` in integer range (zhenweijin) #51821
build:
  * (SEMVER-MAJOR) bump supported macOS version to 13.5 (Michaël Zasso) #57115
  * (SEMVER-MAJOR) increase minimum Xcode version to 16.1 (Michaël Zasso) #56824
  * (SEMVER-MAJOR) link V8 with atomic library (Michaël Zasso) #55014
  * (SEMVER-MAJOR) remove support for ppc 32-bit (Michaël Zasso) #55014
  * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #55014
child_process:
  * (SEMVER-MAJOR) deprecate passing `args` to `spawn` and `execFile` (Daniel Venable) #57199
deps:
  * (SEMVER-MAJOR) V8: cherry-pick f915fa4c9f41 (Olivier Flückiger) #55014
  * (SEMVER-MAJOR) V8: cherry-pick 0d5d6e71bbb0 (Yagiz Nizipli) #55014
  * (SEMVER-MAJOR) V8: cherry-pick 0c11feeeca4a (Michaël Zasso) #55014
  * (SEMVER-MAJOR) define V8_PRESERVE_MOST as no-op on Windows (Stefan Stojanovic) #55014
  * (SEMVER-MAJOR) always define V8_NODISCARD as no-op (Michaël Zasso) #55014
  * (SEMVER-MAJOR) fix FP16 bitcasts.h (Stefan Stojanovic) #55014
  * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #55014
  * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #55014
  * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #55014
  * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #55014
  * (SEMVER-MAJOR) update V8 to 13.0.245.25 (Michaël Zasso) #55014
  * (SEMVER-MAJOR) upgrade npm to 11.0.0 (npm team) #56274
  * (SEMVER-MAJOR) update undici to 7.0.0 (Node.js GitHub Bot) #56070
fs:
  * (SEMVER-MAJOR) remove ability to call truncate with fd (Yagiz Nizipli) #57567
  * (SEMVER-MAJOR) deprecate passing invalid types in `fs.existsSync` (Carlos Espa) #55753
  * (SEMVER-MAJOR) runtime deprecate `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, `fs.X_OK` (Livia Medeiros) #49686
  * (SEMVER-MAJOR) remove `dirent.path` (Antoine du Hamel) #55548
lib:
  * (SEMVER-MAJOR) remove obsolete Cipher export (James M Snell) #57266
  * (SEMVER-MAJOR) unexpose six process bindings (Michaël Zasso) #57149
  * (SEMVER-MAJOR) make ALS default to AsyncContextFrame (Stephen Belanger) #55552
  * (SEMVER-MAJOR) runtime deprecate SlowBuffer (Rafael Gonzaga) #55175
net:
  * (SEMVER-MAJOR) make _setSimultaneousAccepts() end-of-life deprecated (Yagiz Nizipli) #57550
repl:
  * (SEMVER-MAJOR) runtime deprecate instantiating without new (Aviv Keller) #54869
src:
  * (SEMVER-MAJOR) update GetForegroundTaskRunner override (Etienne Pierre-doray) #55014
  * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 134 (Michaël Zasso) #55014
  * (SEMVER-MAJOR) drop --experimental-permission in favour of --permission (Rafael Gonzaga) #56240
  * (SEMVER-MAJOR) add async context frame to AsyncResource (Gerhard Stöbich) #56082
  * (SEMVER-MAJOR) nuke deprecated and un-used enum members in `OptionEnvvarSettings` (Juan José) #53079
stream:
  * (SEMVER-MAJOR) catch and forward error from dest.write (jakecastelli) #55270
test:
  * (SEMVER-MAJOR) disable fast API call count checks (Michaël Zasso) #55014
test_runner:
  * (SEMVER-MAJOR) remove promises returned by t.test() (Colin Ihrig) #56664
  * (SEMVER-MAJOR) remove promises returned by test() (Colin Ihrig) #56664
  * (SEMVER-MAJOR) automatically wait for subtests to finish (Colin Ihrig) #56664
timers:
  * (SEMVER-MAJOR) check for immediate instance in clearImmediate (Gürgün Dayıoğlu) #57069
  * (SEMVER-MAJOR) set several methods EOL (Yagiz Nizipli) #56966
tls:
  * (SEMVER-MAJOR) remove deprecated tls.createSecurePair (Jonas) #57361
  * (SEMVER-MAJOR) make server.prototype.setOptions end-of-life (Yagiz Nizipli) #57339
tools:
  * (SEMVER-MAJOR) update V8 gypfiles for 13.0 (Michaël Zasso) #55014
url:
  * (SEMVER-MAJOR) expose urlpattern as global (Jonas) #56950
  * (SEMVER-MAJOR) runtime deprecate url.parse (Yagiz Nizipli) #55017
zlib:
  * (SEMVER-MAJOR) deprecate classes usage without `new` (Yagiz Nizipli) #55718

PR-URL: #57609
Signed-off-by: RafaelGSS <rafael.nunu@hotmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
author ready PRs that have at least one approval, no pending requests for changes, and a CI started. commit-queue-rebase Add this label to allow the Commit Queue to land a PR in several commits. semver-major PRs that contain breaking changes and should be released in the next major version. test_runner Issues and PRs related to the test runner subsystem.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

node:test APIs returning Promises clashes with no-floating-promises lint rule