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

chore: add Windows with VS 2022 and Node.JS 19.x to the CI matrix #1252

Merged
merged 10 commits into from
Dec 19, 2022

Conversation

vmoroz
Copy link
Member

@vmoroz vmoroz commented Dec 16, 2022

In this PR we are adding windows-2022 OS image to the CI to test Node-API with Visual Studio 2022.
We are also adding verification for Node.JS version 19.x.

The new verification matrix for Windows is:

  • windows-2022 - Node,JS [ 16.x, 18.x, 19.x ]
  • windows-2019 - Node,JS [ 14.x, 16.x, 18.x, 19.x ]
    Note that VS 2022 is not supported by Node.JS 14.x GYP and it is not in the matrix.

For the MacOS and Ubuntu we have added printing of compiler version.
It helped to identify that:

  • On MacOS the gcc is an alias for clang. So, we are removing the MacOS + gcc from the test matrix.
  • On Ubuntu the condition "${{ matrix.os }}" = ubuntu-* seems to always fail and we never install the GCC version 6.5. Fixing this condition caused the script error because the package could not be found. CI uses preinstalled GCC version with the Ubuntu image which is currently 11.3. Thus, the custom logic to install compiler is removed.

The new verification matrix for MacOS and Ubuntu is:

  • ubuntu-latest - compiler: [ gcc, clang ] - Node,JS [ 14.x, 16.x, 18.x, 19.x ]
  • macos-latest - compiler: [ clang ] - Node,JS [ 14.x, 16.x, 18.x, 19.x ]

node-version: [14.x, 16.x, 18.x]
os:
- windows-2019
node-version: [14.x, 16.x, 18.x]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we should probably ad 19.x here as well

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point! Let me try adding it,

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mhdawson , I have added Node.JS 19.x and updated the PR description.
Should I add Node.JS 19.x for non-Windows platforms in this PR too?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@vmoroz yes, we should have it for all platforms. We probably should have done it in Oct when 19.x was cut.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, I will do it then, while I am editing these files anyway. :)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mhdawson , I have added Node.JS 19x to the MacOS and Ubuntu runners. I also cleaned up the script a bit.

@vmoroz vmoroz changed the title chore: add Windows and VS 2022 to the CI matrix chore: add Windows with VS 2022 and Node.JS 19.x to the CI matrix Dec 16, 2022
Copy link
Member

@mhdawson mhdawson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@mhdawson mhdawson merged commit 5c39373 into nodejs:main Dec 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants