X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=script%2Fpublic-inbox-clone;h=54059d036f8675cb89636a93e0440c9b84b87c86;hb=HEAD;hp=3d980c97da779a3ca2d69489d48ebc357fbd9595;hpb=3164ce21aeb7c6ca10638d1c1d14e6f58d5b9180;p=public-inbox.git
diff --git a/script/public-inbox-clone b/script/public-inbox-clone
index 3d980c97..598979bc 100755
--- a/script/public-inbox-clone
+++ b/script/public-inbox-clone
@@ -2,8 +2,7 @@
# Copyright (C) all contributors
# License: AGPL-3.0+
# Wrapper to git clone remote public-inboxes
-use strict;
-use v5.10.1;
+use v5.12;
use Getopt::Long qw(:config gnu_getopt no_ignore_case auto_abbrev);
my $opt = {};
my $help = <{help}) { print $help; exit };
require PublicInbox::Admin; # loads Config
@@ -37,12 +42,10 @@ defined($dst) or ($dst) = ($url =~ m!/([^/]+)/?\z!);
index($dst, "\n") >= 0 and die "`\\n' not allowed in `$dst'";
# n.b. this is still a truckload of code...
-require URI;
+require File::Spec;
require PublicInbox::LEI;
require PublicInbox::LeiExternal;
require PublicInbox::LeiMirror;
-require PublicInbox::LeiCurl;
-require PublicInbox::Lock;
$url = PublicInbox::LeiExternal::ext_canonicalize($url);
my $lei = bless {
@@ -54,11 +57,10 @@ open $lei->{3}, '.' or die "open . $!";
my $mrr = bless {
lei => $lei,
src => $url,
- dst => $dst,
+ dst => File::Spec->canonpath($dst),
}, 'PublicInbox::LeiMirror';
$? = 0;
-$mrr->{dry_run} = 1 if $lei->{opt}->{'dry-run'};
$mrr->do_mirror;
-$mrr->can('_wq_done_wait')->([$mrr, $lei], $$);
+$mrr->can('_wq_done_wait')->($$, $mrr, $lei);
exit(($lei->{child_error} // 0) >> 8);