fix(deps): update module github.com/google/go-github/v45 to v91 - #1698
fix(deps): update module github.com/google/go-github/v45 to v91#1698red-hat-konflux[bot] wants to merge 1 commit into
Conversation
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
|
|
🤖 Finished Review · ✅ Success · Started 5:51 AM UTC · Completed 6:02 AM UTC Commit: Runtime: claude · Model: opus → claude-opus-4-6 · Effort: high · Cost: $2.04 |
|
Risk Assessment: moderate (2/5) DetailsBot-authored single-file dependency update (go.mod, 2 lines) with minimal blast radius and no CI or security-sensitive path changes; moderate score driven by absence of accompanying test changes and a large major-version jump (v45 to v91) warranting standard dependency review. |
ReviewFindingsCritical
High
Next steps:
|
| github.com/google/cel-go v0.28.1 | ||
| github.com/google/go-containerregistry v0.20.7 | ||
| github.com/google/go-github/v45 v45.2.0 | ||
| github.com/google/go-github/v91 v91.0.0 |
There was a problem hiding this comment.
[critical] build breakage / incomplete module migration
The PR updates go.mod to require github.com/google/go-github/v91 but does not update any of the 12 non-vendor Go source files that still import github.com/google/go-github/v45/github. In Go modules, v45 and v91 are entirely different module paths. With v45 removed from go.mod but still referenced in import statements, the project will fail to compile. Affected files: git/github/github.go, git/github/github_test.go, status/reporter_github.go, status/reporter_github_test.go, pkg/metrics/githubapp.go, pkg/metrics/githubapp_test.go, e2e-tests/pkg/clients/github/client.go, e2e-tests/pkg/clients/github/git.go, e2e-tests/pkg/clients/github/pull_request.go, e2e-tests/pkg/clients/github/repositories.go, e2e-tests/tests/integration-service/status-reporting-to-pullrequest.go, e2e-tests/tests/integration-service/group-snapshots-tests.go.
Suggested fix: All import statements referencing github.com/google/go-github/v45/github must be updated to github.com/google/go-github/v91/github. Each call site must be audited against the v91 API and adapted. The vendor directory must also be refreshed via go mod tidy && go mod vendor.
| github.com/google/cel-go v0.28.1 | ||
| github.com/google/go-containerregistry v0.20.7 | ||
| github.com/google/go-github/v45 v45.2.0 | ||
| github.com/google/go-github/v91 v91.0.0 |
There was a problem hiding this comment.
[high] API compatibility / breaking changes
Even if all import paths were mechanically updated from v45 to v91, the go-github library has had 46 major version bumps between these versions. The codebase uses go-github APIs for GitHub CheckRuns, commit statuses, pull requests, and repository operations. A purely mechanical import-path rename will likely produce additional compilation errors from API incompatibilities. Additionally, ghinstallation/v2 pulls in go-github/v75 as an indirect dependency, suggesting it is not built against v91.
Suggested fix: Review the go-github changelog and migration guides for all major versions between v45 and v91. Audit every call site for API compatibility. Verify that ghinstallation/v2 is compatible with go-github v91.
This PR contains the following updates:
v45.2.0→v91.0.0Warning
Some dependencies could not be looked up. Check the warning logs for more information.
Release Notes
google/go-github (github.com/google/go-github/v45)
v91.0.0Compare Source
This release contains the following breaking API changes:
EditCommenttoUpdateCommentonPullRequestsService, split review comment request bodies, and pass by value (#4493)BREAKING CHANGE:
PullRequestsService.CreateCommentnow takesCreatePullRequestCommentRequestby value;PullRequestsService.EditCommentis nowUpdateCommentand takesUpdatePullRequestCommentRequestby value.Keyrequest bodies intoCreateDeployKeyRequest,CreateUserKeyRequestandCreateSSHSigningKeyRequestand pass by value (#4477)BREAKING CHANGE:
RepositoriesService.CreateKey,UsersService.CreateKeyandUsersService.CreateSSHSigningKeynow takeCreateDeployKeyRequest,CreateUserKeyRequestandCreateSSHSigningKeyRequestby value.PendingDeploymentsRequestandReviewCustomDeploymentProtectionRuleRequestby value (#4475)BREAKING CHANGE:
ActionsService.PendingDeploymentsandActionsService.ReviewCustomDeploymentProtectionRulenow takePendingDeploymentsRequestandReviewCustomDeploymentProtectionRuleRequestby value.EditCommenttoUpdateCommentonIssuesService, pass a newIssueCommentRequestby value, and add missingIssueCommentfields (#4444)BREAKING CHANGE:
IssuesService.CreateCommentnow takesIssueCommentRequestby value;IssuesService.EditCommentis nowUpdateCommentand takesIssueCommentRequestby value.ImpersonateUserOptionstoCreateUserImpersonationRequestand pass by value (#4462)BREAKING CHANGE:
AdminService.CreateUserImpersonationnow takesCreateUserImpersonationRequestby value instead of*ImpersonateUserOptions.BREAKING CHANGE:
CreateTeamandUpdateTeamBy*now take new body params by value.EditMilestonetoUpdateMilestone, splitMilestonerequest bodies intoCreateMilestoneRequestandUpdateMilestoneRequest, and pass by value (#4438)BREAKING CHANGE:
IssuesService.CreateMilestonenow takes a newCreateMilestoneRequestby value;IssuesService.EditMilestoneis nowUpdateMilestoneand takes a newUpdateMilestoneRequestby value.UpdatePreReceiveHookrequest body by value via newUpdatePreReceiveHookRequest(#4434)BREAKING CHANGE:
RepositoriesService.UpdatePreReceiveHooknow takes a newUpdatePreReceiveHookRequestby value instead of*PreReceiveHook.UsersService.EdittoUpdate, introduceUserUpdateRequest, and pass request by value (#4433)BREAKING CHANGE:
UsersService.Editis nowUpdateand uses a newUserUpdateRequestbody value.UpdateUserLDAPMappingRequestandUpdateTeamLDAPMappingRequest(#4432)BREAKING CHANGE:
AdminService.UpdateUserLDAPMappingandUpdateTeamLDAPMappingnow takeUpdateUserLDAPMappingRequestandUpdateTeamLDAPMappingRequest(with non-pointerLDAPDN) by value....and the following additional changes:
MergeAsyncandGetMergeAsyncResultsupport (#4491)Client.Doresponse decoding with a buffer pool (#4494)paramcheckallowlist entries (#4476)publictoggle on repository visibility rules (#4455)Fprintfinfmtpercentvlinter check (#4443)Userentry from the paramcheck allowlist (#4437)openapi_operations.yaml(#4430)v90.0.0Compare Source
This release contains the following breaking API changes:
UpdateConnectedExternalGrouprequest body by value via newUpdateConnectedExternalGroupRequest(#4425)BREAKING CHANGE:
TeamsService.UpdateConnectedExternalGroupnow takesUpdateConnectedExternalGroupRequest(with non-pointerGroupID) by value.PullRequestReviewDismissalRequesttoPullRequestDismissReviewRequest, addPullRequestSubmitReviewRequest, and pass review request bodies by value (#4406)BREAKING CHANGE:
PullRequestReviewDismissalRequestis nowPullRequestDismissReviewRequestwith non-pointerMessageandPullRequestsService.DismissReviewtakes it by value;PullRequestsService.SubmitReviewnow takes a newPullRequestSubmitReviewRequest.CreateOrUpdateCustomRepoRoleOptionsintoCreateCustomRepoRoleRequestandUpdateCustomRepoRoleRequestand pass by value (#4401)BREAKING CHANGE:
CreateOrUpdateCustomRepoRoleOptionsis split intoCreateCustomRepoRoleRequest(with non-pointerNameandBaseRole) andUpdateCustomRepoRoleRequest;OrganizationsService.CreateCustomRepoRoleandUpdateCustomRepoRolenow take these request types by value.EditLabeltoUpdateLabel, SplitLabelintoCreateLabelRequest&UpdateLabelRequestand pass by value (#4400)BREAKING CHANGE:
IssuesService.CreateLabelnow takesCreateLabelRequestby value (with required non-pointerName);IssuesService.EditLabelrenamed toUpdateLabel, taking anUpdateLabelRequestby value.AutolinkOptionstoCreateAutolinkRequest,AddAutolinktoCreateAutolink, and pass the body by value (#4399)BREAKING CHANGE:
AutolinkOptionsis nowCreateAutolinkRequestwith non-pointerKeyPrefixandURLTemplate;RepositoriesService.AddAutolinkis nowCreateAutolinkand passesbodyby value.IssueRequestintoCreateIssueRequest&UpdateIssueRequestand pass by value (#4396)BREAKING CHANGE:
IssueService.Editis renamed toIssueService.Update.NewPullRequesttoCreatePullRequestand pass it by value (#4395)BREAKING CHANGE:
NewPullRequestis renamed toCreatePullRequest,PullRequests.Createnow takes it by value, andCreatePullRequest.HeadandCreatePullRequest.Baseare nowstring.SarifAnalysisby value (#4394)BREAKING CHANGE:
CodeScanningService.UploadSarifnow takesbodyby value and its required fields are no longer pointers.CreateDeploymentBranchPolicyRequestandUpdateDeploymentBranchPolicyRequestby value (#4382)BREAKING CHANGE:
RepositoriesService.CreateDeploymentBranchPolicyandUpdateDeploymentBranchPolicynow takebodyby value and the requiredNamefield is of typestring.TemplateRepoRequestby value inRepositories.CreateFromTemplate(#4378)BREAKING CHANGE:
RepositoriesService.CreateFromTemplatenow passesbodyby value andNameis now required and passed by value.RepositoryMergeRequestandRepoMergeUpstreamRequestby value (#4372)BREAKING CHANGE:
RepositoriesService.MergeandRepositoriesService.MergeUpstreamnow passbodyby value and required struct fields are now values.BREAKING CHANGE:
DependabotServicemethods involving secrets have new params and return values....and the following additional changes:
MetaService.ListAPIVersions(#4422)DeleteCodeQLDatabasefor code scanning (#4421)Stackfield toPullRequestfor stacked pull requests (#4423)search_typesupport to issue search (#4414)v89.0.0Compare Source
This release contains the following breaking API changes:
DeploymentRequestandDeploymentStatusRequestby value (#4361)BREAKING CHANGE:
CreateDeploymentandCreateDeploymentStatusnow takeDeploymentRequestandDeploymentStatusRequestby value;DeploymentRequest.RefandDeploymentStatusRequest.Stateare nowstring, andDeploymentRequest.RequiredContextsis now[]string.HookConfigby value and renameEditHookConfigurationtoUpdateHookConfiguration(#4360)BREAKING CHANGE:
EditHookConfigurationis renamed toUpdateHookConfigurationonRepositoriesServiceandOrganizationsService; these methods andAppsService.UpdateHookConfignow takeHookConfigby value.OIDCSubjectClaimCustomTemplateby value in the OIDC subject-claim Set methods (#4340)BREAKING CHANGE:
SetOrgOIDCSubjectClaimCustomTemplateandSetRepoOIDCSubjectClaimCustomTemplatenow take theirbodyparams by value.BREAKING CHANGE:
ActionsServicemethods involving variables have new params and return values.BREAKING CHANGE:
ActionsServicemethods involving secrets have new params and return values.CreateJITConfigRequestby value and renameGenerate*JITConfigtoCreate*JITConfig(#4337)BREAKING CHANGE: the JIT config methods are renamed from
Generate*JITConfigtoCreate*JITConfig, and they now takeCreateJITConfigRequest(renamed fromGenerateJITConfigRequest) by value instead of by pointer.EditReleaseAssettoUpdateReleaseAsset(#4336)BREAKING CHANGE:
GenerateReleaseNotesnow takesGenerateNotesRequestby value (renamed fromGenerateNotesOptions);EditReleaseAssetis renamed toUpdateReleaseAssetand takesUpdateReleaseAssetRequestby value.EditReleasetoUpdateRelease(#4329)BREAKING CHANGE:
CreateRelease&UpdateReleasenow takeRepositoryReleaseby value;EditReleaseis renamed toUpdateRelease.GistsServicerequired params by value (#4320)BREAKING CHANGE:
GistsServicemethods now pass required params by-value instead of by-ref.BREAKING CHANGE:
UpdateProvisionedOrgMembershipandUpdateAttributeForSCIMUserparams and return values changed.LicenseStatusresponse andSupportkeytype (#4297)BREAKING CHANGE:
LicenseStatus.SupportKeytype changed from*stringto*boolandLicensereturn type is no longer a slice.BREAKING CHANGE:
SelectedRepositoryIDs []int64is nowRepositories []stringin*AppInstallationRepositoriesOptions....and the following additional changes:
AccessSourcetoTeam(#4344)CONTRIBUTING.md(#4341)organdorg_idcan be an array (#4333)openapi_operations.yaml(#4331)time.DatewithreferenceTime(#4325)ProjectV2Item.UnmarshalJSON(#4323)GetBodyon uploads for HTTP/2 retry (#4318)AbuseRateLimitError.Is(#4292)&xvariables with inlinePtr(value)calls (#4289)GetOrgAICreditUsageandGetUserAICreditUsageendpoints (#4282)testJSONBodyhelper for request body assertions (#4283)Repository(#4268)RequiredReviewerunmarshal (#4270)openapi_operations.yaml(#4265)extraneousnewlinter to catch unnecessary use of value var (#4249)v88.0.0Compare Source
This release contains the following breaking API changes:
Find*methods toGet*(#4243)BREAKING CHANGE: App installation methods are renamed from
Find*toGet*....and the following additional changes:
openapi_operations.yaml(#4242)GetParentIssuefor sub-issues (#4232)v87.0.0Compare Source
This release contains the following breaking API changes:
GetConsumedLicensestoListConsumedLicenses(#4226)BREAKING CHANGE:
EnterpriseService.GetConsumedLicensesis nowEnterpriseService.ListConsumedLicenses.GetAllRepositoryRulesetstoListAllRepositoryRulesets(#4227)BREAKING CHANGE:
OrganizationsService.GetAllRepositoryRulesetsis nowOrganizationsService.ListAllRepositoryRulesets.GetRulesForBranchtoListRulesForBranch(#4229)BREAKING CHANGE:
RepositoriesService.GetRulesForBranchis nowRepositoriesService.ListRulesForBranch.BREAKING CHANGE: Clients are now constructed with a nicer builder pattern. See docs for details.
IssueFieldValueswith schema (#4207)BREAKING CHANGE:
IssueRequest.IssueFieldValuestype is changed....and the following additional changes:
MarshalJSON(#4211)httptestserver to prevent test flakiness (#4210)CodeSecurityConfiguration(#4205)go-githubfromv85tov86in /scrape (#4199)v86.0.0Compare Source
This release contains the following breaking API changes:
BREAKING CHANGE: All internal calls now provide
Contextvia theRequestitself.PrivateRegistries(#4159)BREAKING CHANGE:
PrivateRegistriesServiceis updated to API version2026-03-10with struct and response changes....and the following additional changes:
go-githubtov86.0.0(#4198)otelmodule name (#4187)deploy_keys_enabled_for_repositoriesand secret scanning custom link fields toOrganizationstruct (#4188)testJSONBodyhelper for request body assertions in tests (#4183)RetryAfterinAbuseRateLimitError.Erroroutput (#4181)IDin Ruleset API responses (#4178)ArchivedAtfield toOrganizationstruct (#4179)v85.0.0Compare Source
This release contains the following breaking API changes:
createandupdateon custom org role (#4075)BREAKING CHANGE:
GetOrgRole,CreateCustomOrgRole, andUpdateCustomOrgRolehave new params and return values.idfromint64tostringinActivityService.MarkThreadDone(#4056)BREAKING CHANGE:
ActivityService.MarkThreadDoneacceptsstringidinstead ofint64....and the following additional changes:
openapi_operations.yaml(#4172)CodeSecuritytoSecurityAndAnalysis(#4155)DownloadCopilotMetricshelper method (#4149)apiVersionto GitHub API link (#4147)redundantptrcustom linter (#4148)github.Ptrcalls (#4145)Userfields (#4146)Marketplace.Stubbedduring client copy (#4144)sanitizeURLsecrets redactions (#4126)[]*Tfields ingen-iterators.go(#4128)ValidatePayloadFromBody(#4125)requestCountin rate limit tests (#4124)generate.shby removinggit worktreeand using generator-based check (#4120)golangci-lint-action; removenewreposecretwithlibsodium(#4119)structfield.Settingsincheck-structfield-settings(#4108)newand&SomeStruct{}and add newextraneousnewcustom linter (#4106)NetworkConfigurationIDandHostedRunnersURLto enterprise runner group types (#4099)ListRunnerGroupHostedRunnersfor org runner groups (#4100)default: nonelinters; remove duplicated (#4097)Cursorpagination for*.ListHookDeliveriesIter(#4096)ParseWebHook(#4076)script/lint.shoutput simpler to read (#4073)client_idfield toApp(#4060)CopilotServicetests (#4058)TestDo_rateLimit_abuseRateLimitError_xRateLimitReset(#4057)SASas a common initialism tostructfield(#4054)README.md(#4053)v84.0.0Compare Source
This release contains the following breaking API changes:
BREAKING CHANGE:
CreateWorkflowDispatchEventByIDandCreateWorkflowDispatchEventByFileNamenow return*WorkflowDispatchRunDetails.optsfor methods listing issues and sub-issues (#4016)BREAKING CHANGE: Split
IssuesService.ListintoIssuesService.ListAllIssuesandIssuesService.ListUserIssues.IssuesService.ListByOrgnow acceptsIssueListByOrgOptions.SubIssueService.ListByIssuenow acceptsListOptions....and the following additional changes:
white spaceinstead ofwhitespace(#4047)testJSONMarshal(#4042)TestNewFormRequest(#4043)typefield (#4037)Codespaces,CopilotandActionsInboundtoAPIMeta(#3975)go:fix inlinefor deprecated ptr funcs (#4034)ListFineGrainedPersonalAccessTokenRequestsfor org (#4022)golangci-lintand enable some revive rules (#4025)slicesinstead ofsort(#4020)v83.0.0Compare Source
I don't recall ever having this many breaking API changes in a single release, and the last release was only 3 weeks ago!
A special heart-felt thanks goes to @merchantmoh-debug, @Not-Dhananjay-Mishra, and @alexandear for the addition of a long-requested feature to this repo:
List*methods that support pagination (change your call fromList*toList*Iterand make sure to use a rate-limiting transport or you will quickly exhaust your quotas!)A second set of heart-felt thanks go to @stevehipwell for setting up our REVIEWERS file and to our amazing volunteer reviewers:
who have reduced our code-review wait times from days (sometimes weeks) down to literally hours and thereby enable rapid responses to bug fixes and attempts to stay up-to-date with the ever-evolving GitHub v3 API.
This release contains the following breaking API changes:
PackageGetAllVersionsinto two separate methodsListPackageVersionsandListUserPackageVersions(#4014)BREAKING CHANGE:
PackageGetAllVersionsis now divided intoListPackageVersionsandListUserPackageVersions.ListAutolinks(#4012)BREAKING CHANGE:
opts *ListOptionsis removed fromRepositoriesService.ListAutoLinks.ListOptionsfromPullRequestsService.ListReviewers(#4009)BREAKING CHANGE:
PullRequestsService.ListReviewersno longer hasopts *ListOptions.PremiumRequestUsageItemquantities tofloat64(#4002)BREAKING CHANGE:
PremiumRequestUsageItemnumeric fields are nowfloat64.ListOptionstoListDeploymentBranchPoliciesandListCustomDeploymentRuleIntegrations(#3988)BREAKING CHANGE:
RepositoriesService.ListDeploymentBranchPoliciesandRepositoriesService.ListCustomDeploymentRuleIntegrationsnow acceptListOptions.urlstruct tags by value instead of by reference (#3991)BREAKING CHANGE: Many
*Optionsstructs now passomitemptyURL struct fields by value instead of by reference.IssuesServicelist methods (#3984)BREAKING CHANGE:
ListCursorOptionsis removed fromIssueListOptions.PerPagetoOrganizationsListOptions(#3986)BREAKING CHANGE:
OrganizationsListOptionsnow contains onlyPerPageinstead ofListOptions.ListLicensesOptionstoLicensesService.List(#3981)BREAKING CHANGE:
LicensesService.Listnow acceptsListLicensesOptionsfor pagination.SCIMEnterpriseAttributeOperation.Valuefrom*stringtoany(#3971)BREAKING CHANGE:
SCIMEnterpriseAttributeOperation.Valueis changed from*stringtoany.ListOptionstoRepositoriesService.ListAllTopics(#3978)BREAKING CHANGE:
RepositoriesService.ListAllTopicsnow acceptsListOptionsfor pagination.UserListOptions.ListOptionswithUserListOptions.PerPage(#3977)BREAKING CHANGE: Replaces
UserListOptions.ListOptionswithUserListOptions.PerPagewhich also removesUsersService.ListAllIter.CreateHostedRunnerRequest,UpdateHostedRunnerRequestinstead ofHostedRunnerRequest(#3973)BREAKING CHANGE:
ActionsService.CreateHostedRunnerandEnterpriseService.CreateHostedRunnernow acceptCreateHostedRunnerRequest;ActionsService.UpdateHostedRunnerandEnterpriseService.UpdateHostedRunnernow acceptUpdateHostedRunnerRequest.RepositoryPermissionsstruct forUser.Permissions(#3963)BREAKING CHANGE:
User.Permissionsis now*RepositoryPermissionsinstead ofmap[string]bool....and the following additional changes:
After(#4007)addOptionsimplementation (#3998)check-structfield-settingsis OK (#4001)fmt.Printin tests (#3999)After(#3994)Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
To execute skipped test pipelines write comment
/ok-to-test.Documentation
Find out how to configure dependency updates in MintMaker documentation or see all available configuration options in Renovate documentation.