]> git.ipfire.org Git - thirdparty/git.git/commitdiff
chainlint: reduce annotation noise-factor
authorEric Sunshine <sunshine@sunshineco.com>
Tue, 10 Sep 2024 04:10:13 +0000 (00:10 -0400)
committerJunio C Hamano <gitster@pobox.com>
Tue, 10 Sep 2024 17:01:40 +0000 (10:01 -0700)
When chainlint detects a problem in a test definition, it highlights the
offending code with a "?!...?!" annotation. The rather curious "?!"
decoration was chosen to draw the reader's attention to the problem area
and to act as a good "needle" when using the terminal's search feature
to "jump" to the next problem.

Later, chainlint learned to color its output when sent to a terminal.
Problem annotations are colored with a red background which stands out
well from surrounding text, thus easily draws the reader's attention.
Together with the preceding change which gave all problem annotations a
uniform "LINT:" prefix, the noisy "?!" decoration has become superfluous
as a search "needle" so omit it when output is colored.

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/chainlint.pl
t/test-lib.sh

index ad264994781c5155d54cb1faceea14ccc60e0720..f0598e3934bc46e780d517b2046004c0de54f598 100755 (executable)
@@ -651,6 +651,7 @@ sub check_test {
        $self->{nerrs} += @$problems;
        return unless $emit_all || @$problems;
        my $c = main::fd_colors(1);
+       my ($erropen, $errclose) = -t 1 ? ("$c->{rev}$c->{red}", $c->{reset}) : ('?!', '?!');
        my $start = 0;
        my $checked = '';
        for (sort {$a->[1]->[2] <=> $b->[1]->[2]} @$problems) {
@@ -659,7 +660,7 @@ sub check_test {
                my $err = format_problem($label);
                $checked .= substr($body, $start, $pos - $start);
                $checked .= ' ' unless $checked =~ /\s$/;
-               $checked .= "$c->{rev}$c->{red}?!LINT: $err?!$c->{reset}";
+               $checked .= "${erropen}LINT: $err$errclose";
                $checked .= ' ' unless $pos >= length($body) ||
                    substr($body, $pos, 1) =~ /^\s/;
                $start = $pos;
index 54247604cbc76e00d41549278edd474ec6be934b..278d1215f15b90486dda79775161030cd4da1372 100644 (file)
@@ -1606,7 +1606,7 @@ if test "${GIT_TEST_CHAIN_LINT:-1}" != 0 &&
    test "${GIT_TEST_EXT_CHAIN_LINT:-1}" != 0
 then
        "$PERL_PATH" "$TEST_DIRECTORY/chainlint.pl" "$0" ||
-               BUG "lint error (see '?!...!? annotations above)"
+               BUG "lint error (see 'LINT' annotations above)"
 fi
 
 # Last-minute variable setup