-
Notifications
You must be signed in to change notification settings - Fork 4
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
Setup CI #8
base: main
Are you sure you want to change the base?
Setup CI #8
Conversation
@wesleytodd Node v10 is not supported? |
Hey, that was not intentional. It looks like the little helper package I wrote to make using filesystem fixtures more simple is broken in node@10. https://github.com/wesleytodd/fs-test-fixtures/actions/runs/184565719 I will take a look at why and publish a new version. |
.github/workflows/ci.yaml
Outdated
|
||
on: | ||
schedule: | ||
- cron: '23 4 * * *' # Once, nightly |
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.
I think github started disabling these sort of nightly runs. What value do you see in them when we also run on PR and pushes to main
?
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 are using this setup in wiby
and I assumed this can be also applied here.
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.
I would love to hear the reasoning behind the decision. In projects which are not active daily from multiple contributors I do not usually see the point in a nightly build. I guess I just think of a nightly as a way to integration test many in-flight features from different engineers, so without that it seems better to just test each commit on a PR branch and main
.
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.
I removed it for now and maybe we can kindly summon @dominykas here to add more thoughts regarding night scheduler.
with: | ||
node-version: ${{ matrix.node-version }} | ||
- run: npm install | ||
- run: npm run tests-only |
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.
IMO, a lint failure is a test failure. Is there a reason not to also fail on lint errors and so just run npm t
in all of them? I have in the past seen the lint configuration fail in a certain version of node, and if that is the case I think we would want to know.
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.
I don't really have strong opinion here, from my side both variants are OK, so if you'd like to remove separate lint job and run lint on every node version, please let me know.
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.
It keeps it simple, but I would be interested in hearing others opinions on the topic. Lets not consider this a blocker, and if no one shares an opinion we can merge and revisit later.
Submitted PR with fix - wesleytodd/fs-test-fixtures#1 |
One more place existed in tests using |
@dominykas Should I be integrating the managed test workflow here? Is there a way to use that without |
No, there's no such way. Not sure it even makes sense without |
I was thinking it would just default to current lts lines. I expressed this in the thread in that repo, but my main concern is just that it makes adopting this CI workflow technically a breaking change if packages didn't have it (like this one) initially. |
There is an implicit version regardless? This package does not support all Node.js versions as it is and it never did - it was always testing in a specific set, didn't it? So adding |
When there’s no engines specified, the package supports whatever it happens to work in at any point in the major line, and excluding any of those when adding an engines field is what’s breaking. Your original intention is irrelevant, only what it actually works matters. |
Yeah, I consider the addition of |
🤔 would it make sense to run in all versions if But I mean, we still need to define some minimum version to run in? Even if it's 0.1?
|
I think either this or current
This is why I prefer
Oh yeah, like as soon as we go 1.0 I would say that this drop all but latest lts and whatever versions of npm are supported at the time. |
Yes, if |
Technically correct is not helpful for users here. I understand that it is implicitly all ( |
It's definitely sometimes what I want, as a real user. We can use whatever default in the action we like, but I don't think it's helpful for users to encourage omission of an explicit |
You are unique here lol. But even in that case I would say you can just do |
I think their CI should fail until they add |
We could check the date of when the workflow file was created and use an oldest My personal preference is to not support the missing I do not consider adding it a breaking change, if it does not change the supported version - I feel it's more like a piece of clarifying documentation in that case, because it only defines the expectations in one more place; someone having different expectations to what the author provided is not a breaking change on its own. |
Again, it is only a breaking change if a version that worked at any point in the major line, is excluded by |
Ok, sounds like I am in the minority on this opinion. Honestly I forgot we were having this conversation in this repo and not the |
No description provided.