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-ASN: 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 5A59A1F934 for ; Mon, 5 Apr 2021 10:27:52 +0000 (UTC) From: Eric Wong To: meta@public-inbox.org Subject: [PATCH 1/5] lei_to_mail: trim down imports Date: Mon, 5 Apr 2021 10:27:48 +0000 Message-Id: <20210405102752.6249-2-e@80x24.org> In-Reply-To: <20210405102752.6249-1-e@80x24.org> References: <20210405102752.6249-1-e@80x24.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit List-Id: We don't need to import so many things. None of the Errno constants are in common paths so unlikely to benefit from constant folding. --- lib/PublicInbox/LeiToMail.pm | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/lib/PublicInbox/LeiToMail.pm b/lib/PublicInbox/LeiToMail.pm index 0364d8ef..76a11b0e 100644 --- a/lib/PublicInbox/LeiToMail.pm +++ b/lib/PublicInbox/LeiToMail.pm @@ -7,23 +7,15 @@ use strict; use v5.10.1; use parent qw(PublicInbox::IPC); use PublicInbox::Eml; -use PublicInbox::Lock; use PublicInbox::ProcessPipe; use PublicInbox::Spawn qw(spawn); use PublicInbox::LeiDedupe; -use PublicInbox::Git; -use PublicInbox::GitAsyncCat; use PublicInbox::PktOp qw(pkt_do); use Symbol qw(gensym); use IO::Handle; # ->autoflush use Fcntl qw(SEEK_SET SEEK_END O_CREAT O_EXCL O_WRONLY); -use Errno qw(EEXIST ESPIPE ENOENT EPIPE); use Digest::SHA qw(sha256_hex); -# struggles with short-lived repos, Gcf2Client makes little sense with lei; -# but we may use in-process libgit2 in the future. -$PublicInbox::GitAsyncCat::GCF2C = 0; - my %kw2char = ( # Maildir characters draft => 'D', flagged => 'F', @@ -76,7 +68,7 @@ sub atomic_append { # for on-disk destinations (O_APPEND, or O_EXCL) if (defined(my $w = syswrite($lei->{1} // return, $$buf))) { return if $w == length($$buf); $buf = "short atomic write: $w != ".length($$buf); - } elsif ($! == EPIPE) { + } elsif ($!{EPIPE}) { return $lei->note_sigpipe(1); } else { $buf = "atomic write: $!"; @@ -275,7 +267,7 @@ sub _buf2maildir { do { $tmp = $dst.'tmp/'.$rand.$common; } while (!($ok = sysopen($fh, $tmp, O_CREAT|O_EXCL|O_WRONLY)) && - $! == EEXIST && ($rand = _rand.',')); + $!{EEXIST} && ($rand = _rand.',')); if ($ok && print $fh $$buf and close($fh)) { # ignore new/ and write only to cur/, otherwise MUAs # with R/W access to the Maildir will end up doing @@ -285,7 +277,7 @@ sub _buf2maildir { $rand = ''; do { $final = $dst.$rand.$common.':2,'.$sfx; - } while (!($ok = link($tmp, $final)) && $! == EEXIST && + } while (!($ok = link($tmp, $final)) && $!{EEXIST} && ($rand = _rand.',')); die "link($tmp, $final): $!" unless $ok; unlink($tmp) or warn "W: failed to unlink $tmp: $!\n"; @@ -473,7 +465,7 @@ sub _pre_augment_mbox { } # Perl does SEEK_END even with O_APPEND :< $self->{seekable} = seek($out, 0, SEEK_SET); - if (!$self->{seekable} && $! != ESPIPE && !defined($devfd)) { + if (!$self->{seekable} && !$!{ESPIPE} && !defined($devfd)) { die "seek($dst): $!\n"; } if (!$self->{seekable}) { @@ -610,7 +602,7 @@ sub poke_dst { sub write_mail { # via ->wq_io_do my ($self, $smsg) = @_; - git_async_cat($self->{lei}->{ale}->git, $smsg->{blob}, \&git_to_mail, + $self->{lei}->{ale}->git->cat_async($smsg->{blob}, \&git_to_mail, [$self->{wcb}, $smsg]); }