Message ID | 1452903772.3699.4.camel@perches.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Sat, 16 Jan 2016, Joe Perches <joe@perches.com> wrote: > On Fri, 2016-01-15 at 16:45 +0200, Jani Nikula wrote: >> Different subsystems and drivers have different preferred ways of >> receiving bug reports; mailing list or bugzillas at various >> locations. Add "B:" entry for specifying the preference to guide bug >> reporters at the right location. > [] >> diff --git a/MAINTAINERS b/MAINTAINERS > [] >> @@ -75,6 +75,8 @@ Descriptions of section entries: >> L: Mailing list that is relevant to this area >> W: Web-page with status/info >> Q: Patchwork web based patch tracking system site >> + B: Preferred method for reporting bugs; bug tracking system site >> + or "List" for mailing list. >> T: SCM tree type and location. >> Type is one of: git, hg, quilt, stgit, topgit >> S: Status, one of the following: >> @@ -3655,6 +3657,7 @@ L: intel-gfx@lists.freedesktop.org >> L: dri-devel@lists.freedesktop.org >> W: https://01.org/linuxgraphics/ >> Q: http://patchwork.freedesktop.org/project/intel-gfx/ >> +B: https://bugs.freedesktop.org/enter_bug.cgi?product=DRI&component=DRM/Intel > > This requires a LoginID & password It does, and I expect basically any bug reporting tool to do so. I was divided about linking to the form requiring login directly, but this helps the reporter to the right product and component, which may not be obvious. Anything to make the bug reporters' lives easier. > Maybe useful to show the open bugs too: > https://bugs.freedesktop.org/buglist.cgi?component=DRM%2FIntel&product=DRI&resolution=--- In the end, I don't mind whether it's the URL I suggested, the URL you suggested, or some combination, as long as it directs the bug reporter to https://bugs.freedesktop.org/. The main idea is just to make the life of bug reporters and maintainers easier by documenting where the maintainers want the bugs reported. BR, Jani. > > Maybe the get_maintainer script should be updated. > Something like: (untested) > --- > scripts/get_maintainer.pl | 17 +++++++++++++++-- > 1 file changed, 15 insertions(+), 2 deletions(-) > > diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl > index 1873421..bbe5337 100755 > --- a/scripts/get_maintainer.pl > +++ b/scripts/get_maintainer.pl > @@ -47,6 +47,7 @@ my $output_rolestats = 1; > my $output_section_maxlen = 50; > my $scm = 0; > my $web = 0; > +my $bug = 0; > my $subsystem = 0; > my $status = 0; > my $keywords = 1; > @@ -239,6 +240,7 @@ if (!GetOptions( > 'status!' => \$status, > 'scm!' => \$scm, > 'web!' => \$web, > + 'bug!' => \$bug, > 'pattern-depth=i' => \$pattern_depth, > 'k|keywords!' => \$keywords, > 'sections!' => \$sections, > @@ -276,12 +278,13 @@ if ($sections) { > $status = 0; > $subsystem = 0; > $web = 0; > + $bug = 0; > $keywords = 0; > $interactive = 0; > } else { > - my $selections = $email + $scm + $status + $subsystem + $web; > + my $selections = $email + $scm + $status + $subsystem + $web + $bug; > if ($selections == 0) { > - die "$P: Missing required option: email, scm, status, subsystem or web\n"; > + die "$P: Missing required option: email, scm, status, subsystem, web or bug\n"; > } > } > > @@ -505,6 +508,7 @@ my %hash_list_to; > my @list_to = (); > my @scm = (); > my @web = (); > +my @bug = (); > my @subsystem = (); > my @status = (); > my %deduplicate_name_hash = (); > @@ -537,6 +541,11 @@ if ($web) { > output(@web); > } > > +if ($bug) { > + @bug = uniq(@bug); > + output(@bug); > +} > + > exit($exit); > > sub ignore_email_address { > @@ -593,6 +602,7 @@ sub get_maintainers { > @list_to = (); > @scm = (); > @web = (); > + @bug = (); > @subsystem = (); > @status = (); > %deduplicate_name_hash = (); > @@ -802,6 +812,7 @@ MAINTAINER field selection options: > --status => print status if any > --subsystem => print subsystem name if any > --web => print website(s) if any > + --bug => print bug reporting mechanism(s) if any > > Output type options: > --separator [, ] => separator for multiple entries on 1 line > @@ -1129,6 +1140,8 @@ sub add_categories { > push(@scm, $pvalue); > } elsif ($ptype eq "W") { > push(@web, $pvalue); > + } elsif ($ptype eq "B") { > + push(@bug, $pvalue); > } elsif ($ptype eq "S") { > push(@status, $pvalue); > }
diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl index 1873421..bbe5337 100755 --- a/scripts/get_maintainer.pl +++ b/scripts/get_maintainer.pl @@ -47,6 +47,7 @@ my $output_rolestats = 1; my $output_section_maxlen = 50; my $scm = 0; my $web = 0; +my $bug = 0; my $subsystem = 0; my $status = 0; my $keywords = 1; @@ -239,6 +240,7 @@ if (!GetOptions( 'status!' => \$status, 'scm!' => \$scm, 'web!' => \$web, + 'bug!' => \$bug, 'pattern-depth=i' => \$pattern_depth, 'k|keywords!' => \$keywords, 'sections!' => \$sections, @@ -276,12 +278,13 @@ if ($sections) { $status = 0; $subsystem = 0; $web = 0; + $bug = 0; $keywords = 0; $interactive = 0; } else { - my $selections = $email + $scm + $status + $subsystem + $web; + my $selections = $email + $scm + $status + $subsystem + $web + $bug; if ($selections == 0) { - die "$P: Missing required option: email, scm, status, subsystem or web\n"; + die "$P: Missing required option: email, scm, status, subsystem, web or bug\n"; } } @@ -505,6 +508,7 @@ my %hash_list_to; my @list_to = (); my @scm = (); my @web = (); +my @bug = (); my @subsystem = (); my @status = (); my %deduplicate_name_hash = (); @@ -537,6 +541,11 @@ if ($web) { output(@web); } +if ($bug) { + @bug = uniq(@bug); + output(@bug); +} + exit($exit); sub ignore_email_address { @@ -593,6 +602,7 @@ sub get_maintainers { @list_to = (); @scm = (); @web = (); + @bug = (); @subsystem = (); @status = (); %deduplicate_name_hash = (); @@ -802,6 +812,7 @@ MAINTAINER field selection options: --status => print status if any --subsystem => print subsystem name if any --web => print website(s) if any + --bug => print bug reporting mechanism(s) if any Output type options: --separator [, ] => separator for multiple entries on 1 line @@ -1129,6 +1140,8 @@ sub add_categories { push(@scm, $pvalue); } elsif ($ptype eq "W") { push(@web, $pvalue); + } elsif ($ptype eq "B") { + push(@bug, $pvalue); } elsif ($ptype eq "S") { push(@status, $pvalue); }