checkpatch.pl: Improve WARNING on Kconfig help
PATCH 1/1 checkpatch.pl: Improve WARNING on Kconfig help
The checkpatch.pl script complains when the help section of a Kconfig entry is too short, but it doesn't really explain what it is looking for. Instead, it gives a generic warning that one should consider writing a paragraph.
But what it *really* checks is that the help section is at least .$min_conf_desc_length lines long.
Since the definition of what is a paragraph is not really carved in stone (and actually the primary descriptions is "5 sentences"), make the warning less ambiguous by expliciting the actual test condition, so that one doesn't have to read checkpatch.pl sources, to figure out the actual test.
--- scripts/checkpatch.pl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
scripts/checkpatch.pl +2 -1
@@ -2931,7 +2931,8 @@ sub process { } if ($is_start && $is_end && $length < $min_conf_desc_length) { WARN("CONFIG_DESCRIPTION", - "please write a paragraph that describes the config symbol fully\n" . $herecurr); + "please write a paragraph (" .$min_conf_desc_length . " lines)" . + " that describes the config symbol fully\n" . $herecurr); } #print "is_start<$is_start> is_end<$is_end> length<$length>\n"; }
Signature · 1 line
2.19.1
Joe Perches
maintainerQuoted 5 lines · Igor Stoppa
The checkpatch.pl script complains when the help section of a
Kconfigentry is too short, but it doesn't really explain what it is looking for. Instead, it gives a generic warning that one should consider writing a paragraph.
Quoted 8 lines
But what it *really* checks is that the help section is at least .$min_conf_desc_length lines long.
Since the definition of what is a paragraph is not really carved in stone (and actually the primary descriptions is "5 sentences"), make the warning less ambiguous by expliciting the actual test condition, so that one doesn't have to read checkpatch.pl sources, to figure out the actual test.
[]
scripts/checkpatch.pl
Quoted 1 line
scripts/checkpatch.pl +0
-0
[]
scripts/checkpatch.pl sub process { · line 2934
Quoted 6 lines
scripts/checkpatch.pl +1
-1@@ -2931,7 +2931,8 @@ sub process { } if ($is_start && $is_end && $length < $min_conf_desc_length) { WARN("CONFIG_DESCRIPTION", - "please write a paragraph that describes the config symbol fully\n" . $herecurr); + "please write a paragraph (" .$min_conf_desc_length . " lines)" .
could say "(at least $min_conf_desc_length lines)"
Andy Whitcroft
maintainerQuoted 17 lines · Joe Perches
Quoted 5 lines · Igor Stoppa
The checkpatch.pl script complains when the help section of a
Kconfigentry is too short, but it doesn't really explain what it is looking for. Instead, it gives a generic warning that one should consider writing a paragraph.Quoted 8 lines
But what it *really* checks is that the help section is at least .$min_conf_desc_length lines long.
Since the definition of what is a paragraph is not really carved in stone (and actually the primary descriptions is "5 sentences"), make the warning less ambiguous by expliciting the actual test condition, so that one doesn't have to read checkpatch.pl sources, to figure out the actual test.
[]
scripts/checkpatch.pl
Quoted 1 line
scripts/checkpatch.pl +0
-0[]
Quoted 8 lines
scripts/checkpatch.pl sub process { · line 2934
Quoted 6 lines
scripts/checkpatch.pl +1
-1@@ -2931,7 +2931,8 @@ sub process { } if ($is_start && $is_end && $length < $min_conf_desc_length) { WARN("CONFIG_DESCRIPTION", - "please write a paragraph that describes the config symbol fully\n" . $herecurr); + "please write a paragraph (" .$min_conf_desc_length . " lines)" .could say "(at least $min_conf_desc_length lines)"
The original is better description in the semantic sense. We want them to describe it well. We assume they haven't because it is short. We don't want them to make it long, we want them to confirm it is fully described.
You arn't trying to make people make these warnings away, they should just be checking they have met the criteria in the warning. If they have they can ignore the warning and be happy, they don't have to add two more lines.
To cover both cases perhaps:
"please ensure that this config symbols is described fully (less than
$min_conf_desc_length lines is quite brief)"
-apw
Joe Perches
maintainerQuoted 37 lines · Andy Whitcroft
Quoted 17 lines · Joe Perches
Quoted 5 lines · Igor Stoppa
The checkpatch.pl script complains when the help section of a
Kconfigentry is too short, but it doesn't really explain what it is looking for. Instead, it gives a generic warning that one should consider writing a paragraph.Quoted 8 lines
But what it *really* checks is that the help section is at least .$min_conf_desc_length lines long.
Since the definition of what is a paragraph is not really carved in stone (and actually the primary descriptions is "5 sentences"), make the warning less ambiguous by expliciting the actual test condition, so that one doesn't have to read checkpatch.pl sources, to figure out the actual test.
[]
scripts/checkpatch.pl
Quoted 1 line
scripts/checkpatch.pl +0
-0[]
Quoted 8 lines
scripts/checkpatch.pl sub process { · line 2934
Quoted 6 lines
scripts/checkpatch.pl +1
-1@@ -2931,7 +2931,8 @@ sub process { } if ($is_start && $is_end && $length < $min_conf_desc_length) { WARN("CONFIG_DESCRIPTION", - "please write a paragraph that describes the config symbol fully\n" . $herecurr); + "please write a paragraph (" .$min_conf_desc_length . " lines)" .could say "(at least $min_conf_desc_length lines)"
The original is better description in the semantic sense. We want them to describe it well. We assume they haven't because it is short. We don't want them to make it long, we want them to confirm it is fully described.
You arn't trying to make people make these warnings away, they should just be checking they have met the criteria in the warning. If they have they can ignore the warning and be happy, they don't have to add two more lines.
Quoted 4 lines
To cover both cases perhaps:
"please ensure that this config symbols is described fully (less than
$min_conf_desc_length lines is quite brief)"
This is one of those checkpatch bleats I never really thought was appropriate as some or many Kconfig symbols are fully descriptive in even with only a single line.
Also, it seems you are arguing for a checkpatch --verbose-help output style rather than the intentionally terse single line output that the script produces today.
That is something Al Viro once suggested in this thread:
https://lore.kernel.org/patchwork/patch/775901/
Quoted 10 lines · Al Viro
Quoted 1 line · Joe Perches
checkpatch messages are single line.
Too bad... Incidentally, being able to get more detailed explanation of a warning might be a serious improvement, especially if it contains the rationale. Hell, something like TeX handling of errors might be a good idea - warning printed, offered actions include 'give more help', 'continue', 'exit', 'from now on suppress this kind of warning', 'from now on just dump this kind of warning into log and keep going', 'from now on dump all warnings into log and keep going'.
Quoted 13 lines · Joe Perches
Quoted 6 lines · Andy Whitcroft
On Wed, Dec 19, 2018 at 02:44:36AM -0800, Joe Perches wrote:
To cover both cases perhaps:
"please ensure that this config symbols is described fully (less than
$min_conf_desc_length lines is quite brief)"This is one of those checkpatch bleats I never really thought was appropriate as some or many
Kconfigsymbols are fully descriptive in even with only a single line.
Quoted 4 lines
Also, it seems you are arguing for a checkpatch --verbose-help output style rather than the intentionally terse single line output that the script produces today.
If I have to use --verbose, to understand that the warning is about me writing 3 lines when the script expects 4, I don't think it's particularly user friendly.
Let's write "Expected 4+ lines" or something equally clear. It will fit in a row and get the job done.
Quoted 14 lines
That is something Al Viro once suggested in this thread:
https://lore.kernel.org/patchwork/patch/775901/Quoted 10 lines · Al Viro
Quoted 1 line · Joe Perches
checkpatch messages are single line.
Too bad... Incidentally, being able to get more detailed explanation of a warning might be a serious improvement, especially if it contains the rationale. Hell, something like TeX handling of errors might be a good idea - warning printed, offered actions include 'give more help', 'continue', 'exit', 'from now on suppress this kind of warning', 'from now on just dump this kind of warning into log and keep going', 'from now on dump all warnings into log and keep going'.
It's all good in general, but here the word "paragraph" is being abused, in the sense that it has been given an arbitrary meaning of "4 lines". And the warning is even worse because it doesn't even acknowledge that I wrote something, even if it's a meager 1 or 2 lines. Which is even more confusing.
As user, if I'm running checkpatch.pl and I get a warning, I should spend my time trying to decide if/how to fix it, not re-invoking it with extra options or reading its sources.
--
igor
PATCH 1/1 checkpatch.pl: Improve WARNING on Kconfig help
In reply to Joe PerchesThe checkpatch.pl script complains when the help section of a Kconfig entry is too short, but it doesn't really explain what it is looking for. Instead, it gives a generic warning that one should consider writing a paragraph.
But what it *really* checks is that the help section is at least .$min_conf_desc_length lines long.
Since the definition of what is a paragraph is not really carved in stone (and actually the primary descriptions is "5 sentences"), make the warning less ambiguous by expliciting the actual test condition, so that one doesn't have to read checkpatch.pl sources, to figure out the actual test.
--- scripts/checkpatch.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
scripts/checkpatch.pl +1 -1
@@ -2931,7 +2931,7 @@ sub process { } if ($is_start && $is_end && $length < $min_conf_desc_length) { WARN("CONFIG_DESCRIPTION", - "please write a paragraph that describes the config symbol fully\n" . $herecurr); + "expecting a 'help' section of " .$min_conf_desc_length . "+ lines\n" . $herecurr); } #print "is_start<$is_start> is_end<$is_end> length<$length>\n"; }
Signature · 1 line
2.19.1
Joe Perches
maintainerQuoted 5 lines · Igor Stoppa
The checkpatch.pl script complains when the help section of a
Kconfigentry is too short, but it doesn't really explain what it is looking for. Instead, it gives a generic warning that one should consider writing a paragraph.
Quoted 8 lines
But what it *really* checks is that the help section is at least .$min_conf_desc_length lines long.
Since the definition of what is a paragraph is not really carved in stone (and actually the primary descriptions is "5 sentences"), make the warning less ambiguous by expliciting the actual test condition, so that one doesn't have to read checkpatch.pl sources, to figure out the actual test.
[]
scripts/checkpatch.pl
Quoted 1 line
scripts/checkpatch.pl +0
-0
[]
scripts/checkpatch.pl sub process { · line 2934
Quoted 6 lines
scripts/checkpatch.pl +1
-1@@ -2931,7 +2931,7 @@ sub process { } if ($is_start && $is_end && $length < $min_conf_desc_length) { WARN("CONFIG_DESCRIPTION", - "please write a paragraph that describes the config symbol fully\n" . $herecurr); + "expecting a 'help' section of " .$min_conf_desc_length . "+ lines\n" . $herecurr);
this could also be written without the concatenations
"expecting a 'help' section of $min_conf_desc_length or more lines\n" . $herecurr); or maybe "please write a paragraph that describes the config symbol fully ($min_conf_desc_length or more lines)\n" . $herecurr);
Andi?
You are the originator of this text.
Do you have an opinion?
Quoted 7 lines
"expecting a 'help' section of $min_conf_desc_length or more lines\n" . $herecurr); or maybe "please write a paragraph that describes the config symbol fully ($min_conf_desc_length or more lines)\n" . $herecurr);Andi?
You are the originator of this text.
Do you have an opinion?
Either change is fine for me.
-Andi
Quoted 2 lines
PATCH 1/1 checkpatch.pl: Improve WARNING on Kconfig help
In reply to Joe PerchesThe checkpatch.pl script complains when the help section of a Kconfig entry is too short, but it doesn't really explain what it is looking for. Instead, it gives a generic warning that one should consider writing a paragraph.
But what it *really* checks is that the help section is at least .$min_conf_desc_length lines long.
Since the definition of what is a paragraph is not really carved in stone (and actually the primary descriptions is "5 sentences"), make the warning less ambiguous by expliciting the actual test condition, so that one doesn't have to read checkpatch.pl sources, to figure out the actual test.
--- scripts/checkpatch.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
scripts/checkpatch.pl +1 -1
@@ -2931,7 +2931,7 @@ sub process { } if ($is_start && $is_end && $length < $min_conf_desc_length) { WARN("CONFIG_DESCRIPTION", - "please write a paragraph that describes the config symbol fully\n" . $herecurr); + "expecting a 'help' section of $min_conf_desc_length or more lines\n" . $herecurr); } #print "is_start<$is_start> is_end<$is_end> length<$length>\n"; }
Signature · 1 line
2.19.1