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

streams: use Array for Readable buffer #50341

Merged
merged 1 commit into from Oct 25, 2023

Conversation

ronag
Copy link
Member

@ronag ronag commented Oct 23, 2023

This replaces the Readable stream linked list BufferList buffer with an Array and index.

23:49:48 streams/pipe-object-mode.js n=5000000                                                           ***     23.56 %       ±4.03% ±5.36% ±6.98%
23:49:48 streams/pipe.js n=5000000                                                                       ***     18.77 %       ±2.88% ±3.84% ±5.00%
23:49:48 streams/readable-async-iterator.js sync='no' n=100000                                                    0.86 %       ±3.80% ±5.06% ±6.59%
23:49:48 streams/readable-async-iterator.js sync='yes' n=100000                                          ***      7.33 %       ±3.76% ±5.01% ±6.52%
23:49:48 streams/readable-bigread.js n=1000                                                              ***      8.48 %       ±4.51% ±6.01% ±7.82%
23:49:48 streams/readable-bigunevenread.js n=1000                                                        ***     13.56 %       ±1.78% ±2.37% ±3.08%
23:49:48 streams/readable-boundaryread.js type='buffer' n=2000                                           ***     11.92 %       ±1.39% ±1.85% ±2.41%
23:49:48 streams/readable-boundaryread.js type='string' n=2000                                           ***      1.99 %       ±0.99% ±1.32% ±1.72%
23:49:48 streams/readable-from.js n=10000000                                                             ***     17.22 %       ±5.10% ±6.80% ±8.87%
23:49:48 streams/readable-readall.js n=5000                                                              ***      9.66 %       ±5.47% ±7.28% ±9.49%
23:49:48 streams/readable-unevenread.js n=1000                                                           ***      4.80 %       ±0.40% ±0.54% ±0.70%

@nodejs-github-bot
Copy link
Collaborator

Review requested:

  • @nodejs/streams

@nodejs-github-bot nodejs-github-bot added the needs-ci PRs that need a full CI run. label Oct 23, 2023
@ronag ronag force-pushed the readable-array-buffer branch 2 times, most recently from 38a496c to 19d2341 Compare October 23, 2023 15:06
lib/internal/streams/readable.js Outdated Show resolved Hide resolved
lib/internal/streams/readable.js Show resolved Hide resolved
@ronag ronag force-pushed the readable-array-buffer branch 4 times, most recently from ca3438d to b31ef38 Compare October 23, 2023 18:58
@ronag

This comment was marked as outdated.

@ronag ronag force-pushed the readable-array-buffer branch 2 times, most recently from 2944cda to 03d9416 Compare October 23, 2023 19:15
@ronag

This comment was marked as outdated.

@ronag ronag force-pushed the readable-array-buffer branch 3 times, most recently from 492bb00 to 1bffece Compare October 23, 2023 19:30
@ronag

This comment was marked as outdated.

@ronag ronag force-pushed the readable-array-buffer branch 2 times, most recently from 30deb62 to beb5c0e Compare October 23, 2023 19:55
@ronag ronag requested a review from mcollina October 23, 2023 20:05
@ronag ronag requested a review from benjamingr October 23, 2023 20:05
@ronag ronag marked this pull request as ready for review October 23, 2023 20:05
ronag added a commit to nxtedition/node that referenced this pull request Oct 23, 2023
ronag added a commit to nxtedition/node that referenced this pull request Oct 23, 2023
ronag added a commit to nxtedition/node that referenced this pull request Oct 23, 2023
ronag added a commit to nxtedition/node that referenced this pull request Oct 23, 2023
targos added a commit that referenced this pull request Nov 12, 2023
Notable changes:

doc:
  * add MrJithil to collaborators (Jithil P Ponnan) #50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) #50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) #48740
fs:
  * add stacktrace to fs/promises (翠 / green) #49849
lib:
  * (SEMVER-MINOR) add navigator.platform (Aras Abbasi) #50385
stream:
  * (SEMVER-MINOR) add support for `deflate-raw` format to webstreams compression (Damian Krzeminski) #50097
  * use Array for Readable buffer (Robert Nagy) #50341
  * optimize creation (Robert Nagy) #50337
test_runner:
  * adds built in lcov reporter (Phil Nash) #50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) #48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) #50443

PR-URL: #50681
targos added a commit that referenced this pull request Nov 13, 2023
Notable changes:

doc:
  * add MrJithil to collaborators (Jithil P Ponnan) #50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) #50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) #48740
fs:
  * add stacktrace to fs/promises (翠 / green) #49849
lib:
  * (SEMVER-MINOR) add `--no-experimental-global-navigator` CLI flag (Antoine du Hamel) #50562
  * (SEMVER-MINOR) add navigator.language & navigator.languages (Aras Abbasi) #50303
  * (SEMVER-MINOR) add navigator.platform (Aras Abbasi) #50385
stream:
  * (SEMVER-MINOR) add support for `deflate-raw` format to webstreams compression (Damian Krzeminski) #50097
  * use Array for Readable buffer (Robert Nagy) #50341
  * optimize creation (Robert Nagy) #50337
test_runner:
  * (SEMVER-MINOR) adds built in lcov reporter (Phil Nash) #50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) #48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) #50443

PR-URL: #50681
targos added a commit that referenced this pull request Nov 14, 2023
Notable changes:

doc:
  * add MrJithil to collaborators (Jithil P Ponnan) #50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) #50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) #48740
fs:
  * add stacktrace to fs/promises (翠 / green) #49849
lib:
  * (SEMVER-MINOR) add `--no-experimental-global-navigator` CLI flag (Antoine du Hamel) #50562
  * (SEMVER-MINOR) add navigator.language & navigator.languages (Aras Abbasi) #50303
  * (SEMVER-MINOR) add navigator.platform (Aras Abbasi) #50385
stream:
  * (SEMVER-MINOR) add support for `deflate-raw` format to webstreams compression (Damian Krzeminski) #50097
  * use Array for Readable buffer (Robert Nagy) #50341
  * optimize creation (Robert Nagy) #50337
test_runner:
  * (SEMVER-MINOR) adds built in lcov reporter (Phil Nash) #50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) #48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) #50443

PR-URL: #50681
targos added a commit that referenced this pull request Nov 14, 2023
Notable changes:

doc:
  * add MrJithil to collaborators (Jithil P Ponnan) #50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) #50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) #48740
fs:
  * add stacktrace to fs/promises (翠 / green) #49849
lib:
  * (SEMVER-MINOR) add `--no-experimental-global-navigator` CLI flag (Antoine du Hamel) #50562
  * (SEMVER-MINOR) add navigator.language & navigator.languages (Aras Abbasi) #50303
  * (SEMVER-MINOR) add navigator.platform (Aras Abbasi) #50385
stream:
  * (SEMVER-MINOR) add support for `deflate-raw` format to webstreams compression (Damian Krzeminski) #50097
  * use Array for Readable buffer (Robert Nagy) #50341
  * optimize creation (Robert Nagy) #50337
test_runner:
  * (SEMVER-MINOR) adds built in lcov reporter (Phil Nash) #50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) #48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) #50443

PR-URL: #50681
martenrichter pushed a commit to martenrichter/node that referenced this pull request Nov 26, 2023
Notable changes:

doc:
  * add MrJithil to collaborators (Jithil P Ponnan) nodejs#50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) nodejs#50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) nodejs#48740
fs:
  * add stacktrace to fs/promises (翠 / green) nodejs#49849
lib:
  * (SEMVER-MINOR) add `--no-experimental-global-navigator` CLI flag (Antoine du Hamel) nodejs#50562
  * (SEMVER-MINOR) add navigator.language & navigator.languages (Aras Abbasi) nodejs#50303
  * (SEMVER-MINOR) add navigator.platform (Aras Abbasi) nodejs#50385
stream:
  * (SEMVER-MINOR) add support for `deflate-raw` format to webstreams compression (Damian Krzeminski) nodejs#50097
  * use Array for Readable buffer (Robert Nagy) nodejs#50341
  * optimize creation (Robert Nagy) nodejs#50337
test_runner:
  * (SEMVER-MINOR) adds built in lcov reporter (Phil Nash) nodejs#50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) nodejs#48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) nodejs#50443

PR-URL: nodejs#50681
UlisesGascon pushed a commit that referenced this pull request Dec 11, 2023
PR-URL: #50341
Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
UlisesGascon added a commit that referenced this pull request Dec 12, 2023
Notable changes:

crypto:
  * update root certificates to NSS 3.95 (Node.js GitHub Bot) #50805
doc:
  * add MrJithil to collaborators (Jithil P Ponnan) #50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) #50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) #48740
fs:
  * add c++ fast path for writeFileSync utf8 (CanadaHonk) #49884
module:
  * (SEMVER-MINOR) remove useCustomLoadersIfPresent flag (Chengzhong Wu) #48655
src:
  * (SEMVER-MINOR) add `--disable-warning` option (Ethan Arrowood) #50661
  * (SEMVER-MINOR) create per isolate proxy env template (Chengzhong Wu) #48655
  * (SEMVER-MINOR) make process binding data weak (Chengzhong Wu) #48655
stream:
  * use Array for Readable buffer (Robert Nagy) #50341
  * optimize creation (Robert Nagy) #50337
test_runner:
  * (SEMVER-MINOR) adds built in lcov reporter (Phil Nash) #50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) #48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) #50443

PR-URL: TODO
@UlisesGascon UlisesGascon mentioned this pull request Dec 12, 2023
UlisesGascon added a commit that referenced this pull request Dec 12, 2023
Notable changes:

crypto:
  * update root certificates to NSS 3.95 (Node.js GitHub Bot) #50805
doc:
  * add MrJithil to collaborators (Jithil P Ponnan) #50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) #50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) #48740
fs:
  * add c++ fast path for writeFileSync utf8 (CanadaHonk) #49884
module:
  * (SEMVER-MINOR) remove useCustomLoadersIfPresent flag (Chengzhong Wu) #48655
src:
  * (SEMVER-MINOR) add `--disable-warning` option (Ethan Arrowood) #50661
  * (SEMVER-MINOR) create per isolate proxy env template (Chengzhong Wu) #48655
  * (SEMVER-MINOR) make process binding data weak (Chengzhong Wu) #48655
stream:
  * use Array for Readable buffer (Robert Nagy) #50341
  * optimize creation (Robert Nagy) #50337
test_runner:
  * (SEMVER-MINOR) adds built in lcov reporter (Phil Nash) #50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) #48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) #50443

PR-URL: #51124
UlisesGascon added a commit that referenced this pull request Dec 13, 2023
Notable changes:

crypto:
  * update root certificates to NSS 3.95 (Node.js GitHub Bot) #50805
doc:
  * add MrJithil to collaborators (Jithil P Ponnan) #50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) #50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) #48740
fs:
  * add c++ fast path for writeFileSync utf8 (CanadaHonk) #49884
module:
  * (SEMVER-MINOR) remove useCustomLoadersIfPresent flag (Chengzhong Wu) #48655
src:
  * (SEMVER-MINOR) add `--disable-warning` option (Ethan Arrowood) #50661
  * (SEMVER-MINOR) create per isolate proxy env template (Chengzhong Wu) #48655
  * (SEMVER-MINOR) make process binding data weak (Chengzhong Wu) #48655
stream:
  * use Array for Readable buffer (Robert Nagy) #50341
  * optimize creation (Robert Nagy) #50337
test_runner:
  * (SEMVER-MINOR) adds built in lcov reporter (Phil Nash) #50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) #48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) #50443

PR-URL: #51124
UlisesGascon added a commit that referenced this pull request Dec 15, 2023
Notable changes:

crypto:
  * update root certificates to NSS 3.95 (Node.js GitHub Bot) #50805
doc:
  * add MrJithil to collaborators (Jithil P Ponnan) #50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) #50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) #48740
fs:
  * add c++ fast path for writeFileSync utf8 (CanadaHonk) #49884
module:
  * (SEMVER-MINOR) remove useCustomLoadersIfPresent flag (Chengzhong Wu) #48655
  * (SEMVER-MINOR) bootstrap module loaders in shadow realm (Chengzhong Wu) #48655
src:
  * (SEMVER-MINOR) add `--disable-warning` option (Ethan Arrowood) #50661
  * (SEMVER-MINOR) create per isolate proxy env template (Chengzhong Wu) #48655
  * (SEMVER-MINOR) make process binding data weak (Chengzhong Wu) #48655
stream:
  * use Array for Readable buffer (Robert Nagy) #50341
  * optimize creation (Robert Nagy) #50337
test_runner:
  * (SEMVER-MINOR) adds built in lcov reporter (Phil Nash) #50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) #48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) #50443

PR-URL: #51124
UlisesGascon added a commit that referenced this pull request Dec 15, 2023
Notable changes:

crypto:
  * update root certificates to NSS 3.95 (Node.js GitHub Bot) #50805
doc:
  * add MrJithil to collaborators (Jithil P Ponnan) #50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) #50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) #48740
fs:
  * add c++ fast path for writeFileSync utf8 (CanadaHonk) #49884
module:
  * (SEMVER-MINOR) remove useCustomLoadersIfPresent flag (Chengzhong Wu) #48655
  * (SEMVER-MINOR) bootstrap module loaders in shadow realm (Chengzhong Wu) #48655
src:
  * (SEMVER-MINOR) add `--disable-warning` option (Ethan Arrowood) #50661
  * (SEMVER-MINOR) create per isolate proxy env template (Chengzhong Wu) #48655
  * (SEMVER-MINOR) make process binding data weak (Chengzhong Wu) #48655
stream:
  * use Array for Readable buffer (Robert Nagy) #50341
  * optimize creation (Robert Nagy) #50337
test_runner:
  * (SEMVER-MINOR) adds built in lcov reporter (Phil Nash) #50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) #48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) #50443

PR-URL: #51124
UlisesGascon added a commit that referenced this pull request Dec 20, 2023
Notable changes:

crypto:
  * update root certificates to NSS 3.95 (Node.js GitHub Bot) #50805
doc:
  * add MrJithil to collaborators (Jithil P Ponnan) #50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) #50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) #48740
fs:
  * add c++ fast path for writeFileSync utf8 (CanadaHonk) #49884
module:
  * (SEMVER-MINOR) remove useCustomLoadersIfPresent flag (Chengzhong Wu) #48655
  * (SEMVER-MINOR) bootstrap module loaders in shadow realm (Chengzhong Wu) #48655
src:
  * (SEMVER-MINOR) add `--disable-warning` option (Ethan Arrowood) #50661
  * (SEMVER-MINOR) create per isolate proxy env template (Chengzhong Wu) #48655
  * (SEMVER-MINOR) make process binding data weak (Chengzhong Wu) #48655
stream:
  * use Array for Readable buffer (Robert Nagy) #50341
  * optimize creation (Robert Nagy) #50337
test_runner:
  * (SEMVER-MINOR) adds built in lcov reporter (Phil Nash) #50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) #48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) #50443

PR-URL: #51124
UlisesGascon added a commit that referenced this pull request Jan 3, 2024
Notable changes:

crypto:
  * update root certificates to NSS 3.95 (Node.js GitHub Bot) #50805
doc:
  * add MrJithil to collaborators (Jithil P Ponnan) #50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) #50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) #48740
fs:
  * add c++ fast path for writeFileSync utf8 (CanadaHonk) #49884
module:
  * (SEMVER-MINOR) remove useCustomLoadersIfPresent flag (Chengzhong Wu) #48655
  * (SEMVER-MINOR) bootstrap module loaders in shadow realm (Chengzhong Wu) #48655
src:
  * (SEMVER-MINOR) add `--disable-warning` option (Ethan Arrowood) #50661
  * (SEMVER-MINOR) create per isolate proxy env template (Chengzhong Wu) #48655
  * (SEMVER-MINOR) make process binding data weak (Chengzhong Wu) #48655
stream:
  * use Array for Readable buffer (Robert Nagy) #50341
  * optimize creation (Robert Nagy) #50337
test_runner:
  * (SEMVER-MINOR) adds built in lcov reporter (Phil Nash) #50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) #48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) #50443

PR-URL: #51124
UlisesGascon added a commit that referenced this pull request Jan 4, 2024
Notable changes:

crypto:
  * update root certificates to NSS 3.95 (Node.js GitHub Bot) #50805
doc:
  * add MrJithil to collaborators (Jithil P Ponnan) #50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) #50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) #48740
fs:
  * add c++ fast path for writeFileSync utf8 (CanadaHonk) #49884
module:
  * (SEMVER-MINOR) remove useCustomLoadersIfPresent flag (Chengzhong Wu) #48655
  * (SEMVER-MINOR) bootstrap module loaders in shadow realm (Chengzhong Wu) #48655
src:
  * (SEMVER-MINOR) add `--disable-warning` option (Ethan Arrowood) #50661
  * (SEMVER-MINOR) create per isolate proxy env template (Chengzhong Wu) #48655
  * (SEMVER-MINOR) make process binding data weak (Chengzhong Wu) #48655
stream:
  * use Array for Readable buffer (Robert Nagy) #50341
  * optimize creation (Robert Nagy) #50337
test_runner:
  * (SEMVER-MINOR) adds built in lcov reporter (Phil Nash) #50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) #48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) #50443

PR-URL: #51124
UlisesGascon added a commit that referenced this pull request Jan 9, 2024
Notable changes:

crypto:
  * update root certificates to NSS 3.95 (Node.js GitHub Bot) #50805
doc:
  * add MrJithil to collaborators (Jithil P Ponnan) #50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) #50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) #48740
fs:
  * add c++ fast path for writeFileSync utf8 (CanadaHonk) #49884
module:
  * (SEMVER-MINOR) remove useCustomLoadersIfPresent flag (Chengzhong Wu) #48655
  * (SEMVER-MINOR) bootstrap module loaders in shadow realm (Chengzhong Wu) #48655
src:
  * (SEMVER-MINOR) add `--disable-warning` option (Ethan Arrowood) #50661
  * (SEMVER-MINOR) create per isolate proxy env template (Chengzhong Wu) #48655
  * (SEMVER-MINOR) make process binding data weak (Chengzhong Wu) #48655
stream:
  * use Array for Readable buffer (Robert Nagy) #50341
  * optimize creation (Robert Nagy) #50337
test_runner:
  * (SEMVER-MINOR) adds built in lcov reporter (Phil Nash) #50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) #48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) #50443

PR-URL: #51124
UlisesGascon added a commit that referenced this pull request Jan 9, 2024
Notable changes:

crypto:
  * update root certificates to NSS 3.95 (Node.js GitHub Bot) #50805
doc:
  * add MrJithil to collaborators (Jithil P Ponnan) #50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) #50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) #48740
fs:
  * add c++ fast path for writeFileSync utf8 (CanadaHonk) #49884
module:
  * (SEMVER-MINOR) remove useCustomLoadersIfPresent flag (Chengzhong Wu) #48655
  * (SEMVER-MINOR) bootstrap module loaders in shadow realm (Chengzhong Wu) #48655
src:
  * (SEMVER-MINOR) add `--disable-warning` option (Ethan Arrowood) #50661
  * (SEMVER-MINOR) create per isolate proxy env template (Chengzhong Wu) #48655
  * (SEMVER-MINOR) make process binding data weak (Chengzhong Wu) #48655
stream:
  * use Array for Readable buffer (Robert Nagy) #50341
  * optimize creation (Robert Nagy) #50337
test_runner:
  * (SEMVER-MINOR) adds built in lcov reporter (Phil Nash) #50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) #48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) #50443

PR-URL: #51124
marco-ippolito pushed a commit to marco-ippolito/node that referenced this pull request Jan 12, 2024
Notable changes:

crypto:
  * update root certificates to NSS 3.95 (Node.js GitHub Bot) nodejs#50805
doc:
  * add MrJithil to collaborators (Jithil P Ponnan) nodejs#50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) nodejs#50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) nodejs#48740
fs:
  * add c++ fast path for writeFileSync utf8 (CanadaHonk) nodejs#49884
module:
  * (SEMVER-MINOR) remove useCustomLoadersIfPresent flag (Chengzhong Wu) nodejs#48655
  * (SEMVER-MINOR) bootstrap module loaders in shadow realm (Chengzhong Wu) nodejs#48655
src:
  * (SEMVER-MINOR) add `--disable-warning` option (Ethan Arrowood) nodejs#50661
  * (SEMVER-MINOR) create per isolate proxy env template (Chengzhong Wu) nodejs#48655
  * (SEMVER-MINOR) make process binding data weak (Chengzhong Wu) nodejs#48655
stream:
  * use Array for Readable buffer (Robert Nagy) nodejs#50341
  * optimize creation (Robert Nagy) nodejs#50337
test_runner:
  * (SEMVER-MINOR) adds built in lcov reporter (Phil Nash) nodejs#50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) nodejs#48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) nodejs#50443

PR-URL: nodejs#51124
@nadavzipo
Copy link

@ronag I think this change caused breaking changes in the streams api.
Please see the following related issue - googleapis/nodejs-storage#2391

@ronag
Copy link
Member Author

ronag commented Jan 14, 2024

@ronag I think this change caused breaking changes in the streams api.

Please see the following related issue - googleapis/nodejs-storage#2391

The stream-shift module is using private properties. So while this change does break it, it's using stuff it shouldn't be using.

I'll give it some thought whether we can add some compat.

I would recommend either fixing g stream-shift or stop using it.

@ronag
Copy link
Member Author

ronag commented Jan 14, 2024

Even better, stop using duplexify package. We have correspond functionality in node core.

@nadavzipo
Copy link

@ronag thanks for taking a look.
I will need to revert to node 20.10.0 to solve this until googleapis/nodejs-storage will address this.

Chocobozzz added a commit to Chocobozzz/net-ipc that referenced this pull request Jan 19, 2024
Node removed buffer_list object and uses a raw array now to store
readable buffers: nodejs/node#50341
Medhansh404 pushed a commit to Medhansh404/node that referenced this pull request Jan 19, 2024
Notable changes:

crypto:
  * update root certificates to NSS 3.95 (Node.js GitHub Bot) nodejs#50805
doc:
  * add MrJithil to collaborators (Jithil P Ponnan) nodejs#50666
  * add Ethan-Arrowood as a collaborator (Ethan Arrowood) nodejs#50393
esm:
  * (SEMVER-MINOR) add import.meta.dirname and import.meta.filename (James Sumners) nodejs#48740
fs:
  * add c++ fast path for writeFileSync utf8 (CanadaHonk) nodejs#49884
module:
  * (SEMVER-MINOR) remove useCustomLoadersIfPresent flag (Chengzhong Wu) nodejs#48655
  * (SEMVER-MINOR) bootstrap module loaders in shadow realm (Chengzhong Wu) nodejs#48655
src:
  * (SEMVER-MINOR) add `--disable-warning` option (Ethan Arrowood) nodejs#50661
  * (SEMVER-MINOR) create per isolate proxy env template (Chengzhong Wu) nodejs#48655
  * (SEMVER-MINOR) make process binding data weak (Chengzhong Wu) nodejs#48655
stream:
  * use Array for Readable buffer (Robert Nagy) nodejs#50341
  * optimize creation (Robert Nagy) nodejs#50337
test_runner:
  * (SEMVER-MINOR) adds built in lcov reporter (Phil Nash) nodejs#50018
  * (SEMVER-MINOR) add Date to the supported mock APIs (Lucas Santos) nodejs#48638
test_runner, cli:
  * (SEMVER-MINOR) add --test-timeout flag (Shubham Pandey) nodejs#50443

PR-URL: nodejs#51124
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. needs-ci PRs that need a full CI run. notable-change PRs with changes that should be highlighted in changelogs.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants