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

Canary test workflow, checks that key downstream packages still build #106

Merged
merged 8 commits into from Dec 26, 2021

Conversation

ChristianMurphy
Copy link
Member

Initial checklist

  • I read the support docs
  • I read the contributing guide
  • I agree to follow the code of conduct
  • I searched issues and couldn’t find anything (or linked relevant results below)
  • If applicable, I’ve added docs and tests

Description of changes

Follow up to: unifiedjs/ideas#7

Unified is a large and highly connected community of packages.
Changes to any package could have impact downstream packages.
Currently anticipating impact is a purely manual process.

It could be helpful to use downstream packages, which themselves have comprehensive test suites, to help automatically detect what changes may be breaking or have unintended impacts.

This aims to help alleviate some of that risk by choosing a few key packages.

  • mdast-util-from-markdown
  • remark
  • react-markdown

which build on this, and have heavy usage, and comprehensive test suites, to anticipate potential downstream issues faster.

@github-actions github-actions bot added the 👋 phase/new Post is being triaged automatically label Dec 12, 2021
@ChristianMurphy ChristianMurphy added 🏗 area/tools This affects tooling 🕸️ area/tests This affects tests and removed 👋 phase/new Post is being triaged automatically labels Dec 12, 2021
@github-actions github-actions bot added the 🤞 phase/open Post is being triaged manually label Dec 12, 2021
@ChristianMurphy ChristianMurphy requested a review from a team December 12, 2021 22:44
@codecov-commenter

This comment has been minimized.

@ChristianMurphy

This comment has been minimized.

Copy link
Member

@wooorm wooorm left a comment

Choose a reason for hiding this comment

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

Fixing the CI failure is most important, otherwise, good idea!

.github/workflows/canary.yml Outdated Show resolved Hide resolved
@wooorm
Copy link
Member

wooorm commented Dec 19, 2021

Perhaps something to not run this on every PR? Similar to that “T-Shaped” model from MDX?

@ChristianMurphy
Copy link
Member Author

Perhaps something to not run this on every PR?

I think there would be value in running this on every PR, seeing if code changes impact upstream.
And even if changes aren't code related, it can be an early warning for unrelated upstream issues.
This set of checks itself probably wouldn't be blocking for PRs.

Similar to that “T-Shaped” model from MDX?

There the T-Shaped model has to do with the matrix of jobs run, not when it is run, right?
I did drop windows from the matrix for now, because it appears most upstream projects do not test on Windows.
Which (may) eliminate the need to a T-Shaped model.

@ChristianMurphy ChristianMurphy requested a review from a team December 23, 2021 18:29
.github/workflows/canary.yml Outdated Show resolved Hide resolved
.github/workflows/canary.yml Outdated Show resolved Hide resolved
.github/workflows/canary.yml Outdated Show resolved Hide resolved
.github/workflows/canary.yml Outdated Show resolved Hide resolved
@wooorm
Copy link
Member

wooorm commented Dec 24, 2021

Looking at the, how do you call this, build preview, it looks chaotic imo.

  • Could the canary/* stuff be ordered after main/*?
  • canary / testing / $user/$project -> canary-in-the-gold-mine / $package or citgm / $package maybe?

Screen Shot 2021-12-24 at 16 46 09

@ChristianMurphy
Copy link
Member Author

Could the canary/* stuff be ordered after main/*?

I'm not sure if it can.
The order appears to be non-alphabetical.

canary / testing / $user/$project -> canary-in-the-gold-mine / $package or citgm / $package maybe?

Happy to rename things if wanted, I'm not sure it will fix the order issue though.

@wooorm
Copy link
Member

wooorm commented Dec 24, 2021

I'm not sure if it can. The order appears to be non-alphabetical.

Yeah, though, taking MDX as an example: mdx-js/mdx#1854, it seems to indicate that different YAML files result in unordered, but when inside the same file, it does work?

Happy to rename things if wanted, I'm not sure it will fix the order issue though.

I meant the points separately. I guess $packageName doesn’t make sense though, but $user/$project does, as this seems to be more about the repo rather the npm package?

@ChristianMurphy
Copy link
Member Author

but when inside the same file, it does work?

Moved canary job into main.yml

as this seems to be more about the repo rather the npm package?

it is more about the repositories, updated naming to better reflect this

@ChristianMurphy ChristianMurphy merged commit 2c417bb into micromark:main Dec 26, 2021
@ChristianMurphy ChristianMurphy deleted the canary-testing branch December 26, 2021 17:05
@github-actions

This comment has been minimized.

@wooorm wooorm added 💪 phase/solved Post is done and removed 🤞 phase/open Post is being triaged manually labels Dec 27, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🕸️ area/tests This affects tests 🏗 area/tools This affects tooling 💪 phase/solved Post is done
Development

Successfully merging this pull request may close these issues.

None yet

3 participants