]> Sergey Matveev's repositories - public-inbox.git/blobdiff - script/public-inbox-learn
learn: GIT_COMMITTER_<NAME|EMAIL> may be "" or "0"
[public-inbox.git] / script / public-inbox-learn
index d2d665d580b5f4803d2afd66fd45b333b4c1a99b..299f75a0e58ae319d6e46ee068db1f20c1af10dd 100755 (executable)
@@ -4,7 +4,7 @@
 #
 # Used for training spam (via SpamAssassin) and removing messages from a
 # public-inbox
-my $usage = "$0 (spam|ham) < /path/to/message";
+my $usage = "$0 <spam|ham|rm> </path/to/message";
 use strict;
 use warnings;
 use PublicInbox::Config;
@@ -39,7 +39,7 @@ my $mime = PublicInbox::MIME->new(eval {
        $data
 });
 
-# spam is removed from all known inboxes
+# spam is removed from all known inboxes since it is often Bcc:-ed
 if ($train eq 'spam') {
        $pi_config->each_inbox(sub {
                my ($ibx) = @_;
@@ -65,8 +65,8 @@ if ($train eq 'spam') {
                next unless ref($dst);
                # We do not touch GIT_COMMITTER_* env here so we can track
                # who trained the message.
-               $dst->{name} = $ENV{GIT_COMMITTER_NAME} || $dst->{name};
-               $dst->{-primary_address} = $ENV{GIT_COMMITTER_EMAIL} || $addr;
+               $dst->{name} = $ENV{GIT_COMMITTER_NAME} // $dst->{name};
+               $dst->{-primary_address} = $ENV{GIT_COMMITTER_EMAIL} // $addr;
                $dst = PublicInbox::InboxWritable->new($dst);
                my $im = $dst->importer(0);