-
Notifications
You must be signed in to change notification settings - Fork 30.1k
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
test,doc: enable running embedtest for Windows #52646
test,doc: enable running embedtest for Windows #52646
Conversation
Review requested:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We already have tools/executable_wrapper.h
and AFAICT it serves the same purpose. Not sure why this wasn't done for the embedtest although that wrapper was introduced later when we do need to create executable that also works on Windows (js2c). Can we just use that for the embedtest?
Great! It could work. For the PR #43542 I will need to make |
IIUC to share code with #43542 ultimately we need to expose a helper like |
It seems that we can avoid converting the As for the |
It seems that macOS benchmark is failing, but the failure is not related to changes in this PR. |
I think that is one of the known flaky tests, restarted the github action on macOS |
I think the reason why we don't do that is, we generally try to keep |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
It seem that CI shows that the new embedding testing is failing on Windows and it is related to this PR. I am going to investigate/fix it. I wonder if the
|
This happens sometimes. I'm investigating ARM64 cross-compilation issues in CI and will hopefully have a more permanent solution soon. |
Commit Queue failed- Loading data for nodejs/node/pull/52646 ✔ Done loading data for nodejs/node/pull/52646 ----------------------------------- PR info ------------------------------------ Title test,doc: enable running embedtest for Windows (#52646) Author Vladimir Morozov (@vmoroz) Branch vmoroz:pr/enable_embedtest_for_windows -> nodejs:main Labels windows, build, needs-ci Commits 2 - test,doc: enable running embedtest for Windows - use existing executable_wrapper.h Committers 1 - Vladimir Morozov PR-URL: https://github.com/nodejs/node/pull/52646 Reviewed-By: Joyee Cheung Reviewed-By: Michael Dawson Reviewed-By: James M Snell ------------------------------ Generated metadata ------------------------------ PR-URL: https://github.com/nodejs/node/pull/52646 Reviewed-By: Joyee Cheung Reviewed-By: Michael Dawson Reviewed-By: James M Snell -------------------------------------------------------------------------------- ℹ This PR was created on Mon, 22 Apr 2024 17:29:50 GMT ✔ Approvals: 3 ✔ - Joyee Cheung (@joyeecheung) (TSC): https://github.com/nodejs/node/pull/52646#pullrequestreview-2069697036 ✔ - Michael Dawson (@mhdawson) (TSC): https://github.com/nodejs/node/pull/52646#pullrequestreview-2071969985 ✔ - James M Snell (@jasnell) (TSC): https://github.com/nodejs/node/pull/52646#pullrequestreview-2039461466 ✔ Last GitHub CI successful ℹ Last Full PR CI on 2024-05-23T07:38:01Z: https://ci.nodejs.org/job/node-test-pull-request/59361/ - Querying data for job/node-test-pull-request/59361/ ✔ Last Jenkins CI successful -------------------------------------------------------------------------------- ✔ No git cherry-pick in progress ✔ No git am in progress ✔ No git rebase in progress -------------------------------------------------------------------------------- - Bringing origin/main up to date... From https://github.com/nodejs/node * branch main -> FETCH_HEAD ✔ origin/main is now up-to-date - Downloading patch for 52646 From https://github.com/nodejs/node * branch refs/pull/52646/merge -> FETCH_HEAD ✔ Fetched commits as c137d6eb3101..91b5225d7946 -------------------------------------------------------------------------------- [main c9fde46b15] test,doc: enable running embedtest for Windows Author: Vladimir Morozov Date: Mon Apr 22 10:12:59 2024 -0700 7 files changed, 82 insertions(+), 4 deletions(-) create mode 100644 test/embedding/utf8_args.c create mode 100644 test/embedding/utf8_args.h [main 0b310539dd] use existing executable_wrapper.h Author: Vladimir Morozov Date: Tue Apr 23 14:30:34 2024 -0700 5 files changed, 5 insertions(+), 76 deletions(-) delete mode 100644 test/embedding/utf8_args.c delete mode 100644 test/embedding/utf8_args.h ✔ Patches applied There are 2 commits in the PR. Attempting autorebase. Rebasing (2/4)https://github.com/nodejs/node/actions/runs/9212395583 |
Landed in 98a1ecf |
2 PRs that landed independently caused this issue which makes every native suites run in CI fail on Windows. This is just a quick patch to unblock the CI. Refs: nodejs#52905 Refs: nodejs#52646
2 PRs that landed independently caused this issue which makes every native suites run in CI fail on Windows. This is just a quick patch to unblock the CI. Refs: nodejs#52905 Refs: nodejs#52646
2 PRs that landed independently caused this issue which makes every native suites run in CI fail on Windows. This is just a quick patch to unblock the CI. Refs: #52905 Refs: #52646 PR-URL: #53173 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
PR-URL: #52646 Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com> Reviewed-By: James M Snell <jasnell@gmail.com>
2 PRs that landed independently caused this issue which makes every native suites run in CI fail on Windows. This is just a quick patch to unblock the CI. Refs: #52905 Refs: #52646 PR-URL: #53173 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
PR-URL: nodejs#52646 Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com> Reviewed-By: James M Snell <jasnell@gmail.com>
2 PRs that landed independently caused this issue which makes every native suites run in CI fail on Windows. This is just a quick patch to unblock the CI. Refs: nodejs#52905 Refs: nodejs#52646 PR-URL: nodejs#53173 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
PR-URL: nodejs#52646 Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com> Reviewed-By: James M Snell <jasnell@gmail.com>
2 PRs that landed independently caused this issue which makes every native suites run in CI fail on Windows. This is just a quick patch to unblock the CI. Refs: nodejs#52905 Refs: nodejs#52646 PR-URL: nodejs#53173 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
PR-URL: #52646 Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com> Reviewed-By: James M Snell <jasnell@gmail.com>
2 PRs that landed independently caused this issue which makes every native suites run in CI fail on Windows. This is just a quick patch to unblock the CI. Refs: #52905 Refs: #52646 PR-URL: #53173 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
PR-URL: #52646 Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com> Reviewed-By: James M Snell <jasnell@gmail.com>
2 PRs that landed independently caused this issue which makes every native suites run in CI fail on Windows. This is just a quick patch to unblock the CI. Refs: #52905 Refs: #52646 PR-URL: #53173 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Currently the
embedtest
does not run on Windows.One of the main reasons is that the Windows command line does not accept UTF-8 characters required by the test.
In this PR we enable
embedtest
to run on Windows:node::FixupMain
fromtools/executable_wrapper.h
to fixargc
andargv
values. TheNODE_MAIN
macro is defined aswmain
for Windows targets that receives parameters as UTF-16. Then, thenode::FixupMain
converts them to UTF-8.node.gyp
is changed to addtools
include directory for theembedtest
project. It is need to include theexecutable_wrapper.h
.embedtest
fromvcbuild.bat
embedding.md
file.