11 Jan, 2012

1 commit

  • I happen to have had a commit to various network drivers since the big
    renaming/reorg which happened to drivers/net recently. This means that I
    now appear to be in the top few commit signers (by %age) for many of them
    so am getting sent all sorts of stuff and people who are involved with the
    driver are not. e.g. (to pick one at random):

    $ ./scripts/get_maintainer.pl -f drivers/net/ethernet/nvidia/forcedeth.c
    "David S. Miller" (commit_signer:5/7=71%)
    Ian Campbell (commit_signer:2/7=29%)
    Eric Dumazet (commit_signer:1/7=14%)
    Jeff Kirsher (commit_signer:1/7=14%)
    Jiri Pirko (commit_signer:1/7=14%)
    netdev@vger.kernel.org (open list:NETWORKING DRIVERS)
    linux-kernel@vger.kernel.org (open list)

    With the following patch the renames are followed and the result appears
    much more sensible:

    $ ./scripts/get_maintainer.pl -f drivers/net/ethernet/nvidia/forcedeth.c
    "David S. Miller" (commit_signer:31/34=91%)
    Joe Perches (commit_signer:11/34=32%)
    Szymon Janc (commit_signer:5/34=15%)
    Jiri Pirko (commit_signer:3/34=9%)
    Paul (commit_signer:2/34=6%)
    netdev@vger.kernel.org (open list:NETWORKING DRIVERS)
    linux-kernel@vger.kernel.org (open list)

    Signed-off-by: Ian Campbell
    Acked-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ian Campbell
     

26 Aug, 2011

1 commit


26 Jul, 2011

1 commit

  • Entries that used formats other than "Proper Name "
    were not parsed properly.

    Try to improve the parsing so that the entries in the forms of:
    Proper Name
    and
    Proper Name Commit Name
    are transformed correctly.

    Signed-off-by: Joe Perches
    Reviewed-by: Florian Mickler
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     

23 Mar, 2011

1 commit

  • Extend the usage of the K section in the MAINTAINERS file to support
    matching regular expressions to any arbitrary text that may precede the
    patch itself. For example, the commit message or mail headers generated
    by git-format-patch.

    Signed-off-by: Joe Perches
    Original-patch-by: L. Alberto Giménez
    Acked-by: L. Alberto Giménez

    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     

14 Jan, 2011

2 commits

  • On Fri, 2010-11-05 at 13:50 -0700, Andrew Morton wrote:
    > z:/usr/src/git26> perl scripts/get_maintainer.pl -file mm/mempolicy.c
    > linux-mm@kvack.org
    > linux-kernel@vger.kernel.org

    Turns out this is an arguable defect in the script.

    The MAINTAINERS entry for mm is:

    MEMORY MANAGEMENT
    L: linux-mm@kvack.org
    W: http://www.linux-mm.org
    S: Maintained
    F: include/linux/mm.h
    F: mm/

    There's a maintainer entry, but no named individual, so the script doesn't
    use git history via --git-fallback.

    This is also a defect for MAINTAINERS with status entries marked "Orphan"
    or "Odd fixes".

    The script now checks a section for any "M:" entry and that an "S:" entry
    is supported or maintained. If both those conditions are not satisified,
    use --git-fallback as appropriate.

    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • This script now requires a user to add --norolestats to the command line
    so it's harder to feed the output of this script to programs that send
    mass emails.

    Update --help to correct command line defaults.

    Change version to 0.26.

    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     

27 Oct, 2010

12 commits

  • Fix a defect with the first mailing list address being used for each
    subsequent mailing list.

    Updated to 0.26-beta6.

    Signed-off-by: Joe Perches
    Cc: Florian Mickler
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Use Florian Mickler's mailmap routine to reduce name duplication.

    o Add subroutine deduplicate_email to centralize code
    o Add hashes for deduplicate_(name|address)_hash
    o Remove now unused @interactive_to
    o Whitespace neatening
    o Add command line --help text
    o Add --mailmap command line option control
    o Interactive changes:
    - Add toggles for maintainer, git and list selections
    - Default selection is all
    - Add mailmap control

    Update to 0.26-beta5

    Signed-off-by: Joe Perches
    Cc: Florian Mickler
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • And a miscellaneous conversion of You to you in a help message

    Signed-off-by: Joe Perches
    Cc: Florian Mickler
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Implement it, like it is described in git-shortlog.

    Signed-off-by: Florian Mickler
    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Florian Mickler
     
  • Case insensitive name and email address matching can help reduce
    duplication when authors don't always use the exact same signature.

    o Add a --interactive per-file exact_match hash so git history
    can be checked on per-file only when there is no direct maintainer
    o Make @interactive_to list global so save_commits_by_ can check
    email names & addresses against this list for duplication
    o Don't allow --interactive and --sections
    o rename subroutine get_maintainer to get_maintainers
    o Added help text option to --interactive menu prompt

    Update version to 0.26-beta4

    Signed-off-by: Joe Perches
    Cc: Florian Mickler
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • o Added searching by git-blame as well as git-history
    o Added different selection toggles
    o Added ability to list commits by author or by sign-off-type
    o Use custom git and hg formats to make searching for subject/author
    a bit easier.
    o Move inlined section matching and searching git/hg history to
    new get_maintainer subroutine
    o Added subroutines save_commits_by_author and save_commits_by_signer
    o Removed subroutines vcs_get_shortlog and vcs_email_shortlog
    o Rename camelcase signaturePattern to signature_pattern

    Update to 0.26 beta3

    Signed-off-by: Joe Perches
    Cc: Florian Mickler
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • This is a first version of an interactive mode for
    scripts/get_maintainer.pl.

    It allows the user to interact with the script. Each cc candidate can be
    selected and deselected and a shortlog of authored commits can be
    displayed for each candidate.

    The menu is displayed via STDERR, the end result is outputted to STDOUT.
    This unusual mechanism allows using get_maintainer.pl in interactive mode
    via git send-email --cc-cmd.

    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Florian Mickler
     
  • On Mon, 2010-09-13 at 00:01 -0400, Valdis.Kletnieks@vt.edu wrote:
    > Any chance of getting that to be ~/.get_maintainer.conf rather than
    > ./.get_maintainer.conf? I've just gotten bit like the 3rd or 4th time by
    > "oh but you didn't create that file in *this* tree"
    > (I usually have a linus git tree, a linux-next tree, and 3-4 -mm trees)

    Sure.

    Add a search path for the .conf file.

    3 paths are added:

    . customized per-tree configurations
    $HOME user global configuration when per-tree configs don't exist
    ./scripts lk defaults to override script

    Signed-off-by: Joe Perches
    Cc: Valdis Kletnieks
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Adding commit signers when there is a listed MAINTAINER for a file
    can make the output list longer than necessary.

    Change the --git default from on to off.

    Add a new --git-fallback option (default on) used to add commit signers
    only when there is no MAINTAINER for a file.

    git history is used when --git-fallback is enabled and the pattern
    directory depth is not the same as the file directory depth.

    For instance:

    X86 ARCHITECTURE (32-BIT AND 64-BIT)
    M: Thomas Gleixner
    M: Ingo Molnar
    M: "H. Peter Anvin"
    M: x86@kernel.org
    T: git git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86.git
    S: Maintained
    F: Documentation/x86/
    F: arch/x86/

    If using "./scripts/get_maintainer -f arch/x86/lib/atomic64_32.c", the pattern
    for "arch/x86/" does not match the directory depth of "arch/x86/lib"
    so the MAINTAINERS entries and git history is used to produce:

    $ ./scripts/get_maintainer.pl -f --rolestats arch/x86/lib/atomic64_32.c
    Thomas Gleixner (maintainer:X86 ARCHITECTURE...)
    Ingo Molnar (maintainer:X86 ARCHITECTURE...)
    "H. Peter Anvin" (maintainer:X86 ARCHITECTURE...,commit_signer:1/1=100%)
    x86@kernel.org (maintainer:X86 ARCHITECTURE...)
    Luca Barbieri (commit_signer:1/1=100%)
    linux-kernel@vger.kernel.org (open list)

    Luca Barbieri is added because he signed the only commit to
    arch/x86/lib/atomic64_32.c during the last year and he meets the
    other default qualifications.
    --git-min-percent (default:10)
    --git-min-signatures (default:1)

    If current users of ./scripts/get_maintainers.pl have scripts
    that use --nogit that expect git history to be excluded, those
    scripts should be updated to include --nogit-fallback or a
    .get_maintainer.conf file should be created with --nogit-fallback.

    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Keyword matching uses K: patterns from MAINTAINERS, so if looking for the
    MAINTAINERS maintainer, don't search MAINTAINERS for pattern matches.
    MAINTAINERS also has rather a lot of email addresses and is easily
    searched using grep "^M:", so skip it.

    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Fix an overly indented block.

    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • When options --git-blame and --rolestats are specified, add
    the maintainers with the qualifying --git-min-percent amount
    of lines authored of the complete file. Does not add more
    authors than specified by --git-max-maintainers.

    For anyone using hg, this option works but is _very_ slow.
    It's orders of magnitude slower than git slow.

    The get_maintainer.pl version was incremented to 0.25.

    This can be used with or without --git.

    For instance:

    $ ./scripts/get_maintainer.pl --git-blame --nogit --rolestats -f lib/bitmap.c
    Paul Jackson (authored lines:406/613=66%,commits:7/20=35%)
    Akinobu Mita (authored lines:87/613=14%,commits:3/20=15%)
    Reinette Chatre (authored lines:42/613=7%)
    Andrew Morton (commits:16/20=80%)
    Paul Mundt (commits:3/20=15%)
    Randy Dunlap (commits:2/20=10%)

    $ ./scripts/get_maintainer.pl --git-blame --git --rolestats -f lib/bitmap.c
    Andrew Morton (commit_signer:4/5=80%,commits:16/20=80%)
    Akinobu Mita (commit_signer:2/5=40%,authored lines:87/613=14%,commits:3/20=15%)
    Jack Steiner (commit_signer:1/5=20%)
    Ben Hutchings (commit_signer:1/5=20%)
    Lee Schermerhorn (commit_signer:1/5=20%)
    Paul Jackson (authored lines:406/613=66%,commits:7/20=35%)
    Reinette Chatre (authored lines:42/613=7%)
    Paul Mundt (commits:3/20=15%)
    Randy Dunlap (commits:2/20=10%)
    linux-kernel@vger.kernel.org (open list)

    Signed-off-by: Joe Perches
    Cc: Mark Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     

25 May, 2010

3 commits

  • This changes the default of the option --git-all-signature-types to be
    disabled by default.

    The effect being, that only certain (currently Signed-Off-By:, Acked-by:
    and Reviewed-By:) tags are used to get adresses of potential maintainers.

    Motivated is this change by the desire to not 'spam' people unnecessary: A
    Tested-By or a Reported-By is not ment as a hint that those people want
    to/are able to review patches to the code in question.

    In a quest to find resilient statistics for this i came up with this:

    I produced a list of all the tag-signers not already covered with a
    signed-off/acked/reviewed tag somewhere in the last year of git history.

    Those were 650 addresses of "assumed non-developers".

    And to check if those "assumed non-developers" are professional
    testers/reporters worth cc'ing, i then counted their total appearences
    in the git log:

    469 were mentioned only once.
    123 were mentioned twice.
    38 three times
    8 four times
    5 six times
    5 five times
    1 eight times
    1 fourteen times

    I believe this supports my thesis, that the ''non-maintainer-tags'' are
    not actively useful for patch-review. (except probably the guy mentioned
    fourteen times...)

    But of course one could also find arguments to poke holes in this
    statistics, for example does this statistic not include code-locality: A
    tested-by on a patch that touches some specific piece of code can be more
    worth than a signed-off in another part of the tree.

    But... let's play it safe and let's err on the "safe" side meaning to not
    spam those people when in doubt. We already have the signed-off's and
    Maintainers file. So this should be ok. And if need be, the maintainers
    can always forward the patch.

    [i probably could make a diploma thesis out of this changelog :)]

    Signed-off-by: Florian Mickler
    Acked-by: Wolfram Sang
    Cc: Joe Perches
    Cc: Stefan Richter
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Florian Mickler
     
  • Allow the use of a .get_maintainer.conf file to control the default
    options applied when scripts/get_maintainer.pl is run.

    .get_maintainer.conf can contain any valid command-line argument.

    File contents are prepended to any additional command line arguments.

    Multiple lines may be used, blank lines ignored, # is a comment.

    Updated scripts/get_maintainer.pl version to 0.24

    Signed-off-by: Joe Perches
    Reviewed-by: Florian Mickler
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • When using --git to determine who to send a patch to, get_maintainers will
    currently include all signatures. This can include signers that simply
    report an issue or test a patch. Signers that use this tag are not
    necessarily good candidates to review new patches.

    This patch allows get_maintainers to optionally restrict output to only
    signatures that use Signed-off-by:, Acked-by:, or Reviewed-by:.

    Signed-off-by: is included because those are people who are responsible
    for the code.

    Acked-by: is questionable, but as signers that use this tag tend to be
    active linux gatekeepers, false positives are tolerable.

    Reviewed-by: is included because signers responsible for the code thought
    that the review feedback for a changeset by that signer was valuable.

    This patch has been modified from Florian's original submission to change
    the supported signature types to the canonical forms and use slightly
    different spacing. A couple of spacing issues were also corrected in the
    original source. The command line argument was also renamed.

    Original-patch-by: Florian Mickler
    Signed-off-by: Florian Mickler
    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     

25 Mar, 2010

1 commit

  • Commit 22dd5b0cba50a197aaa3bd2790a29ee2e8e4e372 (fix perlcritic warnings)
    broke the ability to handle STDIN because the three argument version of
    open() cannot handle standard IO-streams (which is mentioned in
    PerlBestPractices, too).

    Signed-off-by: Wolfram Sang
    Cc: Stephen Hemminger
    Acked-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Wolfram Sang
     

07 Mar, 2010

7 commits

  • If MAINTAINERS section entries are misformatted, it was possible to have
    an infinite loop.

    Correct the defect by always moving the index to the end of section + 1

    Also, exit check for exclude as soon as possible.

    Signed-off-by: Joe Perches
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Picky mail systems won't accept email addresses where recipient has period
    in name; ie. David S. Miller will not work.

    Signed-off-by: Stephen Hemminger
    Acked-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Stephen Hemminger
     
  • perlcritic is a standard checker for Perl Best Practices. This patch
    fixes most of the warnings in the get_maintainer script. If kernel
    programmers are going to have checkpatch they should write clean scripts
    as well...

    Bareword file handle opened at line 176, column 1. See pages 202,204 of PBP. (Severity: 5)
    Two-argument "open" used at line 176, column 1. See page 207 of PBP. (Severity: 5)
    Bareword file handle opened at line 207, column 5. See pages 202,204 of PBP. (Severity: 5)
    Two-argument "open" used at line 207, column 5. See page 207 of PBP. (Severity: 5)
    Bareword file handle opened at line 246, column 6. See pages 202,204 of PBP. (Severity: 5)
    Two-argument "open" used at line 246, column 6. See page 207 of PBP. (Severity: 5)
    Bareword file handle opened at line 258, column 2. See pages 202,204 of PBP. (Severity: 5)
    Two-argument "open" used at line 258, column 2. See page 207 of PBP. (Severity: 5)
    Expression form of "eval" at line 983, column 17. See page 161 of PBP. (Severity: 5)
    Expression form of "eval" at line 985, column 17. See page 161 of PBP. (Severity: 5)
    Subroutine prototypes used at line 1186, column 1. See page 194 of PBP. (Severity: 5)
    Subroutine prototypes used at line 1206, column 1. See page 194 of PBP. (Severity: 5)

    Signed-off-by: Stephen Hemminger
    Acked-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Stephen Hemminger
     
  • Doesn't need or accept '-' as a trailing option to read stdin. Doesn't
    print usage() after bad options. Adds --usage as command line equivalent
    of --help

    Suggested-by: Borislav Petkov
    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Signed-off-by: Joe Perches
    Cc: Stefan Richter
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Print the complete contents of the matched subsystems
    in pattern match depth order.

    Sample output:

    $ ./scripts/get_maintainer.pl --sections -f drivers/net/usb/smsc95xx.c
    USB SMSC95XX ETHERNET DRIVER
    M:Steve Glendinning
    L:netdev@vger.kernel.org
    S:Supported
    F:drivers/net/usb/smsc95xx.*
    USB SUBSYSTEM
    M:Greg Kroah-Hartman
    L:linux-usb@vger.kernel.org
    W:http://www.linux-usb.org
    T:quilt kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/
    S:Supported
    F:Documentation/usb/
    F:drivers/net/usb/
    F:drivers/usb/
    F:include/linux/usb.h
    F:include/linux/usb/
    NETWORKING DRIVERS
    L:netdev@vger.kernel.org
    W:http://www.linuxfoundation.org/en/Net
    T:git git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6.git
    S:Odd Fixes
    F:drivers/net/
    F:include/linux/if_*
    F:include/linux/*device.h
    THE REST
    M:Linus Torvalds
    L:linux-kernel@vger.kernel.org
    Q:http://patchwork.kernel.org/project/LKML/list/
    T:git git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
    S:Buried alive in reporters
    F:*
    F:*/

    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Add an imperfect option to search a source file for email addresses.

    New option: --file-emails or --fe

    email addresses in files are freeform text and are nearly impossible to
    parse. Still, might as well try to do a somewhat acceptable job of
    finding them. This code should find all addresses that are in the form
    addr@domain.tld

    The code assumes that up to 3 alphabetic words along with dashes, commas,
    and periods that preceed the email address are a name.

    If 3 words are found for the name, and one of the first two words are a
    single letter and period, or just a single letter then the 3 words are use
    as name otherwise the last 2 words are used.

    Some variants that are shown correctly:
    John Smith
    Random J. Developer
    Random J. Developer (rjd@tld.com)
    J. Random Developer rjd@tld.com

    Variants that are shown nominally correctly:
    Written by First Last (funny-addr@somecompany.com)
    is shown as:
    First Last

    Variants that are shown incorrectly:
    Some Really Long Name
    MontaVista Software, Inc.
    are returned as:
    Long Name
    "Software, Inc"

    --roles and --rolestats show "(in file)" for matches.

    For instance:

    Without -file-emails:

    $ ./scripts/get_maintainer.pl -f -nogit -roles net/core/netpoll.c
    David S. Miller (maintainer:NETWORKING [GENERAL])
    linux-kernel@vger.kernel.org (open list)

    With -fe:

    $ ./scripts/get_maintainer.pl -f -fe -nogit -roles net/core/netpoll.c
    David S. Miller (maintainer:NETWORKING [GENERAL])
    Matt Mackall (in file)
    Ingo Molnar (in file)
    linux-kernel@vger.kernel.org (open list)
    netdev@vger.kernel.org (open list:NETWORKING [GENERAL])

    The number of email addresses in the file in not limited. Neither is the
    number of returned email addresses.

    Signed-off-by: Joe Perches
    Cc: Matt Mackall
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     

03 Feb, 2010

1 commit

  • When git has been set to always use color in .gitconfig then I get the
    warning message

    Bad divisor in main::vcs_assign: 0

    This is caused by vcs_file_signoffs not matching any commits due to the
    pattern not understand the colour codes. Fix this by telling git log to
    never use colour.

    Signed-off-by: Richard Kennedy
    Acked-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Richard Kennedy
     

12 Jan, 2010

1 commit

  • The following command doesn't generate any output.
    `./scripts/get_maintainer.pl --no-git -f drivers/net/wireless/wl12xx/wl1271_acx.c`

    An excluded "X:" pattern match in any section would cause a file not to
    match any other section.

    Signed-off-by: Joe Perches
    Reported-by: Dan Carpenter
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     

16 Dec, 2009

3 commits

  • Restructure a bit for multiple version control systems support.

    Use a hash for each supported VCS that contains the commands
    and patterns used to find commits, logs, and signers.

    --git command line options are still used for hg except for
    --git-since. Use --hg-since instead.

    The number of commits can differ for git and hg, so --rolestats
    might be different.

    Style changes: Use common push style push(@foo...), simplify a return

    Bumped version to 0.23.

    Signed-off-by: Joe Perches
    Cc: Marti Raudsepp
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Fix email matching without name --n and --git-blame
    Using --non and --git-blame caused maintainer signature
    matching to fail. Fixed that by adding 3rd argument to
    sub format_email to control show/hide name portion of address
    Slurp -f file instead of reading line-by-line for K: pattern matching.
    Suggested by Wolfram Sang as more efficient
    Refactor git command execution
    Break into 2 functions, execute/analyze
    Share code between --git and --git-blame
    Don't warn multiple times when git isn't installed
    Improve stats reporting
    --git-min-percent and -- rolestats now count the total number of commits
    for either the period of --git-since or if using --git-blame the commits
    used by the current file and calculate commit % as
    # of commits signed / total commits * 100
    Code style cleaning
    Use consistent sub foo { my (args...) = @_;

    Signed-off-by: Joe Perches
    Cc: Ben Hutchings
    Cc: Greg KH
    Cc: Pavel Machek
    Cc: Wolfram Sang
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • --roles shows the role of each email address, i.e. why it was selected.
    --rolestats selects --roles and adds git log/blame signers #'s and %

    Multiple roles are possible (supporter, maintainer, git-signer...)

    --roles or --rolestats is meant to help identify appropriate maintainers
    to notify and should not be used with "git send-email --cc-cmd"

    Example output:

    Existing:

    $ ./scripts/get_maintainer.pl -f arch/x86/kernel/acpi/boot.c
    Corentin Chary
    Karol Kozimor
    Len Brown
    Pavel Machek
    Rafael J. Wysocki
    Thomas Gleixner
    Ingo Molnar
    H. Peter Anvin
    x86@kernel.org
    Yinghai Lu
    Jeremy Fitzhardinge
    acpi4asus-user@lists.sourceforge.net
    linux-pm@lists.linux-foundation.org
    linux-kernel@vger.kernel.org

    With --roles

    $ ./scripts/get_maintainer.pl --roles -f arch/x86/kernel/acpi/boot.c
    Corentin Chary (maintainer:ASUS ACPI EXTRAS...)
    Karol Kozimor (maintainer:ASUS ACPI EXTRAS...)
    Len Brown (supporter:SUSPEND TO RAM,git-signer)
    Pavel Machek (supporter:SUSPEND TO RAM)
    Rafael J. Wysocki (supporter:SUSPEND TO RAM)
    Thomas Gleixner (maintainer:X86 ARCHITECTURE...)
    Ingo Molnar (maintainer:X86 ARCHITECTURE...,git-signer)
    H. Peter Anvin (maintainer:X86 ARCHITECTURE...)
    x86@kernel.org (maintainer:X86 ARCHITECTURE...)
    Yinghai Lu (git-signer)
    Jeremy Fitzhardinge (git-signer)
    acpi4asus-user@lists.sourceforge.net (open list:ASUS ACPI EXTRAS...)
    linux-pm@lists.linux-foundation.org (open list:SUSPEND TO RAM)
    linux-kernel@vger.kernel.org (open list)

    With --rolestats

    $ ./scripts/get_maintainer.pl --rolestats -f arch/x86/kernel/acpi/boot.c
    Corentin Chary (maintainer:ASUS ACPI EXTRAS...)
    Karol Kozimor (maintainer:ASUS ACPI EXTRAS...)
    Len Brown (supporter:SUSPEND TO RAM,git-signer:16/79=20%)
    Pavel Machek (supporter:SUSPEND TO RAM)
    Rafael J. Wysocki (supporter:SUSPEND TO RAM)
    Thomas Gleixner (maintainer:X86 ARCHITECTURE...)
    Ingo Molnar (maintainer:X86 ARCHITECTURE...,git-signer:29/79=37%)
    H. Peter Anvin (maintainer:X86 ARCHITECTURE...)
    x86@kernel.org (maintainer:X86 ARCHITECTURE...)
    Yinghai Lu (git-signer:12/79=15%)
    Jeremy Fitzhardinge (git-signer:6/79=8%)
    acpi4asus-user@lists.sourceforge.net (open list:ASUS ACPI EXTRAS...)
    linux-pm@lists.linux-foundation.org (open list:SUSPEND TO RAM)
    linux-kernel@vger.kernel.org (open list)

    With --rolestats and --git-blame

    $ ./scripts/get_maintainer.pl --rolestats --git-blame -f arch/x86/kernel/acpi/boot.c
    Corentin Chary (maintainer:ASUS ACPI EXTRAS...)
    Karol Kozimor (maintainer:ASUS ACPI EXTRAS...)
    Len Brown (supporter:SUSPEND TO RAM,git-signer:16/79=20%,commits:22/154=14%)
    Pavel Machek (supporter:SUSPEND TO RAM)
    Rafael J. Wysocki (supporter:SUSPEND TO RAM)
    Thomas Gleixner (maintainer:X86 ARCHITECTURE...)
    Ingo Molnar (maintainer:X86 ARCHITECTURE...,git-signer:29/79=37%,commits:36/154=23%)
    H. Peter Anvin (maintainer:X86 ARCHITECTURE...)
    x86@kernel.org (maintainer:X86 ARCHITECTURE...)
    Yinghai Lu (git-signer:12/79=15%,commits:9/154=6%)
    Jeremy Fitzhardinge (git-signer:6/79=8%)
    Andi Kleen (commits:11/154=7%)
    Andrew Morton (commits:10/154=6%)
    acpi4asus-user@lists.sourceforge.net (open list:ASUS ACPI EXTRAS...)
    linux-pm@lists.linux-foundation.org (open list:SUSPEND TO RAM)
    linux-kernel@vger.kernel.org (open list)

    Other changes:

    Format git-signers email addresses a bit to reduce bad signatures
    Command line bad arguments emitted a verbose usage(), just show --help
    Version number bumped to .22

    Ben Hutchings had the idea and created a good deal of this implementation.

    Signed-off-by: Joe Perches
    Signed-off-by: Ben Hutchings
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     

12 Nov, 2009

1 commit


29 Oct, 2009

1 commit

  • Based on an idea from Wolfram Sang.

    Add search for MAINTAINERS line "K:" regex pattern match in a patch or file
    Matches are added after file pattern matches
    Add --keywords command line switch (default 1, on)
    Change version to 0.21

    Signed-off-by: Joe Perches
    Cc: Wolfram Sang
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     

22 Sep, 2009

4 commits

  • Previous behavior was "bottom-up" in each section from the pattern "F:"
    entry that matched. Now information is entered into the various lists in
    the "as entered" order for each matched section.

    This also allows the F: entry to be put anywhere in a section, not just as
    the last entries in the section.

    And a couple of improvements:

    Don't alphabetically sort before outputting the matched scm, status,
    subsystem and web sections.

    Ignore content after a single email address so these entries are acceptable
    M: name

    whatever other comment

    And a fix:

    Make an M: entry without a name again use the name from an immediately
    preceding P: line if it exists.

    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Allow control over the elimination of duplicate email names and addresses

    --remove-duplicates will use the first email name or address presented
    --noremove-duplicates will emit all names and addresses

    --remove-duplicates is enabled by default

    For instance:

    $ ./scripts/get_maintainer.pl -f drivers/char/tty_ioctl.c
    Greg Kroah-Hartman
    Alan Cox
    Mike Frysinger
    Alexey Dobriyan
    linux-kernel@vger.kernel.org

    $ ./scripts/get_maintainer.pl -f --noremove-duplicates drivers/char/tty_ioctl.c
    Greg Kroah-Hartman
    Alan Cox
    Alan Cox
    Alan Cox
    Mike Frysinger
    Alexey Dobriyan
    linux-kernel@vger.kernel.org

    Using --remove-duplicates could eliminate multiple maintainers that
    share the same name but not the same email address.

    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • If a person sets a separator, it's only used if --nomultiline is set.
    Don't make the command line also include --nomultiline in that case.

    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Add reading and using .mailmap file if it exists
    Convert address entries in .mailmap to first encountered address
    Don't terminate shell commands with \n
    Strip characters found after sign-offs by: name

    [stripped]

    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches