From 8a1b1410bb0bb92ba6194d4980ae2bf3a428975d Mon Sep 17 00:00:00 2001 From: tolik518 Date: Mon, 4 May 2026 22:50:54 +0200 Subject: [PATCH] knotserver/git: skip unknown files in language breakdown --- appview/repo/index.go | 13 ++++++++++++- knotserver/git/language.go | 2 +- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/appview/repo/index.go b/appview/repo/index.go index 8d93117d..f5824c27 100644 --- a/appview/repo/index.go +++ b/appview/repo/index.go @@ -162,7 +162,9 @@ func (rp *Repo) getLanguageInfo( orm.FilterEq("ref", currentRef), ) - if err != nil || langs == nil { + if err != nil || langs == nil || containsOtherLanguage(langs) { + langs = nil + // non-fatal, fetch langs from ks via XRPC xrpcc := &indigoxrpc.Client{ Host: rp.config.KnotMirror.Url, @@ -238,6 +240,15 @@ func (rp *Repo) getLanguageInfo( return languageStats, nil } +func containsOtherLanguage(langs []models.RepoLanguage) bool { + for _, l := range langs { + if l.Language == enry.OtherLanguage { + return true + } + } + return false +} + // buildIndexResponse creates a RepoIndexResponse by combining multiple xrpc calls in parallel func (rp *Repo) buildIndexResponse(ctx context.Context, repo *models.Repo, ref string) (*types.RepoIndexResponse, error) { xrpcc := &indigoxrpc.Client{Host: rp.config.KnotMirror.Url} diff --git a/knotserver/git/language.go b/knotserver/git/language.go index 538d36cb..538e63a1 100644 --- a/knotserver/git/language.go +++ b/knotserver/git/language.go @@ -33,7 +33,7 @@ func (g *GitRepo) AnalyzeLanguages(ctx context.Context) (LangBreakdown, error) { } langType := enry.GetLanguageType(language) - if langType != enry.Programming && langType != enry.Markup && langType != enry.Unknown { + if langType != enry.Programming && langType != enry.Markup { return nil } -- 2.51.2