-
Notifications
You must be signed in to change notification settings - Fork 5.6k
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
feat(openapi-tooling): add checks for API breaking changes #23370
feat(openapi-tooling): add checks for API breaking changes #23370
Conversation
Missing ChangesetsThe following package(s) are changed by this PR but do not have a changeset:
See CONTRIBUTING.md for more information about how to add changesets. Changed Packages
|
Uffizzi Cluster |
Summary for commit (5f549db)1 API had breaking changes. 1 API had warnings. APIs with Changes
APIs with Warnings
Routes with Breakages
|
This PR has been automatically marked as stale because it has not had recent activity from the author. It will be closed if no further activity occurs. If the PR was closed and you want it re-opened, let us know and we'll re-open the PR so that you can continue the contribution! |
62490e5
to
d5c2f8d
Compare
This PR has been automatically marked as stale because it has not had recent activity from the author. It will be closed if no further activity occurs. If the PR was closed and you want it re-opened, let us know and we'll re-open the PR so that you can continue the contribution! |
This PR has been automatically marked as stale because it has not had recent activity from the author. It will be closed if no further activity occurs. If the PR was closed and you want it re-opened, let us know and we'll re-open the PR so that you can continue the contribution! |
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com> Signed-off-by: web-next-automation <web-platform@doordash.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com> Signed-off-by: web-next-automation <web-platform@doordash.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com> Signed-off-by: web-next-automation <web-platform@doordash.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com> Signed-off-by: web-next-automation <web-platform@doordash.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com> Signed-off-by: web-next-automation <web-platform@doordash.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com> Signed-off-by: web-next-automation <web-platform@doordash.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com> Signed-off-by: web-next-automation <web-platform@doordash.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com> Signed-off-by: web-next-automation <web-platform@doordash.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com> Signed-off-by: web-next-automation <web-platform@doordash.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com> Signed-off-by: web-next-automation <web-platform@doordash.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com> Signed-off-by: web-next-automation <web-platform@doordash.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com> Signed-off-by: web-next-automation <web-platform@doordash.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com> Signed-off-by: web-next-automation <web-platform@doordash.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com> Signed-off-by: web-next-automation <web-platform@doordash.com>
Signed-off-by: Aramis Sennyey <159921952+aramissennyeydd@users.noreply.github.com>
Signed-off-by: Aramis Sennyey <159921952+aramissennyeydd@users.noreply.github.com> Signed-off-by: web-next-automation <web-platform@doordash.com>
0f78254
to
5d091a6
Compare
Signed-off-by: web-next-automation <web-platform@doordash.com>
Signed-off-by: web-next-automation <web-platform@doordash.com>
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.
This is super helpful, thanks for opening this pull request!
Just left non-blocking comments 🙌🏻
# Fetch output (zip archive) from the workflow run that triggered this workflow. | ||
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 | ||
with: | ||
script: | |
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.
This script looks similar to what we are doing on the uffizzi-preview
action here, would it be a good idea to put it in /scripts
and reuse it somehow? BTW, I'm not sure if what I suggested is recommended, let me check with @backstage/maintainers 🙂
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 we could? The concern is users being able to edit the script and grab credentials, but I think a script in the secondary action would be fine as it would run from master.
results.completed.length > 0 | ||
? `### APIs with Changes | ||
|
||
<table> |
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 noticed that the text is a bit hard to read because there's no indentation or syntax highlighting.... Is it possible to use a template? It would be nice to have this if it's possible and doesn't require too much effort. It might not be changed frequently, so I understand if it's not worth it
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 agree it's not super readable, but I pulled this pretty much intact from the Optic codebase and I'd prefer to keep it as is for now to handle any updates to keep it in line with the output from Optic CLI.
plugins/catalog-backend/package.json
Outdated
@@ -42,6 +42,7 @@ | |||
], | |||
"scripts": { | |||
"build": "backstage-cli package build", | |||
"check:api": "backstage-repo-tools package schema openapi check", |
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.
Nit: This is something that may be not noticed by plugin developers who don't see the changelog. Is there a way to show what's new in this cli? For example, if you use the verify command log that there is a new check command as well, or perhaps other ideas to make this more visible to other plugin developers since it's optional?
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 haven't put much thought into it, new commands in CLI seems like a hard problem to tackle, any examples of what you're suggesting that you could point me to?
@@ -49,6 +49,7 @@ | |||
"@stoplight/spectral-rulesets": "^1.18.0", | |||
"@stoplight/spectral-runtime": "^1.1.2", | |||
"@stoplight/types": "^14.0.0", | |||
"@useoptic/openapi-utilities": "^0.54.8", |
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.
Curiosity: The community version of optic appears to be sufficient for us. Do you have any concerns?
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.
Not sure I'm following, wdym?
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
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.
Alright, I'd say let's try this out and then tweak if needed. Maybe consolidate the scripts or so if we feel it gets unwieldy. But for now ... happy to merge and iterate
Thank you for contributing to Backstage! The changes in this pull request will be part of the |
Hey, I just made a Pull Request!
This is the initial work to integrate with Optic's breaking changes checks. You can check the output from the artifacts of the API Breaking Changes (Trigger) job as
comment.md
. This builds on #18689 with better security.✔️ Checklist
Signed-off-by
line in the message. (more info)