build: run es-module tests in ci environment#15276
build: run es-module tests in ci environment#15276bcoe wants to merge 1 commit intonodejs:masterfrom
Conversation
|
Oh no, sorry for overlooking this in my review. That being said some CI errors in the code in that PR did surface, but perhaps they were elsewhere. |
|
/cc @bmeck for CI errors @vsemozhetbyt I’d just do another PR for it |
|
@addaleax @bmeck seeing this one failing test myself on OSX: === release test-esm-pkg-over-ext ===
Path: es-module/test-esm-pkg-over-ext
(node:12584) ExperimentalWarning: The ESM module loader is experimental.
Error: module ../fixtures/module-pkg-over-ext/inner not found
at module.exports (internal/loader/search.js:16:12)
at resolveRequestUrl (internal/loader/resolveRequestUrl.js:81:13)
at Loader.getModuleJob (internal/loader/Loader.js:50:27)
at ModuleWrap.module.link (internal/loader/ModuleJob.js:30:25)
at linked (internal/loader/ModuleJob.js:28:21)
at <anonymous>Any thoughts? update: see #15280 problem seems to be a missing fixture. |
|
There should also be a corresponding change in |
|
@richardlau done (I think). |
|
The resolution of that test might change, due to it having a funny regression. See #14990 |
|
@bmeck this should not be blocking for now though, right? |
|
@BridgeAR yup, not blocking; just to note. |
|
@bcoe would you be so kind and rebase this? |
0f433cd to
2c6f451
Compare
|
@BridgeAR done 👍 |
|
One more time https://ci.nodejs.org/job/node-test-pull-request/10074/ |
|
CI failed across the board. |
not ok 1664 es-module/test-esm-pkg-over-ext
---
duration_ms: 0.231
severity: fail
stack: |-
(node:39946) ExperimentalWarning: The ESM module loader is experimental.
Error: module ../fixtures/module-pkg-over-ext/inner not found
at module.exports (internal/loader/search.js:16:12)
at resolveRequestUrl (internal/loader/resolveRequestUrl.js:81:13)
at Loader.getModuleJob (internal/loader/Loader.js:50:27)
at ModuleWrap.module.link (internal/loader/ModuleJob.js:30:25)
at linked (internal/loader/ModuleJob.js:28:21)
at <anonymous>
... |
|
@jasnell not seeing any linting issues when running locally: Benjamins-MacBook-Pro:node benjamincoe$ make lint
Running JS linter...
./node tools/eslint/bin/eslint.js --cache --rulesdir=tools/eslint-rules --ext=.js,.mjs,.md \
benchmark doc lib test tools
Running C++ linter...
Total errors found: 0I'm not seeing any useful output from the Windows CI tests, the only change is that the new es-module module suite has been added to Windows, so I assume this is the culprit. EDIT: figured out how to navigate Jenkins better: Error: module ../common not found
at module.exports (internal/loader/search.js:16:12)
at resolveRequestUrl (internal/loader/resolveRequestUrl.js:81:13)
at Loader.getModuleJob (internal/loader/Loader.js:50:27)
at ModuleWrap.module.link (internal/loader/ModuleJob.js:30:25)
at linked (internal/loader/ModuleJob.js:28:21)
at <anonymous>
(node:7092) ExperimentalWarning: The ESM module loader is experimental.
Error: module ./esm-snapshot-mutator not found
at module.exports (internal/loader/search.js:16:12)
at resolveRequestUrl (internal/loader/resolveRequestUrl.js:81:13)
at Loader.getModuleJob (internal/loader/Loader.js:50:27)
at ModuleWrap.module.link (internal/loader/ModuleJob.js:30:25)
at linked (internal/loader/ModuleJob.js:28:21)
at <anonymous>CC: @bmeck; I can work on getting a Windows testing environment up and running, but might be a while. |
|
@jasnell @bmeck got the Windows build running tonight and dug a bit more. I think the culprit is in Not much of a C++ programmer, so might need some direction here @bmeck. tldr; we weren't exercising the es-module code against Windows when it first landed due to the test suite having 35 magic variables that needed to be set whenever a new test folder was added. |
|
Entirely possible. @bmeck would be best bet to look at it but I'll see if I can get to it today (no guarantees) |
|
I'll get Windows running on my newer laptop today and see if I can dig a bit more too -- was painfully slow to compile on my at home computer. |
|
@jasnell tests should start passing for windows once we land #15490 Running lint, I'm not quite sure why that build server had issues: make lint
Running JS linter...
./node tools/eslint/bin/eslint.js --cache --rulesdir=tools/eslint-rules --ext=.js,.mjs,.md \
benchmark doc lib test tools
Running C++ linter...
Total errors found: 0I think we should try to land this and #15490 before we land many more es-module features, e.g., #15445, since we're currently not exercising any of the code in CI. |
|
Appears to be working on Windows now, although CI is still running and there appear to be other non-related failures. |
|
@jasnell @TimothyGu that's looking a lot more promising: Is there a chance that the bindings test is flappy on win2016, I doubt this pull modifies anything related to it: |
|
@bcoe would you be so kind and please rebase? |
Add es-module to CI_JS_SUITES/js_test_suites, so that tests run in CI. Update test/README adding es-module section.
|
@BridgeAR done. |
Add es-module to CI_JS_SUITES/js_test_suites, so that tests run in CI. Update test/README adding es-module section. PR-URL: nodejs#15276 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com> Reviewed-By: Timothy Gu <timothygu99@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Yuta Hiroto <hello@about-hiroppy.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
|
Landed in a1b6cfd |
|
Quick sanity test on |
Add es-module to CI_JS_SUITES/js_test_suites, so that tests run in CI. Update test/README adding es-module section. PR-URL: nodejs#15276 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com> Reviewed-By: Timothy Gu <timothygu99@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Yuta Hiroto <hello@about-hiroppy.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
Add es-module to CI_JS_SUITES/js_test_suites, so that tests run in CI. Update test/README adding es-module section. PR-URL: #15276 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com> Reviewed-By: Timothy Gu <timothygu99@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Yuta Hiroto <hello@about-hiroppy.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
Add es-module to CI_JS_SUITES/js_test_suites, so that tests run in CI. Update test/README adding es-module section. PR-URL: nodejs/node#15276 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com> Reviewed-By: Timothy Gu <timothygu99@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Yuta Hiroto <hello@about-hiroppy.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
Add es-module to CI_JS_SUITES/js_test_suites, so that tests run in CI. Update test/README adding es-module section. PR-URL: #15276 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com> Reviewed-By: Timothy Gu <timothygu99@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Yuta Hiroto <hello@about-hiroppy.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
Add es-module to CI_JS_SUITES/js_test_suites, so that tests run in CI. Update test/README adding es-module section. PR-URL: #15276 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com> Reviewed-By: Timothy Gu <timothygu99@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Yuta Hiroto <hello@about-hiroppy.com> Reviewed-By: Refael Ackermann <refack@gmail.com>


I noticed that there was no coverage for @bmeck's new module loading work in CI, I believe the issue might be that
es-modulewas not added to theCI_JS_SUITESvariable. I've:abortruns in CI, since I noted this listed in the list of suites listed inCI_JS_SUITES.Checklist
make -j4 test(UNIX), orvcbuild test(Windows) passesAffected core subsystem(s)
test,build