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

ci: improve Windows support #506

Merged
merged 3 commits into from Feb 19, 2023
Merged

ci: improve Windows support #506

merged 3 commits into from Feb 19, 2023

Conversation

webstech
Copy link
Contributor

This patch series has been tested on Windows in cmd and wsl/bash environments.

  1. ci - teenytest-proxy Windows support
    npm installs packages differently based on the platform. The .bin entry the proxy was using is a symlink on UNIX type platforms but may have three different forms on WIndows. The actual installed package will now be required directly. This is still a temporary patch pending fixes for the issues identified in the proxy file.

  2. dev: support Windows based developers
    Add control so files are checked out with lf and not crlf. A number of tests are shell scripts that run under bash and Windows lineends are not supported.

  3. ci: do not expect shebang support on Windows
    Specify command to run in scripts named 'test:example:*'.

This is to support PR #505.

npm installs packages differently based on the platform.  The `.bin`
entry the proxy was using is a symlink on UNIX type platforms but may have
three different forms on WIndows.  The actual installed package will
now  be required directly.  This is still a temporary patch pending
fixes for the issues identified in the proxy file.

Signed-off-by: Chris. Webster <chris@webstech.net>
Add control so files are checked out with lf and not crlf.  A number of
tests are shell scripts that run under bash and Windows lineends are not
supported.

Signed-off-by: Chris. Webster <chris@webstech.net>
Specify command to run in scripts named 'test:example:*'.

Signed-off-by: Chris. Webster <chris@webstech.net>
@webstech
Copy link
Contributor Author

@searls This PR is ready for your review and run. I have verified it runs on GitHub actions windows-latest over here.

@searls searls merged commit 56d5b2b into testdouble:main Feb 19, 2023
2 checks passed
@searls
Copy link
Member

searls commented Feb 19, 2023

Does this end your 3-repo journey, @webstech? Or was there more to be done with respect to what semantic-release needs for windows support? Do I need to cut a new release of anything else for you?

@webstech
Copy link
Contributor Author

Does this end your 3-repo journey, @webstech? Or was there more to be done with respect to what semantic-release needs for windows support? Do I need to cut a new release of anything else for you?

Sorry but your pain continues. ☹️I opened two more PRs to handle globing issues after chasing down a test case count difference. It seems Windows prefers '"' quoting. Some package.json used that and some used single quotes. These changes are test related so new releases are not really needed.

Thanks for bearing with me through this. Windows support for semantic-release is available. This journey started with getting the ci to run on Windows. That is available now so will see if they add Windows to the ci runs. This has been an interesting and educational experience.

@searls
Copy link
Member

searls commented Feb 19, 2023

All good, thanks for your help! The entire Node ecosystem will be win32 friendly by the time you're done

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.

None yet

2 participants