chore: enable forcetypeassert linter, fix issues (#38804)

Enable [`forcetypeassert`](https://github.com/gostaticanalysis/forcetypeassert)
linter to prevent unchecked type assertions. ~650 issues fixed, most
fixes were clean, some use `setting.PanicInDevOrTesting`.

The only behaviour changes are where code would previously send a 500 error
or panic, a 4xx error is now emitted.

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
This commit is contained in:
silverwind
2026-08-09 10:25:06 +00:00
committed by GitHub
co-authored by wxiaoguang
parent fac8bf2eca
commit 76a81b24f9
248 changed files with 1110 additions and 995 deletions
+5 -4
View File
@@ -5,6 +5,7 @@ package v1_14
import (
"context"
"errors"
"fmt"
"strings"
@@ -106,8 +107,8 @@ func FixPublisherIDforTagReleases(ctx context.Context, x base.EngineMigration) e
commit, err := gitRepo.GetTagCommit(ctx, release.TagName)
if err != nil {
if git.IsErrNotExist(err) {
log.Warn("Unable to find commit %s for Tag: %s in [%d]%s/%s. Cannot update publisher ID.", err.(git.ErrNotExist).ID, release.TagName, repo.ID, repo.OwnerName, repo.Name)
if errNotExist, ok := errors.AsType[git.ErrNotExist](err); ok {
log.Warn("Unable to find commit %s for Tag: %s in [%d]%s/%s. Cannot update publisher ID.", errNotExist.ID, release.TagName, repo.ID, repo.OwnerName, repo.Name)
continue
}
log.Error("Error whilst getting commit for Tag: %s in [%d]%s/%s. Error: %v", release.TagName, repo.ID, repo.OwnerName, repo.Name, err)
@@ -118,8 +119,8 @@ func FixPublisherIDforTagReleases(ctx context.Context, x base.EngineMigration) e
log.Warn("Tag: %s in Repo[%d]%s/%s does not have a tagger.", release.TagName, repo.ID, repo.OwnerName, repo.Name)
commit, err = gitRepo.GetCommit(ctx, commit.ID.String())
if err != nil {
if git.IsErrNotExist(err) {
log.Warn("Unable to find commit %s for Tag: %s in [%d]%s/%s. Cannot update publisher ID.", err.(git.ErrNotExist).ID, release.TagName, repo.ID, repo.OwnerName, repo.Name)
if errNotExist, ok := errors.AsType[git.ErrNotExist](err); ok {
log.Warn("Unable to find commit %s for Tag: %s in [%d]%s/%s. Cannot update publisher ID.", errNotExist.ID, release.TagName, repo.ID, repo.OwnerName, repo.Name)
continue
}
log.Error("Error whilst getting commit for Tag: %s in [%d]%s/%s. Error: %v", release.TagName, repo.ID, repo.OwnerName, repo.Name, err)
+6 -6
View File
@@ -51,16 +51,16 @@ func AddPullRequestRebaseWithMerge(_ context.Context, x base.EngineMigration) er
// Allow the new merge style if all other merge styles are allowed
allowMergeRebase := true
if allowMerge, ok := unit.Config["AllowMerge"]; ok {
allowMergeRebase = allowMergeRebase && allowMerge.(bool)
if allowMerge, ok := unit.Config["AllowMerge"].(bool); ok {
allowMergeRebase = allowMergeRebase && allowMerge
}
if allowRebase, ok := unit.Config["AllowRebase"]; ok {
allowMergeRebase = allowMergeRebase && allowRebase.(bool)
if allowRebase, ok := unit.Config["AllowRebase"].(bool); ok {
allowMergeRebase = allowMergeRebase && allowRebase
}
if allowSquash, ok := unit.Config["AllowSquash"]; ok {
allowMergeRebase = allowMergeRebase && allowSquash.(bool)
if allowSquash, ok := unit.Config["AllowSquash"].(bool); ok {
allowMergeRebase = allowMergeRebase && allowSquash
}
if _, ok := unit.Config["AllowRebaseMerge"]; !ok {