-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
chore(internal/kokoro): port check_incompat_changes #3769
Conversation
Currently failing because
|
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.
Mostly nits, overall LGTM.
@@ -21,33 +21,4 @@ if [[ `go version` != *"go1.16"* ]]; then | |||
exit 0 |
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.
@codyoss I could move this check into shouldRun()
if you want to get rid of this script altogether. WDYT?
Blocked by golang/go#44796 |
Oops, I messed up my git history some how and ive got waaaay too many commits that don't belong. Ignore this please! |
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.
Sounds good to move this to a Go program, but I'm having trouble following the flow of execution. I left some comments about the APIs. Overall, it feels more... complicated (?) than I expected. Hopefully the suggestions I gave help simplify the flow.
Yeah that's reasonable - it is more complicated. This now:
So it's not a direct port, it's a "port+" :) Your suggestions are totally valid though. |
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.
Much more understandable -- thank you!
@codyoss I think you need to approve since you requested changes. |
@noahdietz Sorry about that, did not realize this was waiting on me. |
Only waiting like 1 min :) |
Ports the
apidiff
logic ofcheck_incompat_changes.sh
into a Go programinternal/apidiff
.This new version reads from the
internal/.repo-metadata-full.json
file and runsapidiff
against all packages labeled asga
.When it encounters a manual client or a generated subclient of a submodule, it attempts to find the submodule, change into that directory, and run
apidiff
from there.It will collect all errors/diffs and report them at the end. The script will only fail if there are diffs. If there is an error during apidiff of one of the packages, it will be reported, but it will not fail the script.
Fixes #3764 by parsing the repo-metadata, not a regexp in a bash script.