From f1a3e2fe216aa68276946c09368a1f4d8a281e45 Mon Sep 17 00:00:00 2001 From: Fernandez Ludovic Date: Wed, 24 Feb 2021 01:23:46 +0100 Subject: [PATCH] feat: support RelatedInformation analysis. --- pkg/golinters/goanalysis/linter.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/pkg/golinters/goanalysis/linter.go b/pkg/golinters/goanalysis/linter.go index f1cfcca8398c..d73739db0750 100644 --- a/pkg/golinters/goanalysis/linter.go +++ b/pkg/golinters/goanalysis/linter.go @@ -220,18 +220,31 @@ func buildIssues(diags []Diagnostic, linterNameBuilder func(diag *Diagnostic) st for i := range diags { diag := &diags[i] linterName := linterNameBuilder(diag) + var text string if diag.Analyzer.Name == linterName { text = diag.Message } else { text = fmt.Sprintf("%s: %s", diag.Analyzer.Name, diag.Message) } + issues = append(issues, result.Issue{ FromLinter: linterName, Text: text, Pos: diag.Position, Pkg: diag.Pkg, }) + + if len(diag.Related) > 0 { + for _, info := range diag.Related { + issues = append(issues, result.Issue{ + FromLinter: linterName, + Text: fmt.Sprintf("%s(related information): %s", diag.Analyzer.Name, info.Message), + Pos: diag.Pkg.Fset.Position(info.End), + Pkg: diag.Pkg, + }) + } + } } return issues }