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

src: throw DataCloneError on transfering untransferable objects #47604

Merged
merged 3 commits into from
May 5, 2023

Conversation

legendecas
Copy link
Member

The HTML StructuredSerializeWithTransfer algorithm defines that when
an untransferable object is in the transfer list, a DataCloneError is
thrown.
An array buffer that is already transferred is also considered as
untransferable.

The following script throws in the browser but succeeds in Node.js:

const ab = new ArrayBuffer(10)
const first = structuredClone(ab, { transfer: [ab] })
const second = structuredClone(ab, { transfer: [ab] })

The motivation of the PR is throwing an error prominently to avoid copy buffer
silently when it is expected to be transferred:

const buffer = Buffer.allocUnsafe(10)
// this should throw instead of falling back to copying
structuredClone(buffer, { transfer: [buffer.buffer] })

@nodejs-github-bot nodejs-github-bot added c++ Issues and PRs that require attention from people who are familiar with C++. needs-ci PRs that need a full CI run. labels Apr 18, 2023
@legendecas legendecas force-pushed the webidl/untransferable branch from c2fd661 to d60432b Compare April 18, 2023 07:18
doc/api/worker_threads.md Outdated Show resolved Hide resolved
@legendecas legendecas added the semver-major PRs that contain breaking changes and should be released in the next major version. label Apr 18, 2023
@legendecas legendecas force-pushed the webidl/untransferable branch 2 times, most recently from b59b61c to 577d73b Compare April 18, 2023 15:33
The HTML StructuredSerializeWithTransfer algorithm defines that when
an untransferable object is in the transfer list, a DataCloneError is
thrown.
An array buffer that is already transferred is also considered as
untransferable.
@legendecas legendecas force-pushed the webidl/untransferable branch from 577d73b to 9112a31 Compare April 24, 2023 03:27
@legendecas legendecas added the request-ci Add this label to start a Jenkins CI on a PR. label Apr 24, 2023
@legendecas
Copy link
Member Author

Rebased and conflicts resolved. @nodejs/workers would you mind taking a look at this? Thank you!

@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Apr 24, 2023
@nodejs-github-bot
Copy link
Collaborator

lib/internal/buffer.js Outdated Show resolved Hide resolved
@legendecas legendecas added the request-ci Add this label to start a Jenkins CI on a PR. label Apr 27, 2023
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Apr 27, 2023
@nodejs-github-bot
Copy link
Collaborator

@legendecas legendecas added the author ready PRs that have at least one approval, no pending requests for changes, and a CI started. label Apr 28, 2023
@nodejs-github-bot
Copy link
Collaborator

@nodejs-github-bot
Copy link
Collaborator

@nodejs-github-bot
Copy link
Collaborator

@legendecas legendecas added the commit-queue Add this label to land a pull request using GitHub Actions. label May 5, 2023
@nodejs-github-bot nodejs-github-bot removed the commit-queue Add this label to land a pull request using GitHub Actions. label May 5, 2023
@nodejs-github-bot nodejs-github-bot merged commit 6454973 into nodejs:main May 5, 2023
@nodejs-github-bot
Copy link
Collaborator

Landed in 6454973

@legendecas legendecas deleted the webidl/untransferable branch May 5, 2023 13:25
RafaelGSS added a commit that referenced this pull request Sep 26, 2023
Notable Changes:

TODO

Semver-Major Commits:

* (SEMVER-MAJOR) bump supported macOS and Xcode versions (Michaël Zasso) #49164
* (SEMVER-MAJOR) do not overwrite _writableState.defaultEncoding (Tobias Nießen) #49140
* (SEMVER-MAJOR) update llhttp to 9.1.2 (Paolo Insogna) #48981
* (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) #47653
* (SEMVER-MAJOR) mark URL/URLSearchParams as uncloneable and untransferable (Chengzhong Wu) #47497
* (SEMVER-MAJOR) remove aix directory case for package reader (Yagiz Nizipli) #48605
* (SEMVER-MAJOR) add `navigator.hardwareConcurrency` (Yagiz Nizipli) #47769
* (SEMVER-MAJOR) runtime deprecate punycode (Yagiz Nizipli) #47202
* (SEMVER-MAJOR) harmonize error code between ESM and CJS (Antoine du Hamel) #48606
* (SEMVER-MAJOR) do not treat `server.maxConnections=0` as `Infinity` (ignoramous) #48276
* (SEMVER-MAJOR) only defer _final call when connecting (Jason Zhang) #47385
* (SEMVER-MAJOR) rename internal NAPI_VERSION definition (Chengzhong Wu) #48501
* (SEMVER-MAJOR) throw DataCloneError on transfering untransferable objects (Chengzhong Wu) #47604
* (SEMVER-MAJOR) use private properties for strategies (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) use private properties for encoding (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) use private properties for compression (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) support passing globs (Moshe Atlow) #47653
* (SEMVER-MAJOR) runtime deprecate `promisify`-ing a function returning a `Promise` (Antoine du Hamel) #49609

PR-URL: #49870
Co-authored-by: Michaël Zasso <targos@protonmail.com>
RafaelGSS added a commit that referenced this pull request Oct 9, 2023
Notable Changes:

TODO

Semver-Major Commits:

* (SEMVER-MAJOR) bump supported macOS and Xcode versions (Michaël Zasso) #49164
* (SEMVER-MAJOR) do not overwrite _writableState.defaultEncoding (Tobias Nießen) #49140
* (SEMVER-MAJOR) update llhttp to 9.1.2 (Paolo Insogna) #48981
* (SEMVER-MAJOR) validate options of `on` and `once` (Deokjin Kim) #46018
* (SEMVER-MAJOR) adjust `position` validation in reading methods (Livia Medeiros) #42835
* (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) #47653
* (SEMVER-MAJOR) mark URL/URLSearchParams as uncloneable and untransferable (Chengzhong Wu) #47497
* (SEMVER-MAJOR) remove aix directory case for package reader (Yagiz Nizipli) #48605
* (SEMVER-MAJOR) add `navigator.hardwareConcurrency` (Yagiz Nizipli) #47769
* (SEMVER-MAJOR) runtime deprecate punycode (Yagiz Nizipli) #47202
* (SEMVER-MAJOR) harmonize error code between ESM and CJS (Antoine du Hamel) #48606
* (SEMVER-MAJOR) do not treat `server.maxConnections=0` as `Infinity` (ignoramous) #48276
* (SEMVER-MAJOR) only defer _final call when connecting (Jason Zhang) #47385
* (SEMVER-MAJOR) rename internal NAPI_VERSION definition (Chengzhong Wu) #48501
* (SEMVER-MAJOR) throw DOMException on cloning non-serializable objects (Chengzhong Wu) #47839
* (SEMVER-MAJOR) throw DataCloneError on transfering untransferable objects (Chengzhong Wu) #47604
* (SEMVER-MAJOR) use private properties for strategies (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) use private properties for encoding (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) use private properties for compression (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) disallow array in `run` options (Raz Luvaton) #49935
* (SEMVER-MAJOR) support passing globs (Moshe Atlow) #47653
* (SEMVER-MAJOR) use `validateNumber` for `options.minDHSize` (Deokjin Kim) #49973
* (SEMVER-MAJOR) use validateFunction for `options.checkServerIdentity` (Deokjin Kim) #49896
* (SEMVER-MAJOR) runtime deprecate `promisify`-ing a function returning a `Promise` (Antoine du Hamel) #49609
* (SEMVER-MAJOR) freeze `dependencySpecifiers` array (Antoine du Hamel) #49720

PR-URL: #49870
Co-authored-by: Michaël Zasso <targos@protonmail.com>
RafaelGSS added a commit to RafaelGSS/node that referenced this pull request Oct 9, 2023
Notable Changes:

doc:
  * promote fetch/webstreams from experimental to stable (Steven) nodejs#45684
esm:
  * --experimental-default-type flag to flip module defaults (Geoffrey Booth) nodejs#49869
  * remove `globalPreload` hook (superseded by `initialize`) (Jacob Smith) nodejs#49144
fs:
  * add flush option to writeFile() functions (Colin Ihrig) nodejs#50009
  * (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) nodejs#47653
lib:
  * (SEMVER-MINOR) add WebSocket client (Matthew Aitken) nodejs#49830
stream:
  * optimize Writable (Robert Nagy) nodejs#50012
test_runner:
  * (SEMVER-MAJOR) support passing globs (Moshe Atlow) nodejs#47653
vm:
  * use default HDO when importModuleDynamically is not set (Joyee Cheung) nodejs#49950

Semver-Major Commits:

* (SEMVER-MAJOR) bump supported macOS and Xcode versions (Michaël Zasso) nodejs#49164
* (SEMVER-MAJOR) do not overwrite _writableState.defaultEncoding (Tobias Nießen) nodejs#49140
* (SEMVER-MAJOR) update llhttp to 9.1.2 (Paolo Insogna) nodejs#48981
* (SEMVER-MAJOR) validate options of `on` and `once` (Deokjin Kim) nodejs#46018
* (SEMVER-MAJOR) adjust `position` validation in reading methods (Livia Medeiros) nodejs#42835
* (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) nodejs#47653
* (SEMVER-MAJOR) mark URL/URLSearchParams as uncloneable and untransferable (Chengzhong Wu) nodejs#47497
* (SEMVER-MAJOR) remove aix directory case for package reader (Yagiz Nizipli) nodejs#48605
* (SEMVER-MAJOR) add `navigator.hardwareConcurrency` (Yagiz Nizipli) nodejs#47769
* (SEMVER-MAJOR) runtime deprecate punycode (Yagiz Nizipli) nodejs#47202
* (SEMVER-MAJOR) harmonize error code between ESM and CJS (Antoine du Hamel) nodejs#48606
* (SEMVER-MAJOR) do not treat `server.maxConnections=0` as `Infinity` (ignoramous) nodejs#48276
* (SEMVER-MAJOR) only defer _final call when connecting (Jason Zhang) nodejs#47385
* (SEMVER-MAJOR) rename internal NAPI_VERSION definition (Chengzhong Wu) nodejs#48501
* (SEMVER-MAJOR) throw DOMException on cloning non-serializable objects (Chengzhong Wu) nodejs#47839
* (SEMVER-MAJOR) throw DataCloneError on transfering untransferable objects (Chengzhong Wu) nodejs#47604
* (SEMVER-MAJOR) use private properties for strategies (Yagiz Nizipli) nodejs#47218
* (SEMVER-MAJOR) use private properties for encoding (Yagiz Nizipli) nodejs#47218
* (SEMVER-MAJOR) use private properties for compression (Yagiz Nizipli) nodejs#47218
* (SEMVER-MAJOR) disallow array in `run` options (Raz Luvaton) nodejs#49935
* (SEMVER-MAJOR) support passing globs (Moshe Atlow) nodejs#47653
* (SEMVER-MAJOR) use `validateNumber` for `options.minDHSize` (Deokjin Kim) nodejs#49973
* (SEMVER-MAJOR) use validateFunction for `options.checkServerIdentity` (Deokjin Kim) nodejs#49896
* (SEMVER-MAJOR) runtime deprecate `promisify`-ing a function returning a `Promise` (Antoine du Hamel) nodejs#49609
* (SEMVER-MAJOR) freeze `dependencySpecifiers` array (Antoine du Hamel) nodejs#49720

PR-URL: nodejs#49870
Co-authored-by: Michaël Zasso <targos@protonmail.com>
RafaelGSS added a commit to RafaelGSS/node that referenced this pull request Oct 9, 2023
Notable Changes:

doc:
  * promote fetch/webstreams from experimental to stable (Steven) nodejs#45684
esm:
  * --experimental-default-type flag to flip module defaults (Geoffrey Booth) nodejs#49869
  * remove `globalPreload` hook (superseded by `initialize`) (Jacob Smith) nodejs#49144
fs:
  * add flush option to writeFile() functions (Colin Ihrig) nodejs#50009
  * (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) nodejs#47653
lib:
  * (SEMVER-MINOR) add WebSocket client (Matthew Aitken) nodejs#49830
stream:
  * optimize Writable (Robert Nagy) nodejs#50012
test_runner:
  * (SEMVER-MAJOR) support passing globs (Moshe Atlow) nodejs#47653
vm:
  * use default HDO when importModuleDynamically is not set (Joyee Cheung) nodejs#49950

Semver-Major Commits:

* (SEMVER-MAJOR) bump supported macOS and Xcode versions (Michaël Zasso) nodejs#49164
* (SEMVER-MAJOR) do not overwrite _writableState.defaultEncoding (Tobias Nießen) nodejs#49140
* (SEMVER-MAJOR) update llhttp to 9.1.2 (Paolo Insogna) nodejs#48981
* (SEMVER-MAJOR) validate options of `on` and `once` (Deokjin Kim) nodejs#46018
* (SEMVER-MAJOR) adjust `position` validation in reading methods (Livia Medeiros) nodejs#42835
* (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) nodejs#47653
* (SEMVER-MAJOR) mark URL/URLSearchParams as uncloneable and untransferable (Chengzhong Wu) nodejs#47497
* (SEMVER-MAJOR) remove aix directory case for package reader (Yagiz Nizipli) nodejs#48605
* (SEMVER-MAJOR) add `navigator.hardwareConcurrency` (Yagiz Nizipli) nodejs#47769
* (SEMVER-MAJOR) runtime deprecate punycode (Yagiz Nizipli) nodejs#47202
* (SEMVER-MAJOR) harmonize error code between ESM and CJS (Antoine du Hamel) nodejs#48606
* (SEMVER-MAJOR) do not treat `server.maxConnections=0` as `Infinity` (ignoramous) nodejs#48276
* (SEMVER-MAJOR) only defer _final call when connecting (Jason Zhang) nodejs#47385
* (SEMVER-MAJOR) rename internal NAPI_VERSION definition (Chengzhong Wu) nodejs#48501
* (SEMVER-MAJOR) throw DOMException on cloning non-serializable objects (Chengzhong Wu) nodejs#47839
* (SEMVER-MAJOR) throw DataCloneError on transfering untransferable objects (Chengzhong Wu) nodejs#47604
* (SEMVER-MAJOR) use private properties for strategies (Yagiz Nizipli) nodejs#47218
* (SEMVER-MAJOR) use private properties for encoding (Yagiz Nizipli) nodejs#47218
* (SEMVER-MAJOR) use private properties for compression (Yagiz Nizipli) nodejs#47218
* (SEMVER-MAJOR) disallow array in `run` options (Raz Luvaton) nodejs#49935
* (SEMVER-MAJOR) support passing globs (Moshe Atlow) nodejs#47653
* (SEMVER-MAJOR) use `validateNumber` for `options.minDHSize` (Deokjin Kim) nodejs#49973
* (SEMVER-MAJOR) use validateFunction for `options.checkServerIdentity` (Deokjin Kim) nodejs#49896
* (SEMVER-MAJOR) runtime deprecate `promisify`-ing a function returning a `Promise` (Antoine du Hamel) nodejs#49609
* (SEMVER-MAJOR) freeze `dependencySpecifiers` array (Antoine du Hamel) nodejs#49720

PR-URL: nodejs#49870
Co-authored-by: Michaël Zasso <targos@protonmail.com>
RafaelGSS added a commit that referenced this pull request Oct 10, 2023
Notable Changes:

doc:
  * promote fetch/webstreams from experimental to stable (Steven) #45684
esm:
  * --experimental-default-type flag to flip module defaults (Geoffrey Booth) #49869
  * remove `globalPreload` hook (superseded by `initialize`) (Jacob Smith) #49144
fs:
  * add flush option to writeFile() functions (Colin Ihrig) #50009
  * (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) #47653
lib:
  * (SEMVER-MINOR) add WebSocket client (Matthew Aitken) #49830
stream:
  * optimize Writable (Robert Nagy) #50012
test_runner:
  * (SEMVER-MAJOR) support passing globs (Moshe Atlow) #47653
vm:
  * use default HDO when importModuleDynamically is not set (Joyee Cheung) #49950

Semver-Major Commits:

* (SEMVER-MAJOR) bump supported macOS and Xcode versions (Michaël Zasso) #49164
* (SEMVER-MAJOR) do not overwrite _writableState.defaultEncoding (Tobias Nießen) #49140
* (SEMVER-MAJOR) update llhttp to 9.1.2 (Paolo Insogna) #48981
* (SEMVER-MAJOR) validate options of `on` and `once` (Deokjin Kim) #46018
* (SEMVER-MAJOR) adjust `position` validation in reading methods (Livia Medeiros) #42835
* (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) #47653
* (SEMVER-MAJOR) mark URL/URLSearchParams as uncloneable and untransferable (Chengzhong Wu) #47497
* (SEMVER-MAJOR) remove aix directory case for package reader (Yagiz Nizipli) #48605
* (SEMVER-MAJOR) add `navigator.hardwareConcurrency` (Yagiz Nizipli) #47769
* (SEMVER-MAJOR) runtime deprecate punycode (Yagiz Nizipli) #47202
* (SEMVER-MAJOR) harmonize error code between ESM and CJS (Antoine du Hamel) #48606
* (SEMVER-MAJOR) do not treat `server.maxConnections=0` as `Infinity` (ignoramous) #48276
* (SEMVER-MAJOR) only defer _final call when connecting (Jason Zhang) #47385
* (SEMVER-MAJOR) rename internal NAPI_VERSION definition (Chengzhong Wu) #48501
* (SEMVER-MAJOR) throw DOMException on cloning non-serializable objects (Chengzhong Wu) #47839
* (SEMVER-MAJOR) throw DataCloneError on transfering untransferable objects (Chengzhong Wu) #47604
* (SEMVER-MAJOR) use private properties for strategies (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) use private properties for encoding (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) use private properties for compression (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) disallow array in `run` options (Raz Luvaton) #49935
* (SEMVER-MAJOR) support passing globs (Moshe Atlow) #47653
* (SEMVER-MAJOR) use `validateNumber` for `options.minDHSize` (Deokjin Kim) #49973
* (SEMVER-MAJOR) use validateFunction for `options.checkServerIdentity` (Deokjin Kim) #49896
* (SEMVER-MAJOR) runtime deprecate `promisify`-ing a function returning a `Promise` (Antoine du Hamel) #49609
* (SEMVER-MAJOR) freeze `dependencySpecifiers` array (Antoine du Hamel) #49720

PR-URL: #49870
Co-authored-by: Michaël Zasso <targos@protonmail.com>
RafaelGSS added a commit that referenced this pull request Oct 10, 2023
Notable Changes:

doc:
  * promote fetch/webstreams from experimental to stable (Steven) #45684
esm:
  * --experimental-default-type flag to flip module defaults (Geoffrey Booth) #49869
  * remove `globalPreload` hook (superseded by `initialize`) (Jacob Smith) #49144
fs:
  * add flush option to writeFile() functions (Colin Ihrig) #50009
  * (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) #47653
lib:
  * (SEMVER-MINOR) add WebSocket client (Matthew Aitken) #49830
stream:
  * optimize Writable (Robert Nagy) #50012
test_runner:
  * (SEMVER-MAJOR) support passing globs (Moshe Atlow) #47653
vm:
  * use default HDO when importModuleDynamically is not set (Joyee Cheung) #49950

Semver-Major Commits:

* (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #49639
* (SEMVER-MAJOR) drop support for Visual Studio 2019 (Michaël Zasso) #49051
* (SEMVER-MAJOR) bump supported macOS and Xcode versions (Michaël Zasso) #49164
* (SEMVER-MAJOR) do not overwrite _writableState.defaultEncoding (Tobias Nießen) #49140
* (SEMVER-MAJOR) bump minimum ICU version to 73 (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick 8ec2651fbdd8 (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick 89b3702c92b0 (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick de9a5de2274f (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick b5b5d6c31bb0 (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick 93b1a74cbc9b (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick 1a3ecc2483b2 (Michaël Zasso) #49639
* (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #49639
* (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #49639
* (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #49639
* (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #49639
* (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #49639
* (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 to 11.8.172.13 (Michaël Zasso) #49639
* (SEMVER-MAJOR) update llhttp to 9.1.2 (Paolo Insogna) #48981
* (SEMVER-MAJOR) validate options of `on` and `once` (Deokjin Kim) #46018
* (SEMVER-MAJOR) adjust `position` validation in reading methods (Livia Medeiros) #42835
* (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) #47653
* (SEMVER-MAJOR) update usage of always on Atomics API (Michaël Zasso) #49639
* (SEMVER-MAJOR) mark URL/URLSearchParams as uncloneable and untransferable (Chengzhong Wu) #47497
* (SEMVER-MAJOR) remove aix directory case for package reader (Yagiz Nizipli) #48605
* (SEMVER-MAJOR) add `navigator.hardwareConcurrency` (Yagiz Nizipli) #47769
* (SEMVER-MAJOR) runtime deprecate punycode (Yagiz Nizipli) #47202
* (SEMVER-MAJOR) harmonize error code between ESM and CJS (Antoine du Hamel) #48606
* (SEMVER-MAJOR) do not treat `server.maxConnections=0` as `Infinity` (ignoramous) #48276
* (SEMVER-MAJOR) only defer _final call when connecting (Jason Zhang) #47385
* (SEMVER-MAJOR) rename internal NAPI_VERSION definition (Chengzhong Wu) #48501
* (SEMVER-MAJOR) update NODE_MODULE_VERSION to 120 (Michaël Zasso) #49639
* (SEMVER-MAJOR) throw DOMException on cloning non-serializable objects (Chengzhong Wu) #47839
* (SEMVER-MAJOR) throw DataCloneError on transfering untransferable objects (Chengzhong Wu) #47604
* (SEMVER-MAJOR) use private properties for strategies (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) use private properties for encoding (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) use private properties for compression (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) skip v8-updates/test-linux-perf (Michaël Zasso) #49639
* (SEMVER-MAJOR) skip test-tick-processor-arguments on SmartOS (Michaël Zasso) #49639
* (SEMVER-MAJOR) adapt REPL test to V8 changes (Michaël Zasso) #49639
* (SEMVER-MAJOR) adapt test-fs-write to V8 internal changes (Michaël Zasso) #49639
* (SEMVER-MAJOR) update flag to disable SharedArrayBuffer (Michaël Zasso) #49639
* (SEMVER-MAJOR) adapt debugger tests to V8 11.4 (Philip Pfaffe) #49639
* (SEMVER-MAJOR) disallow array in `run` options (Raz Luvaton) #49935
* (SEMVER-MAJOR) support passing globs (Moshe Atlow) #47653
* (SEMVER-MAJOR) use `validateNumber` for `options.minDHSize` (Deokjin Kim) #49973
* (SEMVER-MAJOR) use validateFunction for `options.checkServerIdentity` (Deokjin Kim) #49896
* (SEMVER-MAJOR) add new V8 headers to distribution (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 gypfiles for 11.8 (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 gypfiles for 11.7 (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 gypfiles for 11.6 (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 gypfiles for 11.5 (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 gypfiles for 11.4 (Michaël Zasso) #49639
* (SEMVER-MAJOR) runtime deprecate `promisify`-ing a function returning a `Promise` (Antoine du Hamel) #49609
* (SEMVER-MAJOR) freeze `dependencySpecifiers` array (Antoine du Hamel) #49720

PR-URL: #49870
Co-authored-by: Michaël Zasso <targos@protonmail.com>
RafaelGSS added a commit that referenced this pull request Oct 10, 2023
Notable Changes:

doc:
  * promote fetch/webstreams from experimental to stable (Steven) #45684
esm:
  * --experimental-default-type flag to flip module defaults (Geoffrey Booth) #49869
  * remove `globalPreload` hook (superseded by `initialize`) (Jacob Smith) #49144
fs:
  * add flush option to writeFile() functions (Colin Ihrig) #50009
  * (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) #47653
lib:
  * (SEMVER-MINOR) add WebSocket client (Matthew Aitken) #49830
stream:
  * optimize Writable (Robert Nagy) #50012
test_runner:
  * (SEMVER-MAJOR) support passing globs (Moshe Atlow) #47653
vm:
  * use default HDO when importModuleDynamically is not set (Joyee Cheung) #49950

Semver-Major Commits:

* (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #49639
* (SEMVER-MAJOR) drop support for Visual Studio 2019 (Michaël Zasso) #49051
* (SEMVER-MAJOR) bump supported macOS and Xcode versions (Michaël Zasso) #49164
* (SEMVER-MAJOR) do not overwrite _writableState.defaultEncoding (Tobias Nießen) #49140
* (SEMVER-MAJOR) bump minimum ICU version to 73 (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick 8ec2651fbdd8 (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick 89b3702c92b0 (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick de9a5de2274f (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick b5b5d6c31bb0 (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick 93b1a74cbc9b (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick 1a3ecc2483b2 (Michaël Zasso) #49639
* (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #49639
* (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #49639
* (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #49639
* (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #49639
* (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #49639
* (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 to 11.8.172.13 (Michaël Zasso) #49639
* (SEMVER-MAJOR) update llhttp to 9.1.2 (Paolo Insogna) #48981
* (SEMVER-MAJOR) validate options of `on` and `once` (Deokjin Kim) #46018
* (SEMVER-MAJOR) adjust `position` validation in reading methods (Livia Medeiros) #42835
* (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) #47653
* (SEMVER-MAJOR) update usage of always on Atomics API (Michaël Zasso) #49639
* (SEMVER-MAJOR) mark URL/URLSearchParams as uncloneable and untransferable (Chengzhong Wu) #47497
* (SEMVER-MAJOR) remove aix directory case for package reader (Yagiz Nizipli) #48605
* (SEMVER-MAJOR) add `navigator.hardwareConcurrency` (Yagiz Nizipli) #47769
* (SEMVER-MAJOR) runtime deprecate punycode (Yagiz Nizipli) #47202
* (SEMVER-MAJOR) harmonize error code between ESM and CJS (Antoine du Hamel) #48606
* (SEMVER-MAJOR) do not treat `server.maxConnections=0` as `Infinity` (ignoramous) #48276
* (SEMVER-MAJOR) only defer _final call when connecting (Jason Zhang) #47385
* (SEMVER-MAJOR) rename internal NAPI_VERSION definition (Chengzhong Wu) #48501
* (SEMVER-MAJOR) update NODE_MODULE_VERSION to 120 (Michaël Zasso) #49639
* (SEMVER-MAJOR) throw DOMException on cloning non-serializable objects (Chengzhong Wu) #47839
* (SEMVER-MAJOR) throw DataCloneError on transfering untransferable objects (Chengzhong Wu) #47604
* (SEMVER-MAJOR) use private properties for strategies (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) use private properties for encoding (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) use private properties for compression (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) skip v8-updates/test-linux-perf (Michaël Zasso) #49639
* (SEMVER-MAJOR) skip test-tick-processor-arguments on SmartOS (Michaël Zasso) #49639
* (SEMVER-MAJOR) adapt REPL test to V8 changes (Michaël Zasso) #49639
* (SEMVER-MAJOR) adapt test-fs-write to V8 internal changes (Michaël Zasso) #49639
* (SEMVER-MAJOR) update flag to disable SharedArrayBuffer (Michaël Zasso) #49639
* (SEMVER-MAJOR) adapt debugger tests to V8 11.4 (Philip Pfaffe) #49639
* (SEMVER-MAJOR) disallow array in `run` options (Raz Luvaton) #49935
* (SEMVER-MAJOR) support passing globs (Moshe Atlow) #47653
* (SEMVER-MAJOR) use `validateNumber` for `options.minDHSize` (Deokjin Kim) #49973
* (SEMVER-MAJOR) use validateFunction for `options.checkServerIdentity` (Deokjin Kim) #49896
* (SEMVER-MAJOR) add new V8 headers to distribution (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 gypfiles for 11.8 (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 gypfiles for 11.7 (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 gypfiles for 11.6 (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 gypfiles for 11.5 (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 gypfiles for 11.4 (Michaël Zasso) #49639
* (SEMVER-MAJOR) runtime deprecate `promisify`-ing a function returning a `Promise` (Antoine du Hamel) #49609
* (SEMVER-MAJOR) freeze `dependencySpecifiers` array (Antoine du Hamel) #49720

PR-URL: #49870
Co-authored-by: Michaël Zasso <targos@protonmail.com>
RafaelGSS added a commit that referenced this pull request Oct 15, 2023
Notable Changes:

doc:
  * promote fetch/webstreams from experimental to stable (Steven) #45684
esm:
  * use import attributes instead of import assertions (Antoine du Hamel) #50140
  * --experimental-default-type flag to flip module defaults (Geoffrey Booth) #49869
  * remove `globalPreload` hook (superseded by `initialize`) (Jacob Smith) #49144
fs:
  * add flush option to writeFile() functions (Colin Ihrig) #50009
  * (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) #47653
http:
  * (SEMVER-MAJOR) reduce parts in chunked response when corking (Robert Nagy) #50167
lib:
  * (SEMVER-MINOR) add WebSocket client (Matthew Aitken) #49830
stream:
  * optimize Writable (Robert Nagy) #50012
test_runner:
  * (SEMVER-MAJOR) support passing globs (Moshe Atlow) #47653
vm:
  * use default HDO when importModuleDynamically is not set (Joyee Cheung) #49950

Semver-Major Commits:

* (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #49639
* (SEMVER-MAJOR) drop support for Visual Studio 2019 (Michaël Zasso) #49051
* (SEMVER-MAJOR) bump supported macOS and Xcode versions (Michaël Zasso) #49164
* (SEMVER-MAJOR) do not overwrite _writableState.defaultEncoding (Tobias Nießen) #49140
* (SEMVER-MAJOR) bump minimum ICU version to 73 (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick 8ec2651fbdd8 (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick 89b3702c92b0 (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick de9a5de2274f (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick b5b5d6c31bb0 (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick 93b1a74cbc9b (Michaël Zasso) #49639
* (SEMVER-MAJOR) V8: cherry-pick 1a3ecc2483b2 (Michaël Zasso) #49639
* (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #49639
* (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #49639
* (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #49639
* (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #49639
* (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #49639
* (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 to 11.8.172.13 (Michaël Zasso) #49639
* (SEMVER-MAJOR) update llhttp to 9.1.2 (Paolo Insogna) #48981
* (SEMVER-MAJOR) validate options of `on` and `once` (Deokjin Kim) #46018
* (SEMVER-MAJOR) adjust `position` validation in reading methods (Livia Medeiros) #42835
* (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) #47653
* (SEMVER-MAJOR) reduce parts in chunked response when corking (Robert Nagy) #50167
* (SEMVER-MAJOR) update usage of always on Atomics API (Michaël Zasso) #49639
* (SEMVER-MAJOR) mark URL/URLSearchParams as uncloneable and untransferable (Chengzhong Wu) #47497
* (SEMVER-MAJOR) remove aix directory case for package reader (Yagiz Nizipli) #48605
* (SEMVER-MAJOR) add `navigator.hardwareConcurrency` (Yagiz Nizipli) #47769
* (SEMVER-MAJOR) runtime deprecate punycode (Yagiz Nizipli) #47202
* (SEMVER-MAJOR) harmonize error code between ESM and CJS (Antoine du Hamel) #48606
* (SEMVER-MAJOR) do not treat `server.maxConnections=0` as `Infinity` (ignoramous) #48276
* (SEMVER-MAJOR) only defer _final call when connecting (Jason Zhang) #47385
* (SEMVER-MAJOR) rename internal NAPI_VERSION definition (Chengzhong Wu) #48501
* (SEMVER-MAJOR) update NODE_MODULE_VERSION to 120 (Michaël Zasso) #49639
* (SEMVER-MAJOR) throw DOMException on cloning non-serializable objects (Chengzhong Wu) #47839
* (SEMVER-MAJOR) throw DataCloneError on transfering untransferable objects (Chengzhong Wu) #47604
* (SEMVER-MAJOR) use private properties for strategies (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) use private properties for encoding (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) use private properties for compression (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) skip v8-updates/test-linux-perf (Michaël Zasso) #49639
* (SEMVER-MAJOR) skip test-tick-processor-arguments on SmartOS (Michaël Zasso) #49639
* (SEMVER-MAJOR) adapt REPL test to V8 changes (Michaël Zasso) #49639
* (SEMVER-MAJOR) adapt test-fs-write to V8 internal changes (Michaël Zasso) #49639
* (SEMVER-MAJOR) update flag to disable SharedArrayBuffer (Michaël Zasso) #49639
* (SEMVER-MAJOR) adapt debugger tests to V8 11.4 (Philip Pfaffe) #49639
* (SEMVER-MAJOR) disallow array in `run` options (Raz Luvaton) #49935
* (SEMVER-MAJOR) support passing globs (Moshe Atlow) #47653
* (SEMVER-MAJOR) use `validateNumber` for `options.minDHSize` (Deokjin Kim) #49973
* (SEMVER-MAJOR) use validateFunction for `options.checkServerIdentity` (Deokjin Kim) #49896
* (SEMVER-MAJOR) add new V8 headers to distribution (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 gypfiles for 11.8 (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 gypfiles for 11.7 (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 gypfiles for 11.6 (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 gypfiles for 11.5 (Michaël Zasso) #49639
* (SEMVER-MAJOR) update V8 gypfiles for 11.4 (Michaël Zasso) #49639
* (SEMVER-MAJOR) runtime deprecate `promisify`-ing a function returning a `Promise` (Antoine du Hamel) #49609
* (SEMVER-MAJOR) freeze `dependencySpecifiers` array (Antoine du Hamel) #49720

PR-URL: #49870
Co-authored-by: Michaël Zasso <targos@protonmail.com>
RafaelGSS added a commit that referenced this pull request Oct 17, 2023
Notable Changes:

doc:
  * promote fetch/webstreams from experimental to stable (Steven) #45684
esm:
  * use import attributes instead of import assertions (Antoine du Hamel) #50140
  * --experimental-default-type flag to flip module defaults (Geoffrey Booth) #49869
  * remove `globalPreload` hook (superseded by `initialize`) (Jacob Smith) #49144
fs:
  * add flush option to writeFile() functions (Colin Ihrig) #50009
  * (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) #47653
http:
  * (SEMVER-MAJOR) reduce parts in chunked response when corking (Robert Nagy) #50167
lib:
  * (SEMVER-MINOR) add WebSocket client (Matthew Aitken) #49830
  * (SEMVER-MAJOR) add `navigator.hardwareConcurrency` (Yagiz Nizipli) #47769
stream:
  * optimize Writable (Robert Nagy) #50012
test_runner:
  * (SEMVER-MAJOR) support passing globs (Moshe Atlow) #47653
vm:
  * use default HDO when importModuleDynamically is not set (Joyee Cheung) #49950

Semver-Major Commits:

* (SEMVER-MAJOR) build: drop support for Visual Studio 2019 (Michaël Zasso) #49051
* (SEMVER-MAJOR) build: bump supported macOS and Xcode versions (Michaël Zasso) #49164
* (SEMVER-MAJOR) crypto: do not overwrite \_writableState.defaultEncoding (Tobias Nießen) #49140
* (SEMVER-MAJOR) deps: bump minimum ICU version to 73 (Michaël Zasso) #49639
* (SEMVER-MAJOR) deps: update V8 to 11.8.172.13 (Michaël Zasso) #49639
* (SEMVER-MAJOR) deps: update llhttp to 9.1.2 (Paolo Insogna) #48981
* (SEMVER-MAJOR) events: validate options of `on` and `once` (Deokjin Kim) #46018
* (SEMVER-MAJOR) fs: adjust `position` validation in reading methods (Livia Medeiros) #42835
* (SEMVER-MAJOR) fs: add globSync implementation (Moshe Atlow) #47653
* (SEMVER-MAJOR) http: reduce parts in chunked response when corking (Robert Nagy) #50167
* (SEMVER-MAJOR) lib: mark URL/URLSearchParams as uncloneable and untransferable (Chengzhong Wu) #47497
* (SEMVER-MAJOR) lib: remove aix directory case for package reader (Yagiz Nizipli) #48605
* (SEMVER-MAJOR) lib: add `navigator.hardwareConcurrency` (Yagiz Nizipli) #47769
* (SEMVER-MAJOR) lib: runtime deprecate punycode (Yagiz Nizipli) #47202
* (SEMVER-MAJOR) module: harmonize error code between ESM and CJS (Antoine du Hamel) #48606
* (SEMVER-MAJOR) net: do not treat `server.maxConnections=0` as `Infinity` (ignoramous) #48276
* (SEMVER-MAJOR) net: only defer \_final call when connecting (Jason Zhang) #47385
* (SEMVER-MAJOR) node-api: rename internal NAPI\_VERSION definition (Chengzhong Wu) #48501
* (SEMVER-MAJOR) src: update NODE\_MODULE\_VERSION to 120 (Michaël Zasso) #49639
* (SEMVER-MAJOR) src: throw DOMException on cloning non-serializable objects (Chengzhong Wu) #47839
* (SEMVER-MAJOR) src: throw DataCloneError on transfering untransferable objects (Chengzhong Wu) #47604
* (SEMVER-MAJOR) stream: use private properties for strategies (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) stream: use private properties for encoding (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) stream: use private properties for compression (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) test\_runner: disallow array in `run` options (Raz Luvaton) #49935
* (SEMVER-MAJOR) test\_runner: support passing globs (Moshe Atlow) #47653
* (SEMVER-MAJOR) tls: use `validateNumber` for `options.minDHSize` (Deokjin Kim) #49973
* (SEMVER-MAJOR) tls: use validateFunction for `options.checkServerIdentity` (Deokjin Kim) #49896
* (SEMVER-MAJOR) util: runtime deprecate `promisify`-ing a function returning a `Promise` (Antoine du Hamel) #49609
* (SEMVER-MAJOR) vm: freeze `dependencySpecifiers` array (Antoine du Hamel) #49720

PR-URL: #49870
Co-authored-by: Michaël Zasso <targos@protonmail.com>
RafaelGSS added a commit that referenced this pull request Oct 17, 2023
Notable Changes:

doc:
  * promote fetch/webstreams from experimental to stable (Steven) #45684
esm:
  * use import attributes instead of import assertions (Antoine du Hamel) #50140
  * --experimental-default-type flag to flip module defaults (Geoffrey Booth) #49869
  * remove `globalPreload` hook (superseded by `initialize`) (Jacob Smith) #49144
fs:
  * add flush option to writeFile() functions (Colin Ihrig) #50009
  * (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) #47653
http:
  * (SEMVER-MAJOR) reduce parts in chunked response when corking (Robert Nagy) #50167
lib:
  * (SEMVER-MINOR) add WebSocket client (Matthew Aitken) #49830
  * (SEMVER-MAJOR) add `navigator.hardwareConcurrency` (Yagiz Nizipli) #47769
stream:
  * optimize Writable (Robert Nagy) #50012
test_runner:
  * (SEMVER-MAJOR) support passing globs (Moshe Atlow) #47653
vm:
  * use default HDO when importModuleDynamically is not set (Joyee Cheung) #49950

Semver-Major Commits:

* (SEMVER-MAJOR) build: drop support for Visual Studio 2019 (Michaël Zasso) #49051
* (SEMVER-MAJOR) build: bump supported macOS and Xcode versions (Michaël Zasso) #49164
* (SEMVER-MAJOR) crypto: do not overwrite \_writableState.defaultEncoding (Tobias Nießen) #49140
* (SEMVER-MAJOR) deps: bump minimum ICU version to 73 (Michaël Zasso) #49639
* (SEMVER-MAJOR) deps: update V8 to 11.8.172.13 (Michaël Zasso) #49639
* (SEMVER-MAJOR) deps: update llhttp to 9.1.2 (Paolo Insogna) #48981
* (SEMVER-MAJOR) events: validate options of `on` and `once` (Deokjin Kim) #46018
* (SEMVER-MAJOR) fs: adjust `position` validation in reading methods (Livia Medeiros) #42835
* (SEMVER-MAJOR) fs: add globSync implementation (Moshe Atlow) #47653
* (SEMVER-MAJOR) http: reduce parts in chunked response when corking (Robert Nagy) #50167
* (SEMVER-MAJOR) lib: mark URL/URLSearchParams as uncloneable and untransferable (Chengzhong Wu) #47497
* (SEMVER-MAJOR) lib: remove aix directory case for package reader (Yagiz Nizipli) #48605
* (SEMVER-MAJOR) lib: add `navigator.hardwareConcurrency` (Yagiz Nizipli) #47769
* (SEMVER-MAJOR) lib: runtime deprecate punycode (Yagiz Nizipli) #47202
* (SEMVER-MAJOR) module: harmonize error code between ESM and CJS (Antoine du Hamel) #48606
* (SEMVER-MAJOR) net: do not treat `server.maxConnections=0` as `Infinity` (ignoramous) #48276
* (SEMVER-MAJOR) net: only defer \_final call when connecting (Jason Zhang) #47385
* (SEMVER-MAJOR) node-api: rename internal NAPI\_VERSION definition (Chengzhong Wu) #48501
* (SEMVER-MAJOR) src: update NODE\_MODULE\_VERSION to 120 (Michaël Zasso) #49639
* (SEMVER-MAJOR) src: throw DOMException on cloning non-serializable objects (Chengzhong Wu) #47839
* (SEMVER-MAJOR) src: throw DataCloneError on transfering untransferable objects (Chengzhong Wu) #47604
* (SEMVER-MAJOR) stream: use private properties for strategies (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) stream: use private properties for encoding (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) stream: use private properties for compression (Yagiz Nizipli) #47218
* (SEMVER-MAJOR) test\_runner: disallow array in `run` options (Raz Luvaton) #49935
* (SEMVER-MAJOR) test\_runner: support passing globs (Moshe Atlow) #47653
* (SEMVER-MAJOR) tls: use `validateNumber` for `options.minDHSize` (Deokjin Kim) #49973
* (SEMVER-MAJOR) tls: use validateFunction for `options.checkServerIdentity` (Deokjin Kim) #49896
* (SEMVER-MAJOR) util: runtime deprecate `promisify`-ing a function returning a `Promise` (Antoine du Hamel) #49609
* (SEMVER-MAJOR) vm: freeze `dependencySpecifiers` array (Antoine du Hamel) #49720

PR-URL: #49870
Co-authored-by: Michaël Zasso <targos@protonmail.com>
GeoffreyBooth pushed a commit to GeoffreyBooth/node that referenced this pull request Oct 19, 2023
The HTML StructuredSerializeWithTransfer algorithm defines that when
an untransferable object is in the transfer list, a DataCloneError is
thrown.
An array buffer that is already transferred is also considered as
untransferable.

PR-URL: nodejs#47604
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
alexfernandez pushed a commit to alexfernandez/node that referenced this pull request Nov 1, 2023
Notable Changes:

doc:
  * promote fetch/webstreams from experimental to stable (Steven) nodejs#45684
esm:
  * use import attributes instead of import assertions (Antoine du Hamel) nodejs#50140
  * --experimental-default-type flag to flip module defaults (Geoffrey Booth) nodejs#49869
  * remove `globalPreload` hook (superseded by `initialize`) (Jacob Smith) nodejs#49144
fs:
  * add flush option to writeFile() functions (Colin Ihrig) nodejs#50009
  * (SEMVER-MAJOR) add globSync implementation (Moshe Atlow) nodejs#47653
http:
  * (SEMVER-MAJOR) reduce parts in chunked response when corking (Robert Nagy) nodejs#50167
lib:
  * (SEMVER-MINOR) add WebSocket client (Matthew Aitken) nodejs#49830
  * (SEMVER-MAJOR) add `navigator.hardwareConcurrency` (Yagiz Nizipli) nodejs#47769
stream:
  * optimize Writable (Robert Nagy) nodejs#50012
test_runner:
  * (SEMVER-MAJOR) support passing globs (Moshe Atlow) nodejs#47653
vm:
  * use default HDO when importModuleDynamically is not set (Joyee Cheung) nodejs#49950

Semver-Major Commits:

* (SEMVER-MAJOR) build: drop support for Visual Studio 2019 (Michaël Zasso) nodejs#49051
* (SEMVER-MAJOR) build: bump supported macOS and Xcode versions (Michaël Zasso) nodejs#49164
* (SEMVER-MAJOR) crypto: do not overwrite \_writableState.defaultEncoding (Tobias Nießen) nodejs#49140
* (SEMVER-MAJOR) deps: bump minimum ICU version to 73 (Michaël Zasso) nodejs#49639
* (SEMVER-MAJOR) deps: update V8 to 11.8.172.13 (Michaël Zasso) nodejs#49639
* (SEMVER-MAJOR) deps: update llhttp to 9.1.2 (Paolo Insogna) nodejs#48981
* (SEMVER-MAJOR) events: validate options of `on` and `once` (Deokjin Kim) nodejs#46018
* (SEMVER-MAJOR) fs: adjust `position` validation in reading methods (Livia Medeiros) nodejs#42835
* (SEMVER-MAJOR) fs: add globSync implementation (Moshe Atlow) nodejs#47653
* (SEMVER-MAJOR) http: reduce parts in chunked response when corking (Robert Nagy) nodejs#50167
* (SEMVER-MAJOR) lib: mark URL/URLSearchParams as uncloneable and untransferable (Chengzhong Wu) nodejs#47497
* (SEMVER-MAJOR) lib: remove aix directory case for package reader (Yagiz Nizipli) nodejs#48605
* (SEMVER-MAJOR) lib: add `navigator.hardwareConcurrency` (Yagiz Nizipli) nodejs#47769
* (SEMVER-MAJOR) lib: runtime deprecate punycode (Yagiz Nizipli) nodejs#47202
* (SEMVER-MAJOR) module: harmonize error code between ESM and CJS (Antoine du Hamel) nodejs#48606
* (SEMVER-MAJOR) net: do not treat `server.maxConnections=0` as `Infinity` (ignoramous) nodejs#48276
* (SEMVER-MAJOR) net: only defer \_final call when connecting (Jason Zhang) nodejs#47385
* (SEMVER-MAJOR) node-api: rename internal NAPI\_VERSION definition (Chengzhong Wu) nodejs#48501
* (SEMVER-MAJOR) src: update NODE\_MODULE\_VERSION to 120 (Michaël Zasso) nodejs#49639
* (SEMVER-MAJOR) src: throw DOMException on cloning non-serializable objects (Chengzhong Wu) nodejs#47839
* (SEMVER-MAJOR) src: throw DataCloneError on transfering untransferable objects (Chengzhong Wu) nodejs#47604
* (SEMVER-MAJOR) stream: use private properties for strategies (Yagiz Nizipli) nodejs#47218
* (SEMVER-MAJOR) stream: use private properties for encoding (Yagiz Nizipli) nodejs#47218
* (SEMVER-MAJOR) stream: use private properties for compression (Yagiz Nizipli) nodejs#47218
* (SEMVER-MAJOR) test\_runner: disallow array in `run` options (Raz Luvaton) nodejs#49935
* (SEMVER-MAJOR) test\_runner: support passing globs (Moshe Atlow) nodejs#47653
* (SEMVER-MAJOR) tls: use `validateNumber` for `options.minDHSize` (Deokjin Kim) nodejs#49973
* (SEMVER-MAJOR) tls: use validateFunction for `options.checkServerIdentity` (Deokjin Kim) nodejs#49896
* (SEMVER-MAJOR) util: runtime deprecate `promisify`-ing a function returning a `Promise` (Antoine du Hamel) nodejs#49609
* (SEMVER-MAJOR) vm: freeze `dependencySpecifiers` array (Antoine du Hamel) nodejs#49720

PR-URL: nodejs#49870
Co-authored-by: Michaël Zasso <targos@protonmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c++ Issues and PRs that require attention from people who are familiar with C++. commit-queue-squash Add this label to instruct the Commit Queue to squash all the PR commits into the first one. needs-ci PRs that need a full 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.

6 participants