From e4a8a9d449f77b13c0b30af3d9a6864ac7206416 Mon Sep 17 00:00:00 2001 From: quobix Date: Mon, 5 Aug 2024 15:05:46 -0400 Subject: [PATCH] =?UTF-8?q?Added=20`=E2=80=94no-clip`=20flag=20to=20`lint`?= =?UTF-8?q?=20command?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit No clipping on messages (if shown) or JSON paths. --- cmd/lint.go | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/cmd/lint.go b/cmd/lint.go index 2fc333e1..d9960475 100644 --- a/cmd/lint.go +++ b/cmd/lint.go @@ -60,6 +60,7 @@ func GetLintCommand() *cobra.Command { allResults, _ := cmd.Flags().GetBool("all-results") timeoutFlag, _ := cmd.Flags().GetInt("timeout") hardModeFlag, _ := cmd.Flags().GetBool("hard-mode") + noClipFlag, _ := cmd.Flags().GetBool("no-clip") ignoreArrayCircleRef, _ := cmd.Flags().GetBool("ignore-array-circle-ref") ignorePolymorphCircleRef, _ := cmd.Flags().GetBool("ignore-polymorph-circle-ref") ignoreFile, _ := cmd.Flags().GetString("ignore-file") @@ -233,6 +234,7 @@ func GetLintCommand() *cobra.Command { Lock: &printLock, Logger: logger, TimeoutFlag: timeoutFlag, + NoClip: noClipFlag, IgnoreArrayCircleRef: ignoreArrayCircleRef, IgnorePolymorphCircleRef: ignorePolymorphCircleRef, IgnoredResults: ignoredItems, @@ -284,6 +286,7 @@ func GetLintCommand() *cobra.Command { cmd.Flags().Bool("ignore-array-circle-ref", false, "Ignore circular array references") cmd.Flags().Bool("ignore-polymorph-circle-ref", false, "Ignore circular polymorphic references") cmd.Flags().String("ignore-file", "", "Path to ignore file") + cmd.Flags().Bool("no-clip", false, "Do not truncate messages or paths (no '...')") // TODO: Add globbed-files flag to other commands as well cmd.Flags().String("globbed-files", "", "Glob pattern of files to lint") @@ -376,6 +379,7 @@ func lintFile(req utils.LintFileRequest) (int64, int, error) { req.Silent, req.NoMessageFlag, req.AllResultsFlag, + req.NoClip, abs, req.FileName) } @@ -428,6 +432,7 @@ func processResults(results []*model.RuleFunctionResult, silent, noMessage, allResults bool, + noClip bool, abs, filename string) { if allResults && len(results) > 1000 { @@ -485,15 +490,16 @@ func processResults(results []*model.RuleFunctionResult, m := r.Message p := r.Path - if len(r.Path) > 60 { - p = fmt.Sprintf("%s...", r.Path[:60]) - } + if !noClip { + if len(r.Path) > 60 { + p = fmt.Sprintf("%s...", r.Path[:60]) + } - if len(r.Message) > 100 { - m = fmt.Sprintf("%s...", r.Message[:80]) + if len(r.Message) > 100 { + m = fmt.Sprintf("%s...", r.Message[:80]) + } } - - sev := "nope" + sev := "info" if r.Rule != nil { sev = r.Rule.Severity }