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

Change approach for Prism fixtures #2081

Closed
andyw8 opened this issue May 22, 2024 · 7 comments
Closed

Change approach for Prism fixtures #2081

andyw8 opened this issue May 22, 2024 · 7 comments
Assignees
Labels
chore Chore task

Comments

@andyw8
Copy link
Contributor

andyw8 commented May 22, 2024

In #1090, we added Prism as a submodule so that we could test against the latest fixtures.

This was useful previously, but now that Prism is very stable, we rarely see any failures.

The current approach has an annoyance for developers, because it means git status will often show there are changed files, e.g.:

modified: test/fixtures/prism (new commits)

I'd like to propose that we remove the submodule reference, but continue to test against the fixtures in CI only, using a slightly modified approach, e.g. cloning the Prism repo as a CI step.

@andyw8 andyw8 added chore Chore task server This pull request should be included in the server gem's release notes and removed server This pull request should be included in the server gem's release notes labels May 22, 2024
@Earlopain
Copy link
Contributor

Speaking of annoyances, this is totally unrelated but I wanted to bring this up for a while now and this seems like as good a place as any:

The thing that annoys me the most about contributing here is the label check (which doesn't even compare against the occasional git status notice). Every PRs workflow here fails which sends me a notification to both the GitHub app and I get an email as well. I understand what you're going for with that check, but would it makes sense to open an issue thinking about alternate ways to achieve the same thing?

@st0012
Copy link
Member

st0012 commented May 29, 2024

but continue to test against the fixtures in CI only

There were a few times only fixtures caught issues about my change, so making it CI-only may make debugging harder.

The thing that annoys me the most about contributing here is the label check

Yeah that makes complete sense, as you probably can't address that yourself as a contributor.
Perhaps we can use https://github.com/actions/labeler to apply labels automatically? It doesn't need to be sophisticated enough to replace the check completely, just to make sure it passes when the PR is first opened, like assigning server and vscode based on /lib and /vscode should already make it less noisy?

@vinistock
Copy link
Member

I agree with Stan, I would not make the fixture stuff CI only. Just this morning while working on #2098 the fixtures caught a bug in my implementation.

Regarding the label stuff, even if we applied the server or vscode label, CI will still fail because we need to know the type of change for the changelog generation.

I don't know how we can address this to be honest. We can to block merging so that maintainers are reminded to label the PRs before shipping, but don't want the failure to show up for contributors.

@andyw8
Copy link
Contributor Author

andyw8 commented Jun 3, 2024

Regarding the labels:

We had an idea to only run that check once the PR is approved by a maintainer, who could be responsible for adding the label. But unfortunately there is no option for that to be a trigger:

https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull_request

@vinistock
Copy link
Member

There seems to be an event for when a pull request review is submitted. We'd probably need to hook into that one.

@andyw8
Copy link
Contributor Author

andyw8 commented Jun 3, 2024

Or how about this: #2122

@andyw8
Copy link
Contributor Author

andyw8 commented Jun 4, 2024

We've changed the labelling behaviour so that it only runs that check after approval: #2123

We've leave the Prism fixtures approach alone for now.

@andyw8 andyw8 closed this as completed Jun 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chore Chore task
Projects
None yet
Development

No branches or pull requests

4 participants