node icon indicating copy to clipboard operation
node copied to clipboard

v22.8.0 proposal

Open RafaelGSS opened this issue 1 year ago • 8 comments
trafficstars

2024-08-26, Version 22.8.0 (Current), @RafaelGSS

Notable Changes

  • [94eb81a739] - (SEMVER-MINOR) net: exclude ipv6 loopback addresses from server.listen (Giovanni Bucci) #54264
  • [421f563914] - (SEMVER-MINOR) test_runner: add support for coverage thresholds (Aviv Keller) #54429
  • [33fca53329] - (SEMVER-MINOR) test_runner: support running tests in process (Colin Ihrig) #53927
  • [858b583c88] - (SEMVER-MINOR) test_runner: defer inheriting hooks until run() (Colin Ihrig) #53927

Commits

  • [a3f4e562f5] - build: don't clean obj.target directory if it doesn't exist (Joyee Cheung) #54337
  • [89af95cbb2] - build: update required python version to 3.8 (Aviv Keller) #54358
  • [3561e38671] - deps: update amaro to 0.1.7 (Node.js GitHub Bot) #54473
  • [1efc251ded] - deps: update undici to 6.19.8 (Node.js GitHub Bot) #54456
  • [a1ff098db9] - deps: sqlite: fix Windows compilation (Colin Ihrig) #54433
  • [dd034eaeea] - deps: update sqlite to 3.46.1 (Node.js GitHub Bot) #54433
  • [fe4a92a66c] - doc: update websocket flag description to reflect stable API status (Yelim Koo) #54482
  • [0f2b7ec0d4] - doc: fix capitalization in module.md (shallow-beach) #54488
  • [25419915c7] - doc: add esm examples to node:https (Alfredo González) #54399
  • [83b5efeb54] - doc: reserve ABI 130 for Electron 33 (Calvin) #54383
  • [6ccbd32ae8] - doc, meta: add missing , to BUILDING.md (Aviv Keller) #54409
  • [f7b7429deb] - fs: refactor handleTimestampsAndMode to remove redundant call (HEESEUNG) #54369
  • [221bfa6b21] - meta: remind users to use a supported version in bug reports (Aviv Keller) #54481
  • [f2a8d17124] - meta: add more labels to dep-updaters (Aviv Keller) #54454
  • [c4996c189f] - meta: run coverage-windows when vcbuild.bat updated (Aviv Keller) #54412
  • [336496b90e] - module: add sourceURL magic comment hinting generated source (Chengzhong Wu) #54402
  • [94eb81a739] - (SEMVER-MINOR) net: exclude ipv6 loopback addresses from server.listen (Giovanni Bucci) #54264
  • [88d789aca4] - src: use correct way to signal interceptor error (Michaël Zasso) #54418
  • [2285902d55] - src: remove cached data tag from snapshot metadata (Joyee Cheung) #54122
  • [3a74c400d5] - src: improve buffer.transcode performance (Yagiz Nizipli) #54153
  • [909c5320fd] - src: move more crypto code to ncrypto (James M Snell) #54320
  • [9bf1e85c12] - stream: change stream to use index instead of for...of (Wiyeong Seo) #54474
  • [b1075c2991] - test: fix improper path to URL conversion (Antoine du Hamel) #54509
  • [a0f44a85bf] - test: add tests for runner coverage with different stdout column widths (Pietro Marchini) #54494
  • [6a669cd5ec] - test: prevent V8 from writing into the system's tmpdir (Michaël Zasso) #54395
  • [421f563914] - (SEMVER-MINOR) test_runner: add support for coverage thresholds (Aviv Keller) #54429
  • [eb0fe1993f] - test_runner: refactor mock_loader (Antoine du Hamel) #54223
  • [33fca53329] - (SEMVER-MINOR) test_runner: support running tests in process (Colin Ihrig) #53927
  • [858b583c88] - (SEMVER-MINOR) test_runner: defer inheriting hooks until run() (Colin Ihrig) #53927
  • [45b0250692] - test_runner: account for newline in source maps (Colin Ihrig) #54444
  • [1c29e74d30] - test_runner: make mock.module's specifier consistent with import() (Antoine du Hamel) #54416
  • [cbe30a02a3] - test_runner: finish build phase before running tests (Colin Ihrig) #54423
  • [23d05b2207] - tools: add swc license (Marco Ippolito) #54462
  • [06a0c915f4] - typings: provide internal types for wasi bindings (Andrew Moon) #54119

RafaelGSS avatar Aug 25 '24 21:08 RafaelGSS

Review requested:

  • [ ] @nodejs/actions
  • [ ] @nodejs/security-wg
  • [ ] @nodejs/tsc
  • [ ] @nodejs/typescript
  • [ ] @nodejs/v8-update

nodejs-github-bot avatar Aug 25 '24 21:08 nodejs-github-bot

CI: https://ci.nodejs.org/job/node-test-pull-request/61461/

nodejs-github-bot avatar Aug 25 '24 22:08 nodejs-github-bot

Will the notable change text in https://github.com/nodejs/node/pull/54429 be present in this, or will it just be listed in "Notable Changes"?

If it will be, should it link to the (coming soon) coverage learn guide in https://github.com/nodejs/nodejs.org/pull/7006?

avivkeller avatar Aug 25 '24 23:08 avivkeller

Failures are because of:

../src/node_webstorage.cc: In function 'v8::Intercepted node::webstorage::StorageSetter(v8::Local<v8::Name>, v8::Local<v8::Value>, const v8::PropertyCallbackInfo<void>&)':
../src/node_webstorage.cc:576:27: error: 'class v8::ReturnValue<void>' has no member named 'SetFalse'
  576 |     info.GetReturnValue().SetFalse();

avivkeller avatar Aug 25 '24 23:08 avivkeller

We should try to land and include:

https://github.com/nodejs/node/pull/54533 https://github.com/nodejs/node/pull/54524 https://github.com/nodejs/node/pull/54526

ronag avatar Aug 26 '24 05:08 ronag

I opened https://github.com/nodejs/node/pull/54565 so we can work on https://github.com/nodejs/node/pull/54526 with no rush.

targos avatar Aug 26 '24 06:08 targos

I marked https://github.com/nodejs/node/pull/54418 dont-land

targos avatar Aug 26 '24 06:08 targos

There are a few things to do on the proposal then:

  • [ ] Include detailed notable changes section
  • [x] Last main sync
  • [x] Include https://github.com/nodejs/node/pull/54533, https://github.com/nodejs/node/pull/54524, https://github.com/nodejs/node/pull/54565 (fix Buffer regression)
  • [x] Include https://github.com/nodejs/node/pull/54275 (fix babel regression)
  • [x] Drop https://github.com/nodejs/node/pull/54418

I will be monitoring the CIs, but if I miss something, please ping me here. The realistic target date is N (the date the mentioned PRs are landed on main) + 1.

RafaelGSS avatar Aug 26 '24 13:08 RafaelGSS

The last remaining pull request was merged today. However, we are unable to release it today due to the time required for the CI, CITGM, and CI-Release processes. Releasing it on Friday is not ideal, as any new issues discovered over the weekend could cause problems, for vendors and for us (despite it being a current release). Therefore, I have decided to schedule this release for next Monday. This will allow us to check the CI, CITGM, and production binaries with plenty of time.

RafaelGSS avatar Aug 29 '24 19:08 RafaelGSS

Great work, @RafaelGSS! A stable release is better than a rushed one

avivkeller avatar Aug 29 '24 20:08 avivkeller

https://github.com/nodejs/node/pull/52295 should not be in v22.x directly (it needs a special backport for older versions of V8).

joyeecheung avatar Aug 30 '24 20:08 joyeecheung

@joyeecheung CI keeps failing. Can it be related to one of your PRs?

RafaelGSS avatar Aug 31 '24 16:08 RafaelGSS

I think it might be #52295?

The error is coming from a line that was changed in that PR:

../src/heap_utils.cc:82:46: error: non-virtual member function marked 'override' hides virtual member function
82 |   Node* V8Node(const Local<v8::Data>& value) override {

It's marked dont-land-v22.x, but its included in this proposal.

Edit: Oh, I see @joyeecheung already pointed that out:

#52295 should not be in v22.x directly (it needs a special backport for older versions of V8).

avivkeller avatar Aug 31 '24 17:08 avivkeller

I think some commits from https://github.com/nodejs/node/pull/52295 are still included? They should not be in v22.x as-is because they use new APIs that are not in v8 12.4 (which only has the deprecated version).

joyeecheung avatar Aug 31 '24 17:08 joyeecheung

I think I did not remove all commits. Let me adjust

RafaelGSS avatar Aug 31 '24 18:08 RafaelGSS

Codecov Report

Attention: Patch coverage is 83.44569% with 221 lines in your changes missing coverage. Please review.

Project coverage is 87.17%. Comparing base (65eff1e) to head (78ee90e). Report is 92 commits behind head on v22.x.

Files with missing lines Patch % Lines
src/crypto/crypto_dh.cc 72.85% 22 Missing and 38 partials :warning:
lib/internal/test_runner/runner.js 72.88% 48 Missing :warning:
lib/internal/test_runner/test.js 59.57% 19 Missing :warning:
src/node_contextify.cc 78.43% 2 Missing and 9 partials :warning:
src/node_i18n.cc 64.51% 7 Missing and 4 partials :warning:
src/crypto/crypto_context.cc 36.36% 3 Missing and 4 partials :warning:
src/node_sqlite.cc 81.57% 2 Missing and 5 partials :warning:
lib/internal/test_runner/utils.js 85.00% 6 Missing :warning:
src/js_native_api_v8.cc 96.07% 0 Missing and 6 partials :warning:
src/cares_wrap.cc 66.66% 3 Missing and 2 partials :warning:
... and 21 more
Additional details and impacted files
@@            Coverage Diff             @@
##            v22.x   #54560      +/-   ##
==========================================
+ Coverage   87.06%   87.17%   +0.10%     
==========================================
  Files         648      649       +1     
  Lines      182698   183107     +409     
  Branches    35010    35340     +330     
==========================================
+ Hits       159069   159616     +547     
+ Misses      16906    16759     -147     
- Partials     6723     6732       +9     
Files with missing lines Coverage Δ
lib/buffer.js 96.84% <100.00%> (+0.14%) :arrow_up:
lib/internal/fs/cp/cp.js 90.31% <ø> (-0.03%) :arrow_down:
lib/internal/main/test_runner.js 100.00% <100.00%> (ø)
lib/internal/modules/helpers.js 98.91% <100.00%> (+1.35%) :arrow_up:
lib/internal/perf/nodetiming.js 94.64% <100.00%> (+0.26%) :arrow_up:
lib/internal/process/pre_execution.js 91.82% <ø> (+1.75%) :arrow_up:
lib/internal/test_runner/harness.js 92.30% <100.00%> (+3.17%) :arrow_up:
lib/internal/test_runner/mock/loader.js 95.52% <100.00%> (-0.62%) :arrow_down:
lib/internal/test_runner/mock/mock.js 98.62% <100.00%> (-0.62%) :arrow_down:
lib/internal/validators.js 99.69% <100.00%> (+0.02%) :arrow_up:
... and 57 more

... and 65 files with indirect coverage changes

codecov[bot] avatar Aug 31 '24 21:08 codecov[bot]

CI: https://ci.nodejs.org/job/node-test-pull-request/61802/ CITGM: https://ci.nodejs.org/job/citgm-smoker/3472/ CITGM(v22.x): https://ci.nodejs.org/job/citgm-smoker/3473/ V8: https://ci.nodejs.org/job/node-test-commit-v8-linux/6167/ :package: https://ci-release.nodejs.org/job/iojs+release/10439/

nodejs-github-bot avatar Sep 01 '24 23:09 nodejs-github-bot

V8 CI: https://ci.nodejs.org/job/node-test-commit-v8-linux/nodes=benchmark-ubuntu2204-intel-64,v8test=v8test/6167/

nodejs-github-bot avatar Sep 02 '24 00:09 nodejs-github-bot

V8 CI: https://ci.nodejs.org/job/node-test-commit-v8-linux/nodes=rhel8-s390x,v8test=v8test/6167/

nodejs-github-bot avatar Sep 02 '24 00:09 nodejs-github-bot

V8 CI: https://ci.nodejs.org/job/node-test-commit-v8-linux/nodes=rhel8-ppc64le,v8test=v8test/6167/

nodejs-github-bot avatar Sep 02 '24 00:09 nodejs-github-bot

Nit: "Support to coverage thresholds" -> "Support for coverage thresholds"

avivkeller avatar Sep 02 '24 12:09 avivkeller

Is 22.8.0 still expected to go out today? We are awaiting it as (hopefully) a fix for https://github.com/nodejs/node/issues/54518#issuecomment-2307687124

Roemerb avatar Sep 02 '24 13:09 Roemerb

Is 22.8.0 still expected to go out today? We are awaiting it as (hopefully) a fix for #54518 (comment)

Yes. We're doing our best. Currently, waiting for CI to finish.

RafaelGSS avatar Sep 02 '24 14:09 RafaelGSS

CI: https://ci.nodejs.org/job/node-test-pull-request/61823/

nodejs-github-bot avatar Sep 02 '24 14:09 nodejs-github-bot

CI: https://ci.nodejs.org/job/node-test-pull-request/61831/

nodejs-github-bot avatar Sep 02 '24 15:09 nodejs-github-bot

CI: https://ci.nodejs.org/job/node-test-pull-request/61836/ 🟢 CITGM: https://ci.nodejs.org/job/citgm-smoker/3472/ :yellow_circle: CITGM(v22.x): https://ci.nodejs.org/job/citgm-smoker/3473/ V8: https://ci.nodejs.org/job/node-test-commit-v8-linux/6167/ :green_circle: :package: https://ci-release.nodejs.org/job/iojs+release/10441/ -> https://ci-release.nodejs.org/job/iojs+release/10444/ :green_circle:

nodejs-github-bot avatar Sep 02 '24 16:09 nodejs-github-bot

CI: https://ci.nodejs.org/job/node-test-pull-request/61836/

nodejs-github-bot avatar Sep 02 '24 22:09 nodejs-github-bot

Unlikely to be released today (02/09). CI still running.

RafaelGSS avatar Sep 03 '24 00:09 RafaelGSS

Hopefully this can be landed today (3/9) The buffer error have been preventing us from deploying for a week.

nodegin avatar Sep 03 '24 03:09 nodegin