From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-Status: No, score=-4.0 required=3.0 tests=ALL_TRUSTED,BAYES_00 shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id DB0241FB0F for ; Thu, 4 Mar 2021 09:03:16 +0000 (UTC) From: Eric Wong To: meta@public-inbox.org Subject: [PATCH 6/6] lei q: s/import-augment/import-before/g Date: Thu, 4 Mar 2021 17:03:16 +0800 Message-Id: <20210304090316.9568-7-e@80x24.org> In-Reply-To: <20210304090316.9568-1-e@80x24.org> References: <20210304090316.9568-1-e@80x24.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit List-Id: Since this importing of keywords is active even when --augment isn't specified, calling it --import-before seems more appropriate. In the future, this will likely default to adding unseen emails to lei/store, not just updating keywords. Link: https://public-inbox.org/meta/20210303222930.GA18597@dcvr/T/ --- lib/PublicInbox/LEI.pm | 2 +- lib/PublicInbox/LeiQuery.pm | 2 +- lib/PublicInbox/LeiToMail.pm | 16 ++++++++-------- t/lei-q-kw.t | 10 +++++----- 4 files changed, 15 insertions(+), 15 deletions(-) diff --git a/lib/PublicInbox/LEI.pm b/lib/PublicInbox/LEI.pm index fdd9f8c8..50276a50 100644 --- a/lib/PublicInbox/LEI.pm +++ b/lib/PublicInbox/LEI.pm @@ -113,7 +113,7 @@ our %CMD = ( # sorted in order of importance/use: qw(save-as=s output|mfolder|o=s format|f=s dedupe|d=s threads|t+ sort|s=s reverse|r offset=i remote! local! external! pretty include|I=s@ exclude=s@ only=s@ jobs|j=s globoff|g augment|a - import-remote! import-augment! lock=s@ + import-remote! import-before! lock=s@ alert=s@ mua=s no-torsocks torsocks=s verbose|v+ quiet|q C=s@), PublicInbox::LeiQuery::curl_opt(), opt_dash('limit|n=i', '[0-9]+') ], diff --git a/lib/PublicInbox/LeiQuery.pm b/lib/PublicInbox/LeiQuery.pm index c630d628..493a8382 100644 --- a/lib/PublicInbox/LeiQuery.pm +++ b/lib/PublicInbox/LeiQuery.pm @@ -52,7 +52,7 @@ sub lei_q { my $sto = $self->_lei_store(1); my $lse = $sto->search; if (($opt->{'import-remote'} //= 1) | - ($opt->{'import-augment'} //= 1)) { + ($opt->{'import-before'} //= 1)) { $sto->write_prepare($self); } if ($opt->{'local'} //= scalar(@only) ? 0 : 1) { diff --git a/lib/PublicInbox/LeiToMail.pm b/lib/PublicInbox/LeiToMail.pm index 6290f35e..1e2060fe 100644 --- a/lib/PublicInbox/LeiToMail.pm +++ b/lib/PublicInbox/LeiToMail.pm @@ -438,7 +438,7 @@ sub _pre_augment_maildir { sub _do_augment_maildir { my ($self, $lei) = @_; my $dst = $lei->{ovv}->{dst}; - my $lse = $lei->{sto}->search if $lei->{opt}->{'import-augment'}; + my $lse = $lei->{sto}->search if $lei->{opt}->{'import-before'}; my ($mod, $shard) = @{$self->{shard_info} // []}; if ($lei->{opt}->{augment}) { my $dedupe = $lei->{dedupe}; @@ -470,7 +470,7 @@ sub _imap_augment_or_delete { # PublicInbox::NetReader::imap_each cb sub _do_augment_imap { my ($self, $lei) = @_; my $net = $lei->{net}; - my $lse = $lei->{sto}->search if $lei->{opt}->{'import-augment'}; + my $lse = $lei->{sto}->search if $lei->{opt}->{'import-before'}; if ($lei->{opt}->{augment}) { my $dedupe = $lei->{dedupe}; if ($dedupe && $dedupe->prepare_dedupe) { @@ -511,8 +511,8 @@ sub _pre_augment_mbox { die "seek($dst): $!\n"; } if (!$self->{seekable}) { - my $ia = $lei->{opt}->{'import-augment'}; - die "--import-augment specified but $dst is not seekable\n" + my $ia = $lei->{opt}->{'import-before'}; + die "--import-before specified but $dst is not seekable\n" if $ia && !ref($ia); die "--augment specified but $dst is not seekable\n" if $lei->{opt}->{augment}; @@ -533,7 +533,7 @@ sub _do_augment_mbox { my $out = $lei->{1}; my ($fmt, $dst) = @{$lei->{ovv}}{qw(fmt dst)}; return unless -s $out; - unless ($opt->{augment} || $opt->{'import-augment'}) { + unless ($opt->{augment} || $opt->{'import-before'}) { truncate($out, 0) or die "truncate($dst): $!"; return; } @@ -544,14 +544,14 @@ sub _do_augment_mbox { $dedupe = $lei->{dedupe}; $dedupe->prepare_dedupe if $dedupe; } - if ($opt->{'import-augment'}) { # the default + if ($opt->{'import-before'}) { # the default my $lse = $lei->{sto}->search; PublicInbox::MboxReader->$fmt($rd, \&_mbox_augment_kw_maybe, $lei, $lse, $opt->{augment}); if (!$opt->{augment} and !truncate($out, 0)) { die "truncate($dst): $!"; } - } else { # --augment --no-import-augment + } else { # --augment --no-import-before PublicInbox::MboxReader->$fmt($rd, \&_augment, $lei); } # maybe some systems don't honor O_APPEND, Perl does this: @@ -576,7 +576,7 @@ sub do_augment { # slow, runs in wq worker # fast (spawn compressor or mkdir), runs in same process as pre_augment sub post_augment { my ($self, $lei, @args) = @_; - my $wait = $lei->{opt}->{'import-augment'} ? + my $wait = $lei->{opt}->{'import-before'} ? $lei->{sto}->ipc_do('checkpoint', 1) : 0; # _post_augment_mbox my $m = $self->can("_post_augment_$self->{base_type}") or return; diff --git a/t/lei-q-kw.t b/t/lei-q-kw.t index babe9749..9daeb5b1 100644 --- a/t/lei-q-kw.t +++ b/t/lei-q-kw.t @@ -23,13 +23,13 @@ lei_ok(qw(q -o), "maildir:$o", qw(m:qp@example.com)); @fn = glob("$o/cur/*:2,S"); is(scalar(@fn), 1, "`seen' flag set on Maildir file"); -# ensure --no-import-augment works +# ensure --no-import-before works my $n = $fn[0]; $n =~ s/,S\z/,RS/; rename($fn[0], $n) or BAIL_OUT "rename $!"; -lei_ok(qw(q --no-import-augment -o), "maildir:$o", +lei_ok(qw(q --no-import-before -o), "maildir:$o", qw(m:bogus-noresults@example.com)); -ok(!glob("$o/cur/*"), '--no-import-augment cleared destination'); +ok(!glob("$o/cur/*"), '--no-import-before cleared destination'); lei_ok(qw(q -o), "maildir:$o", qw(m:qp@example.com)); @fn = glob("$o/cur/*:2,S"); is(scalar(@fn), 1, "`seen' flag (but not `replied') set on Maildir file"); @@ -39,8 +39,8 @@ SKIP: { mkfifo($o, 0600) or skip("mkfifo not supported: $!", 1); # cat(1) since lei() may not execve for FD_CLOEXEC to work my $cat = popen_rd(['cat', $o]); - ok(!lei(qw(q --import-augment bogus -o), "mboxrd:$o"), - '--import-augment fails on non-seekable output'); + ok(!lei(qw(q --import-before bogus -o), "mboxrd:$o"), + '--import-before fails on non-seekable output'); is(do { local $/; <$cat> }, '', 'no output on FIFO'); };