Message ID | 4d5291fa3fb4962b1fa55e8fd9ef421ef0c1b1e5.camel@perches.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | parse-maintainers: Do not sort section content by default | expand |
On Sat, 2020-03-07 at 18:59 -0800, Joe Perches wrote: > Add an --order switch to control section reordering. > Default for --order is off. > Change the default ordering to a slightly more sensible: > > M: Person acting as a maintainer > R: Person acting as a patch reviewer > L: Mailing list where patches should be sent > S: Maintenance status > W: URI for general information > Q: URI for patchwork tracking > B: URI for bug tracking/submission > C: URI for chat > P: URI or file for subsystem specific coding styles > T: SCM tree type and location > F: File and directory pattern > X: File and directory exclusion pattern > N: File glob > K: Keyword - patch content regex Linus? ping? > Signed-off-by: Joe Perches <joe@perches.com> > --- > scripts/parse-maintainers.pl | 31 +++++++++++++++++++++++++++---- > 1 file changed, 27 insertions(+), 4 deletions(-) > > diff --git a/scripts/parse-maintainers.pl b/scripts/parse-maintainers.pl > index 255cef1..2ca4eb3 100644 > --- a/scripts/parse-maintainers.pl > +++ b/scripts/parse-maintainers.pl > @@ -8,13 +8,14 @@ my $input_file = "MAINTAINERS"; > my $output_file = "MAINTAINERS.new"; > my $output_section = "SECTION.new"; > my $help = 0; > - > +my $order = 0; > my $P = $0; > > if (!GetOptions( > 'input=s' => \$input_file, > 'output=s' => \$output_file, > 'section=s' => \$output_section, > + 'order!' => \$order, > 'h|help|usage' => \$help, > )) { > die "$P: invalid argument - use --help if necessary\n"; > @@ -32,6 +33,22 @@ usage: $P [options] <pattern matching regexes> > --input => MAINTAINERS file to read (default: MAINTAINERS) > --output => sorted MAINTAINERS file to write (default: MAINTAINERS.new) > --section => new sorted MAINTAINERS file to write to (default: SECTION.new) > + --order => Use the preferred section content output ordering (default: 0) > + Preferred ordering of section output is: > + M: Person acting as a maintainer > + R: Person acting as a patch reviewer > + L: Mailing list where patches should be sent > + S: Maintenance status > + W: URI for general information > + Q: URI for patchwork tracking > + B: URI for bug tracking/submission > + C: URI for chat > + P: URI or file for subsystem specific coding styles > + T: SCM tree type and location > + F: File and directory pattern > + X: File and directory exclusion pattern > + N: File glob > + K: Keyword - patch content regex > > If <pattern match regexes> exist, then the sections that match the > regexes are not written to the output file but are written to the > @@ -56,7 +73,7 @@ sub by_category($$) { > > sub by_pattern($$) { > my ($a, $b) = @_; > - my $preferred_order = 'MRPLSWTQBCFXNK'; > + my $preferred_order = 'MRLSWQBCPTFXNK'; > > my $a1 = uc(substr($a, 0, 1)); > my $b1 = uc(substr($b, 0, 1)); > @@ -105,8 +122,14 @@ sub alpha_output { > print $file $separator; > } > print $file $key . "\n"; > - foreach my $pattern (sort by_pattern split('\n', %$hashref{$key})) { > - print $file ($pattern . "\n"); > + if ($order) { > + foreach my $pattern (sort by_pattern split('\n', %$hashref{$key})) { > + print $file ($pattern . "\n"); > + } > + } else { > + foreach my $pattern (split('\n', %$hashref{$key})) { > + print $file ($pattern . "\n"); > + } > } > } > } >
On Thu, Mar 26, 2020 at 9:47 AM Joe Perches <joe@perches.com> wrote: > > Linus? ping? Applied and pushed out. Linus
diff --git a/scripts/parse-maintainers.pl b/scripts/parse-maintainers.pl index 255cef1..2ca4eb3 100644 --- a/scripts/parse-maintainers.pl +++ b/scripts/parse-maintainers.pl @@ -8,13 +8,14 @@ my $input_file = "MAINTAINERS"; my $output_file = "MAINTAINERS.new"; my $output_section = "SECTION.new"; my $help = 0; - +my $order = 0; my $P = $0; if (!GetOptions( 'input=s' => \$input_file, 'output=s' => \$output_file, 'section=s' => \$output_section, + 'order!' => \$order, 'h|help|usage' => \$help, )) { die "$P: invalid argument - use --help if necessary\n"; @@ -32,6 +33,22 @@ usage: $P [options] <pattern matching regexes> --input => MAINTAINERS file to read (default: MAINTAINERS) --output => sorted MAINTAINERS file to write (default: MAINTAINERS.new) --section => new sorted MAINTAINERS file to write to (default: SECTION.new) + --order => Use the preferred section content output ordering (default: 0) + Preferred ordering of section output is: + M: Person acting as a maintainer + R: Person acting as a patch reviewer + L: Mailing list where patches should be sent + S: Maintenance status + W: URI for general information + Q: URI for patchwork tracking + B: URI for bug tracking/submission + C: URI for chat + P: URI or file for subsystem specific coding styles + T: SCM tree type and location + F: File and directory pattern + X: File and directory exclusion pattern + N: File glob + K: Keyword - patch content regex If <pattern match regexes> exist, then the sections that match the regexes are not written to the output file but are written to the @@ -56,7 +73,7 @@ sub by_category($$) { sub by_pattern($$) { my ($a, $b) = @_; - my $preferred_order = 'MRPLSWTQBCFXNK'; + my $preferred_order = 'MRLSWQBCPTFXNK'; my $a1 = uc(substr($a, 0, 1)); my $b1 = uc(substr($b, 0, 1)); @@ -105,8 +122,14 @@ sub alpha_output { print $file $separator; } print $file $key . "\n"; - foreach my $pattern (sort by_pattern split('\n', %$hashref{$key})) { - print $file ($pattern . "\n"); + if ($order) { + foreach my $pattern (sort by_pattern split('\n', %$hashref{$key})) { + print $file ($pattern . "\n"); + } + } else { + foreach my $pattern (split('\n', %$hashref{$key})) { + print $file ($pattern . "\n"); + } } } }
Add an --order switch to control section reordering. Default for --order is off. Change the default ordering to a slightly more sensible: M: Person acting as a maintainer R: Person acting as a patch reviewer L: Mailing list where patches should be sent S: Maintenance status W: URI for general information Q: URI for patchwork tracking B: URI for bug tracking/submission C: URI for chat P: URI or file for subsystem specific coding styles T: SCM tree type and location F: File and directory pattern X: File and directory exclusion pattern N: File glob K: Keyword - patch content regex Signed-off-by: Joe Perches <joe@perches.com> --- scripts/parse-maintainers.pl | 31 +++++++++++++++++++++++++++---- 1 file changed, 27 insertions(+), 4 deletions(-)