threads / patch / 38386

patchcontacts: introduce --since and --min-percent

Subject: [PATCH] contacts: introduce --since and --min-percent

## tl;dr

4 messages between Jan 16, 2015 and Jan 21, 2015. Diffs are folded; open one to read it.

replies: 3people: 2as markdown or json

Ramkumar Ramachandra· Jan 16, 2015, 20:58 UTC · lore
Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
---
 contrib/contacts/git-contacts | 4 ++++
 1 file changed, 4 insertions(+)
Show changes to contrib/contacts/git-contacts +4 −0
diff --git a/contrib/contacts/git-contacts b/contrib/contacts/git-contacts
index dbe2abf..b06f2e1 100755
--- a/contrib/contacts/git-contacts
+++ b/contrib/contacts/git-contacts
@@ -8,12 +8,16 @@
 use strict;
 use warnings;
 use IPC::Open2;
+use Getopt::Long qw/:config gnu_getopt no_ignore_case auto_abbrev/;
 
 my $since = '5-years-ago';
 my $min_percent = 10;
 my $labels_rx = qr/Signed-off-by|Reviewed-by|Acked-by|Cc/i;
 my %seen;
 
+my $rv = GetOptions('since=s' => \$since, 'min-percent=i' => \$min_percent);
+exit 1 if (!$rv);
+
 sub format_contact {
 	my ($name, $email) = @_;
 	return "$name <$email>";
-- 
2.2.1
Eric Sunshine· Jan 16, 2015, 21:11 UTC · re: Ramkumar Ramachandra · lore

Re: [PATCH] contacts: introduce --since and --min-percent

On Fri, Jan 16, 2015 at 3:58 PM, Ramkumar Ramachandra <artagnon@gmail.com> wrote:

Show 11 quoted lines
> Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
> ---
> diff --git a/contrib/contacts/git-contacts b/contrib/contacts/git-contacts
> index dbe2abf..b06f2e1 100755
> --- a/contrib/contacts/git-contacts
> +++ b/contrib/contacts/git-contacts
> @@ -8,12 +8,16 @@
>  use strict;
>  use warnings;
>  use IPC::Open2;
> +use Getopt::Long qw/:config gnu_getopt no_ignore_case auto_abbrev/;
Most of the rest of the codebase uses qw(...) rather than qw/.../.
Show 7 quoted lines
>  my $since = '5-years-ago';
>  my $min_percent = 10;
>  my $labels_rx = qr/Signed-off-by|Reviewed-by|Acked-by|Cc/i;
>  my %seen;
>
> +my $rv = GetOptions('since=s' => \$since, 'min-percent=i' => \$min_percent);
> +exit 1 if (!$rv);

This would make more sense if moved down to the point where the script arguments are processed (just before the 'if (!@ARGV)' line, for instance).

These new options should be documented in git-contacts.txt. Also, the "Limitations" section of the documentation says that these values are currently hard-coded, so it deserves an update as well.

Show 5 quoted lines
>  sub format_contact {
>         my ($name, $email) = @_;
>         return "$name <$email>";
> --
> 2.2.1
Ramkumar Ramachandra· Jan 16, 2015, 21:23 UTC · re: Ramkumar Ramachandra · lore

[PATCH v2] contacts: introduce --since and --min-percent

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
---
 contrib/contacts/git-contacts     |  4 ++++
 contrib/contacts/git-contacts.txt | 16 ++++++++++++----
 2 files changed, 16 insertions(+), 4 deletions(-)
Show changes to 2 files +16 −4

contrib/contacts/git-contacts, contrib/contacts/git-contacts.txt

diff --git a/contrib/contacts/git-contacts b/contrib/contacts/git-contacts
index dbe2abf..5dde920 100755
--- a/contrib/contacts/git-contacts
+++ b/contrib/contacts/git-contacts
@@ -8,6 +8,7 @@
 use strict;
 use warnings;
 use IPC::Open2;
+use Getopt::Long qw(:config gnu_getopt no_ignore_case auto_abbrev);
 
 my $since = '5-years-ago';
 my $min_percent = 10;
@@ -158,6 +159,9 @@ sub mailmap_contacts {
 	return \%mapped;
 }
 
+my $rv = GetOptions('since=s' => \$since, 'min-percent=i' => \$min_percent);
+exit 1 if (!$rv);
+
 if (!@ARGV) {
 	die "No input revisions or patch files\n";
 }
diff --git a/contrib/contacts/git-contacts.txt b/contrib/contacts/git-contacts.txt
index dd914d1..a50c97f 100644
--- a/contrib/contacts/git-contacts.txt
+++ b/contrib/contacts/git-contacts.txt
@@ -31,6 +31,16 @@ discuss proposed changes, or for finding the list of recipients to Cc: when
 submitting a patch series via `git send-email`. For the latter case, `git
 contacts` can be used as the argument to `git send-email`'s `--cc-cmd` option.
 
+OPTIONS
+-------
+
+--min-percent::
+	The minimum threshold of blame percentage that a person must
+	exceed in order to be reported.
+
+--since::
+        Depth of history to dig.
+
 
 DISCUSSION
 ----------
@@ -83,10 +93,8 @@ $ git send-email --cc-cmd='git contacts' feature/*.patch
 LIMITATIONS
 -----------
 
-Several conditions controlling a person's significance are currently
-hard-coded, such as minimum participation level (10%), blame date-limiting (5
-years), and `-C` level for detecting moved and copied lines (a single `-C`). In
-the future, these conditions may become configurable.
+The `-C` level for detecting moved and copied lines (a single `-C`) is
+hard-coded. In the future, this may become configurable.
 
 
 GIT
-- 
2.2.1

← back to recent threads