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

v20.6.1 proposal #49528

Merged
merged 2 commits into from
Sep 8, 2023
Merged

v20.6.1 proposal #49528

merged 2 commits into from
Sep 8, 2023

Conversation

RafaelGSS
Copy link
Member

2023-09-08, Version 20.6.1 (Current), @RafaelGSS

Commits

  • [8acbe6d8e8] - esm: fix loading of CJS modules from ESM (Antoine du Hamel) #49500

PR-URL: #49500
Fixes: #49497
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Jacob Smith <jacob@frende.me>
@nodejs-github-bot
Copy link
Collaborator

Review requested:

  • @nodejs/loaders

@RafaelGSS RafaelGSS added the release Issues and PRs related to Node.js releases. label Sep 7, 2023
@nodejs-github-bot nodejs-github-bot added esm Issues and PRs related to the ECMAScript Modules implementation. meta Issues and PRs related to the general management of the project. needs-ci PRs that need a full CI run. v20.x v20.x Issues that can be reproduced on v20.x or PRs targeting the v20.x-staging branch. labels Sep 7, 2023
@RafaelGSS
Copy link
Member Author

As said before, I'm afraid I won't be able to sign/promote this release. I'm creating the proposal to accelerate the process. For the releaser that will move forward with the release, feel free to remove my name in the CHANGELOG or change the release date.

cc: @nodejs/releasers

@RafaelGSS RafaelGSS added request-ci Add this label to start a Jenkins CI on a PR. and removed meta Issues and PRs related to the general management of the project. esm Issues and PRs related to the ECMAScript Modules implementation. needs-ci PRs that need a full CI run. labels Sep 7, 2023
Notable changes:

esm:
  * fix loading of CJS modules from ESM (Antoine du Hamel) #49500

PR-URL: #49528
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Sep 7, 2023
@nodejs-github-bot
Copy link
Collaborator

@mcollina
Copy link
Member

mcollina commented Sep 7, 2023

Could #49225 be included?

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

@RafaelGSS
Copy link
Member Author

CITGM result (comparing with last v20.6.0 run)

FAILURE: 43 failures in 3213 not present in 3212


┌────────────────────────┬────────────────────────────┬────────────────────────────┬────────────────────────────┬────────────────────────────┬───────────────────────┬─────────────────────────┬─────────────────┐
│        (index)         │             0              │             1              │             2              │             3              │           4           │            5            │        6        │
├────────────────────────┼────────────────────────────┼────────────────────────────┼────────────────────────────┼────────────────────────────┼───────────────────────┼─────────────────────────┼─────────────────┤
│      aix72-ppc64       │       'async-v3.2.4'       │     'fastify-v4.22.2'      │ 'https-proxy-agent-v7.0.2' │                            │                       │                         │                 │
│       rhel8-x64        │     'fastify-v4.22.2'      │ 'https-proxy-agent-v7.0.2' │       'npm-v10.0.0'        │    'spawn-wrap-v2.0.0'     │   'winston-v3.10.0'   │                         │                 │
│        osx1015         │ 'https-proxy-agent-v7.0.2' │     'fastify-v4.22.2'      │     'ember-cli-v5.2.1'     │     'resolve-v1.22.4'      │     'npm-v10.0.0'     │                         │                 │
│      rhel8-s390x       │ 'https-proxy-agent-v7.0.2' │     'fastify-v4.22.2'      │   'multer-v1.4.5-lts.1'    │                            │                       │                         │                 │
│     rhel8-ppc64le      │ 'https-proxy-agent-v7.0.2' │     'fastify-v4.22.2'      │       'pump-v3.0.0'        │       'npm-v10.0.0'        │ 'tough-cookie-v4.1.3' │ 'torrent-stream-v1.2.1' │                 │
│       win-vs2019       │ 'https-proxy-agent-v7.0.2' │       'npm-v10.0.0'        │                            │                            │                       │                         │                 │
│      debian10-x64      │      'bcrypt-v5.1.1'       │ 'https-proxy-agent-v7.0.2' │     'fastify-v4.22.2'      │       'npm-v10.0.0'        │     'pump-v3.0.0'     │                         │                 │
│ fedora-last-latest-x64 │       'async-v3.2.4'       │        'ava-v5.3.1'        │      'clinic-v13.0.0'      │ 'https-proxy-agent-v7.0.2' │   'fastify-v4.22.2'   │      'npm-v10.0.0'      │ 'rewire-v7.0.0' │
│   fedora-latest-x64    │ 'https-proxy-agent-v7.0.2' │     'fastify-v4.22.2'      │       'npm-v10.0.0'        │                            │                       │                         │                 │
│     ubuntu1804-64      │       'async-v3.2.4'       │     'leveldown-v6.1.1'     │      'rewire-v7.0.0'       │        'ws-v8.13.0'        │                       │                         │                 │
└────────────────────────┴────────────────────────────┴────────────────────────────┴────────────────────────────┴────────────────────────────┴───────────────────────┴─────────────────────────┴─────────────────┘

I've looked at some of them and apparently, it's a machine issue. Mostly, timeouts. Since it's just a revert, most of the issues should already exist in v20.6.0. My only concern is: https-proxy-agent failing with Error: incorrect header check.

Looking at the stack trace:

error:                     | fatal: not a git repository (or any parent up to mount point /)                                                                                  

it also seems a file system issue in the CITGM machine.

@dnalborczyk
Copy link
Contributor

Since it's just a revert, most of the issues should already exist in v20.6.0.

@RafaelGSS I think the commit is a fix, not a revert.

@RafaelGSS
Copy link
Member Author

I ran another CITGM test just to be sure: https://ci.nodejs.org/job/citgm-smoker/3214/.

@bricss
Copy link

bricss commented Sep 7, 2023

It will be extremally 🆒 to have #49225 pilled in 🥳

@RafaelGSS
Copy link
Member Author

RafaelGSS commented Sep 7, 2023

Could #49225 be included?

It will be extremally 🆒 to have #49225 pilled in 🥳

It should go in the next week's release (v20.7.0). It contains a semver-minor PR.

@bricss
Copy link

bricss commented Sep 8, 2023

That's will be eleventh-hour request 📨 but maybe #49424 can be pulled in 🤞

@RafaelGSS
Copy link
Member Author

CITGM results:

FAILURE: 42 failures in 3214 not present in 3212


┌────────────────────────┬────────────────────────────┬────────────────────────────┬───────────────────┬────────────────────┬───────────────────┬─────────────────────────┐
│        (index)         │             0              │             1              │         2         │         3          │         4         │            5            │
├────────────────────────┼────────────────────────────┼────────────────────────────┼───────────────────┼────────────────────┼───────────────────┼─────────────────────────┤
│     ubuntu1804-64      │       'async-v3.2.4'       │     'leveldown-v6.1.1'     │  'rewire-v7.0.0'  │    'ws-v8.13.0'    │                   │                         │
│     rhel8-ppc64le      │       'async-v3.2.4'       │ 'https-proxy-agent-v7.0.2' │ 'fastify-v4.22.2' │   'pump-v3.0.0'    │   'npm-v10.0.0'   │ 'torrent-stream-v1.2.1' │
│       rhel8-x64        │ 'https-proxy-agent-v7.0.2' │     'fastify-v4.22.2'      │   'npm-v10.0.0'   │                    │                   │                         │
│ fedora-last-latest-x64 │ 'https-proxy-agent-v7.0.2' │     'fastify-v4.22.2'      │   'npm-v10.0.0'   │   'pino-v8.15.0'   │  'rewire-v7.0.0'  │                         │
│      debian10-x64      │ 'https-proxy-agent-v7.0.2' │     'fastify-v4.22.2'      │   'npm-v10.0.0'   │   'pump-v3.0.0'    │                   │                         │
│   fedora-latest-x64    │      'bcrypt-v5.1.1'       │ 'https-proxy-agent-v7.0.2' │ 'fastify-v4.22.2' │   'npm-v10.0.0'    │ 'winston-v3.10.0' │                         │
│      aix72-ppc64       │     'fastify-v4.22.2'      │ 'https-proxy-agent-v7.0.2' │   'koa-v2.14.2'   │                    │                   │                         │
│        osx1015         │ 'express-session-v1.17.3'  │ 'https-proxy-agent-v7.0.2' │ 'fastify-v4.22.2' │ 'ember-cli-v5.2.1' │   'npm-v10.0.0'   │  'tough-cookie-v4.1.3'  │
│       win-vs2019       │ 'https-proxy-agent-v7.0.2' │    'browserify-v17.0.0'    │   'ws-v8.14.0'    │   'npm-v10.0.0'    │                   │                         │
│      rhel8-s390x       │ 'https-proxy-agent-v7.0.2' │     'fastify-v4.22.2'      │                   │                    │                   │                         │
└────────────────────────┴────────────────────────────┴────────────────────────────┴───────────────────┴────────────────────┴───────────────────┴─────────────────────────┘

We need to investigate those before landing this patch. @UlisesGascon will take the lead on this release.

See the failures at: https://ci.nodejs.org/job/citgm-smoker/3214/. Could you guys help in this investigation? cc: @aduh95

@nicolo-ribaudo
Copy link
Contributor

nicolo-ribaudo commented Sep 8, 2023

Regarding the npm 10 failures, it looks like the problem is that:

  • when running in cigtm, the cwd is /Users/iojs/tmp/citgm_tmp/a2a9ff9c-f683-41e9-83de-b8943b84af1c/npm
  • npm has some cleanup logic for logged output that replaces UUIDs with the string npm_*** (defined here, and used for example here)
  • that replaces /Users/iojs/tmp/citgm_tmp/a2a9ff9c-f683-41e9-83de-b8943b84af1c/npm in logs with /Users/iojs/tmp/citgm_tmp/npm_***/npm
  • npm has tests to validate their logs, and to make them portable replaces the cwd with the string {CWD}. It also performs some other replacements, and then replaces {CWD}/{TESTDIR}/{TAPDIR} with just {CWD} (defined here)

That's why all the failures look like this:

                 --- expected
               
                 +++ actual
               
                 @@ -1,3 +1,3 @@
               
                 -extraneous: chai@1.0.0 {CWD}/prefix/node_modules/chai
               
                 -invalid: foo@1.0.0 {CWD}/prefix/node_modules/foo
               
                 +extraneous: chai@1.0.0 /Users/iojs/tmp/citgm_tmp/npm_***/npm/{TESTDIR}/{TAPDIR}/prefix/node_modules/chai
               
                 +invalid: foo@1.0.0 /Users/iojs/tmp/citgm_tmp/npm_***/npm/{TESTDIR}/{TAPDIR}/prefix/node_modules/foo
                  missing: ipsum@^1.0.0, required by test-npm-ls@1.0.0

it fails to replace the cwd because it has been butchered.

This is not a bug with Node.js: it's npm that does not support running their tests in a folder that contains a UUID in its name.

(note: I didn't actually try running npm tests locally, so somebody with knowledge about npm tests should confirm this)

@dnalborczyk
Copy link
Contributor

CITGM results:

FAILURE: 42 failures in 3214 not present in 3212

something is off with the diffing, e.g. https-proxy-agent fails in 3212 as well.

that said, you can ignore the https-proxy-agent failures, citgm is not able to download the tarball, as the location has changed.

nodejs/citgm#959 (comment)

@dnalborczyk
Copy link
Contributor

dnalborczyk commented Sep 8, 2023

[most/all?] fastify errors exist in 3212 as well , just ran citgm locally on a macOS M2 and they pass.

@dnalborczyk
Copy link
Contributor

express-session seems to be a flaky test (failure has nothing to do with the fix)

@dnalborczyk
Copy link
Contributor

bcrypt looks like a test timeout issue, unrelated to the fix, and also fails in 3212.

@dnalborczyk
Copy link
Contributor

leveldown is an infra issue nodejs/citgm#959 (comment)

@dnalborczyk
Copy link
Contributor

dnalborczyk commented Sep 8, 2023

rewire seems to be a flaky test, same failure in 3212. looks unrelated to fix.

@dnalborczyk
Copy link
Contributor

winston seems like a flaky test, and appears to be unrelated to fix.

@dnalborczyk
Copy link
Contributor

(the one) pino failure appears to be unrelated, and fails in more tests for a variety of reasons on [almost] every OS in 3212. if anything, the 3214 run looks way better.

@dnalborczyk
Copy link
Contributor

koa has a "connect time out" error on AIX (didn't run any tests at all). I'd guess infra/flaky, hard to tell.

@dnalborczyk
Copy link
Contributor

ember-cli fails in both runs, the same on each Ubuntu and OSX. the runs are also harder to compare since they picked up a variety of versions: 5.1.0, 5.2.0 and 5.2.1. might be another short coming of citgm. anyhow, I'd say flaky tests.

@dnalborczyk
Copy link
Contributor

dnalborczyk commented Sep 8, 2023

pump has the same (1) timeout failure on 3212. I'd guess flaky.

@dnalborczyk
Copy link
Contributor

torrent-stream has the same failure on a variety of OS in both runs. therefore I'd think it's unrelated to the fix.

@dnalborczyk
Copy link
Contributor

tough-cookie has the same failure in both runs in diff OS. seems unrelated to fix.

@dnalborczyk
Copy link
Contributor

browserify has some failures in both runs in diff OSs. looks flaky, unrelated, hard to tell. 🤷‍♂️

@dnalborczyk
Copy link
Contributor

async same failures in both runs on a variety of OSs. looks flaky, unrelated.

@dnalborczyk
Copy link
Contributor

ws appears to have the same (1) failure in both runs, although more often in 3212. looks unrelated/flaky. if anything, the 3214 run looks better. nodejs/citgm#959 (comment)

@dnalborczyk
Copy link
Contributor

I think that's it (including Nicolo's npm analysis #49528 (comment) )

citgm related discussion: nodejs/citgm#959

@ruyadorno
Copy link
Member

Thank you so much @dnalborczyk! I'm confident enough and will proceed with the promotion steps!

Also thanks @nicolo-ribaudo for debugging the npm citgm issue, I forwarded your msg to the npm team 😊

ruyadorno added a commit that referenced this pull request Sep 8, 2023
@ruyadorno ruyadorno merged commit d2c7c36 into v20.x Sep 8, 2023
@ruyadorno ruyadorno deleted the v20.6.1-proposal branch September 8, 2023 15:41
ruyadorno pushed a commit that referenced this pull request Sep 8, 2023
Notable changes:

esm:
  * fix loading of CJS modules from ESM (Antoine du Hamel) #49500

PR-URL: #49528
ruyadorno added a commit to ruyadorno/nodejs.org that referenced this pull request Sep 8, 2023
ruyadorno added a commit to ruyadorno/nodejs.org that referenced this pull request Sep 8, 2023
ruyadorno added a commit to nodejs/nodejs.org that referenced this pull request Sep 8, 2023
@UlisesGascon UlisesGascon mentioned this pull request Sep 10, 2023
alexfernandez pushed a commit to alexfernandez/node that referenced this pull request Nov 1, 2023
Notable changes:

esm:
  * fix loading of CJS modules from ESM (Antoine du Hamel) nodejs#49500

PR-URL: nodejs#49528
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release Issues and PRs related to Node.js releases. v20.x v20.x Issues that can be reproduced on v20.x or PRs targeting the v20.x-staging branch.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants