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

Replace Appveyor windows testing with GHA #5599

Draft
wants to merge 26 commits into
base: master
Choose a base branch
from

Conversation

jonchurch
Copy link
Member

@jonchurch jonchurch commented Apr 14, 2024

Edit: Ah, this will take more work than I realized. our current CI uses several cli tools to get its job done. I can make this work, but not in the 15 mins I had when I first opened the PR. I setup nvm-windows to allow us to install node-versions below 6 (which is lowest supported by actions/node-setup as far as I can tell, which would be my preference) but there is still work to be done here. Maybe we want to use actions/setup-node-using-nvm

Currently we test against unbuntu-latest on github actions, and then on windows with appveyor.

I want to remove the appveyor dependency, as it has been hanging and slow, holding up PRs for hours at a time.

This PR adds windows-latest to the CI matrix.

I don't know a better way to test this than via PR, and want to run it in the main repo rather than my fork. Will fixup history on my branch once I have something ready to land.

tasks

  • Run tests on windows-latest
  • Split the Lint step out so it only runs once, not once per node version/platform combo
  • Drop io.js support officially, testing for it isn't worth it, if we support node 4 we support io.js (I want to do this, but eh, if it's not too much work to continue to run CI for io.js I'll keep it in instead. haven't invested much in this)
  • Figure out a fix for the npm install failure under Node 5
  • Remove Appveyor Connection
  • Figure out how we are using codecoverage, where do we report it? (we report it to coveralls, in a CI step, viewable here)
    • Investigate reducing coverage runs (do we really need to run for every version?)
  • Rename the CI from Experimental
  • Replace existing v4 CI
  • Open Issue for v5 CI based on the work here

@jonchurch jonchurch marked this pull request as draft April 14, 2024 08:58
@UlisesGascon UlisesGascon added the semver-ignore This change does not have any impact in semver (docs, tooling, etc..) label Apr 17, 2024
@jonchurch
Copy link
Member Author

Note to self: Remove the lint step that runs for every Node Version, it is redundant as we are static analyzing source code, which will not differ based on the Node version.

@jonchurch
Copy link
Member Author

Woah, ran into this npm/cli#681 on Node 5 here, dunno what the fix is. I guess update npm? Im just using what ships w/ the latest version of Node 5

@jonchurch
Copy link
Member Author

jonchurch commented Apr 20, 2024

Okay, Node 21 seems to have added a new method! QUERY which is awesome, looks to have landed here nodejs/node#51719 in 21.7.2 (changelog)

That's why I have a failing test here on 21, dunno the actual root cause though.

@wesleytodd any idea what needs to be done to router to support QUERY? Or maybe the failure is on Supertest?

To repro it, nvm install 21 && npm t

@jonchurch jonchurch changed the title Add windows-latest to the ci matrix Replace Appveyor windows testing with GHA Apr 20, 2024
@wesleytodd
Copy link
Member

@wesleytodd any idea what needs to be done to router to support QUERY? Or maybe the failure is on Supertest?

Just to close the loop on this, this was sorted out in other channels. It was not yet fixed correctly in core.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
semver-ignore This change does not have any impact in semver (docs, tooling, etc..)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants