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

Windows node-gyp workaround testing #3052

Merged
merged 15 commits into from
May 16, 2022

Conversation

superman20
Copy link
Collaborator

Checklist:

  • docs updated
  • tests updated
  • Changes updated

@superman20
Copy link
Collaborator Author

FYI...I still plan to try some other ideas to resolve these problems as I have time. So don't merge into master unless some intermittent fix is desired or until I've exhausted all my ideas. I'll let you know when I give up. Node 14 on Windows 2022 might be a sticky problem.

@superman20
Copy link
Collaborator Author

This PR now represents what I feel like is the minimum needed workarounds to make all of the combinations of Node and Windows versions pass. There are 2 workarounds needed:

  1. An npm uprade. Node 14's default node-gyp install does not recognize Visual Studio 2022 (which comes with Windows 2022). An npm upgrade gets a version that recognizes VS 2022. It should be harmless for the other node/windows combinations that don't technically need it, so I didn't isolate it.
  2. A node-gyp tickle. There appears to be an install timing issue for node-gyp on Windows that randomly creates some file confusion preventing a complete install. It appears very frequently starting in Node 16. This is discussed in enable windows node 16 testing #3036.

Please merge if you find these workarounds acceptable. I will periodically test them and remove them once they no longer seem needed.

@superman20
Copy link
Collaborator Author

I've also fixed the 2 Windows test fails on Node 18. There were 2 tests creating the listening port on localhost but the test was connecting to 127.0.0.1. It appears that in Node 18 on Windows, localhost is IPv6 only, so it was only listening on ::1. To be consistent with the other tests, the fix was to listen on 127.0.0.1.

Let me know if you'd rather split this fix from the node-gyp workaround fixes.

maybe, if I got the syntax correct.
@msimerson msimerson merged commit cb0fd7f into haraka:master May 16, 2022
@msimerson
Copy link
Member

Thanks for your work on this issue!

@superman20 superman20 deleted the Windows-node-gyp-Workaround branch May 17, 2022 02:00
@msimerson msimerson mentioned this pull request Jun 4, 2022
13 tasks
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.

2 participants