summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris 'BinGOs' Williams <chris@bingosnet.co.uk>2016-06-17 13:21:37 +0100
committerChris 'BinGOs' Williams <chris@bingosnet.co.uk>2016-06-17 13:21:37 +0100
commit9ed2d9d9590c246380663caa818775c693b29fb0 (patch)
tree272735a2e11c7c37757d6321d19591297c940304
parent3bcfc7b32c9b00b9bf0355e7261883faed76aa08 (diff)
downloadperl-9ed2d9d9590c246380663caa818775c693b29fb0.tar.gz
[perl #128422] Refactor mirror list generation script
As per [perl #128422] the mirror list in perlmodlib is out of date with regards the master list. The master list is no longer a text file so refactored generator to parse JSON mirror list. Updated perlmodlib in the process.
-rw-r--r--Porting/make_modlib_cpan.pl117
-rw-r--r--pod/perlmodlib.PL751
2 files changed, 455 insertions, 413 deletions
diff --git a/Porting/make_modlib_cpan.pl b/Porting/make_modlib_cpan.pl
index ea0878bda0..39f4ff9751 100644
--- a/Porting/make_modlib_cpan.pl
+++ b/Porting/make_modlib_cpan.pl
@@ -7,26 +7,35 @@ use warnings;
use 5.14.0;
use autodie;
use HTTP::Tiny;
+use JSON::PP;
+
+$|=1;
my $http = HTTP::Tiny->new;
-my $url = 'http://www.cpan.org/SITES';
-my $filename = 'SITES';
-my $response = $http->mirror( $url, $filename );
+my $url = 'http://www.cpan.org/indices/mirrors.json';
+
+my $response = $http->get($url);
+
unless ( $response->{success} ) {
die "Error downloading $url";
}
-my $fh = IO::File->new($filename);
+die "No content" unless $response->{content};
-while ( my $line = <$fh> ) {
- chomp $line;
- last
- if $line eq
- '[Africa] [Asia] [Australasia] [Central America] [Europe] [North America] [South America]';
-}
+my $json = JSON::PP->new->utf8;
+my $mirrors = $json->decode( $response->{content} );
+my %sorted;
+my @rsync;
-my $line = <$fh>;
+foreach my $mirror ( sort { $a->{continent} cmp $b->{continent} || $a->{country} cmp $b->{country} } @{ $mirrors } ) {
+ if ( $mirror->{country} eq 'United States' ) {
+ push @{ $sorted{ $mirror->{continent} }{ $mirror->{country} }{ $mirror->{region} } }, $mirror;
+ }
+ else {
+ push @{ $sorted{ $mirror->{continent} }{ $mirror->{country} } }, $mirror;
+ }
+}
say 'Registered CPAN sites';
say '';
@@ -34,58 +43,48 @@ say '=for maintainers';
say 'Generated by Porting/make_modlib_cpan.pl';
say '';
-my $continent;
-my $country;
-my $state;
-
-while ( my $line = <$fh> ) {
- chomp $line;
- next if $line =~ /^\s+$/;
- last if $line eq 'Feedback';
-
- if ( $line =~ /^(?<continent>\w.+)$/ ) {
- if ($continent) {
- say '';
- if ($continent) {
- say "=back";
- say '';
- }
- if ( $continent eq 'North America' ) {
- say "=back";
- say '';
- }
- }
- $continent = $+{continent};
- undef $country;
- say "=head2 $continent";
- say '';
- say '=over 4';
- say '';
- } elsif ( $line =~ /^\s{3}(?<country>\w.+)$/ ) {
- if ($country) {
- say '';
- }
- $country = $+{country};
- undef $state;
- say "=item $country";
+foreach my $continent ( sort { $a cmp $b } keys %sorted ) {
+ say "=head2 $continent";
+ say '';
+ say '=over 4';
+ say '';
+ foreach my $country ( sort { $a cmp $b } keys %{ $sorted{ $continent } } ) {
+ say "=item $country";
+ say '';
+ if ( $country eq 'United States' ) {
+ say '=over 8';
+ say '';
+ foreach my $state ( sort { $a cmp $b } keys %{ $sorted{ $continent }{ $country } } ) {
+ say "=item $state";
say '';
- if ( $country eq 'United States' ) {
- say '=over 8';
- say '';
- }
- } elsif ( $line =~ /^\s{5}(?<state>\w.+)$/ ) {
- if ($state) {
- say '';
+ foreach my $mirror ( @{ $sorted{ $continent }{ $country }{ $state } } ) {
+ say " " . $mirror->{http} if $mirror->{http};
+ say " " . $mirror->{ftp} if $mirror->{ftp};
+ push @rsync, $mirror->{rsync} if $mirror->{rsync};
}
- $state = $+{state};
- say "=item $state";
say '';
- } elsif ( $line =~ /^\s{22}(?<site>\w.+$)/ ) {
- say " $+{site}";
- } else {
- die "Unknown line: $line";
+ }
+ say '=back';
+ say '';
+ }
+ else {
+ foreach my $mirror ( @{ $sorted{ $continent }{ $country } } ) {
+ say " " . $mirror->{http} if $mirror->{http};
+ say " " . $mirror->{ftp} if $mirror->{ftp};
+ push @rsync, $mirror->{rsync} if $mirror->{rsync};
+ }
+ say '';
}
+ }
+ say '=back';
+ say '';
+}
+
+say '=head2 RSYNC Mirrors';
+say '';
+
+foreach my $rsync ( @rsync ) {
+ say "\t\t$rsync";
}
say '';
-say '=back';
diff --git a/pod/perlmodlib.PL b/pod/perlmodlib.PL
index aa6b18cd3c..3c5be81c9f 100644
--- a/pod/perlmodlib.PL
+++ b/pod/perlmodlib.PL
@@ -341,11 +341,23 @@ Generated by Porting/make_modlib_cpan.pl
=item South Africa
- http://cpan.mirror.ac.za/
- ftp://cpan.mirror.ac.za/
http://mirror.is.co.za/pub/cpan/
ftp://ftp.is.co.za/pub/cpan/
+ http://cpan.mirror.ac.za/
+ ftp://cpan.mirror.ac.za/
+ http://cpan.saix.net/
ftp://ftp.saix.net/pub/CPAN/
+ http://ftp.wa.co.za/pub/CPAN/
+ ftp://ftp.wa.co.za/pub/CPAN/
+
+=item Uganda
+
+ http://mirror.ucu.ac.ug/cpan/
+
+=item Zimbabwe
+
+ http://mirror.zol.co.zw/CPAN/
+ ftp://mirror.zol.co.zw/CPAN/
=back
@@ -353,103 +365,123 @@ Generated by Porting/make_modlib_cpan.pl
=over 4
-=item China
+=item Bangladesh
- http://cpan.wenzk.com/
+ http://mirror.dhakacom.com/CPAN/
+ ftp://mirror.dhakacom.com/CPAN/
-=item Hong Kong
+=item China
+ http://cpan.communilink.net/
http://ftp.cuhk.edu.hk/pub/packages/perl/CPAN/
ftp://ftp.cuhk.edu.hk/pub/packages/perl/CPAN/
- http://mirrors.geoexpat.com/cpan/
+ http://mirrors.hust.edu.cn/CPAN/
+ http://mirrors.neusoft.edu.cn/cpan/
+ http://mirror.lzu.edu.cn/CPAN/
+ http://mirrors.163.com/cpan/
+ http://mirrors.sohu.com/CPAN/
+ http://mirrors.ustc.edu.cn/CPAN/
+ ftp://mirrors.ustc.edu.cn/CPAN/
+ http://mirrors.xmu.edu.cn/CPAN/
+ ftp://mirrors.xmu.edu.cn/CPAN/
+ http://mirrors.zju.edu.cn/CPAN/
=item India
+ http://cpan.excellmedia.net/
http://perlmirror.indialinks.com/
=item Indonesia
- http://cpan.biz.net.id/
- http://komo.vlsm.org/CPAN/
- ftp://komo.vlsm.org/CPAN/
- http://cpan.cermin.lipi.go.id/
- ftp://cermin.lipi.go.id/pub/CPAN/
+ http://kambing.ui.ac.id/cpan/
http://cpan.pesat.net.id/
+ http://mirror.poliwangi.ac.id/CPAN/
+ http://kartolo.sby.datautama.net.id/CPAN/
+ http://mirror.wanxp.id/cpan/
+
+=item Iran
+
+ http://mirror.yazd.ac.ir/cpan/
+
+=item Israel
+
+ http://biocourse.weizmann.ac.il/CPAN/
=item Japan
- ftp://ftp.u-aizu.ac.jp/pub/CPAN
+ http://ftp.jaist.ac.jp/pub/CPAN/
+ ftp://ftp.jaist.ac.jp/pub/CPAN/
+ http://mirror.jre655.com/CPAN/
+ ftp://mirror.jre655.com/CPAN/
ftp://ftp.kddilabs.jp/CPAN/
http://ftp.nara.wide.ad.jp/pub/CPAN/
ftp://ftp.nara.wide.ad.jp/pub/CPAN/
- http://ftp.jaist.ac.jp/pub/CPAN/
- ftp://ftp.jaist.ac.jp/pub/CPAN/
- ftp://ftp.dti.ad.jp/pub/lang/CPAN/
- ftp://ftp.ring.gr.jp/pub/lang/perl/CPAN/
http://ftp.riken.jp/lang/CPAN/
ftp://ftp.riken.jp/lang/CPAN/
+ ftp://ftp.u-aizu.ac.jp/pub/CPAN/
http://ftp.yz.yamagata-u.ac.jp/pub/lang/cpan/
ftp://ftp.yz.yamagata-u.ac.jp/pub/lang/cpan/
+=item Kazakhstan
+
+ http://mirror.neolabs.kz/CPAN/
+ ftp://mirror.neolabs.kz/CPAN/
+
+=item Philippines
+
+ http://mirror.pregi.net/CPAN/
+ ftp://mirror.pregi.net/CPAN/
+ http://mirror.rise.ph/cpan/
+ ftp://mirror.rise.ph/cpan/
+
+=item Qatar
+
+ http://mirror.qnren.qa/CPAN/
+ ftp://mirror.qnren.qa/CPAN/
+
=item Republic of Korea
- http://ftp.kaist.ac.kr/pub/CPAN
- ftp://ftp.kaist.ac.kr/pub/CPAN
http://cpan.mirror.cdnetworks.com/
ftp://cpan.mirror.cdnetworks.com/CPAN/
- http://cpan.sarang.net/
- ftp://cpan.sarang.net/CPAN/
-
-=item Russia
-
- http://cpan.tomsk.ru/
- ftp://cpan.tomsk.ru/
+ http://ftp.kaist.ac.kr/pub/CPAN/
+ ftp://ftp.kaist.ac.kr/CPAN/
+ http://ftp.kr.freebsd.org/pub/CPAN/
+ ftp://ftp.kr.freebsd.org/pub/CPAN/
+ http://mirror.navercorp.com/CPAN/
+ http://ftp.neowiz.com/CPAN/
+ ftp://ftp.neowiz.com/CPAN/
=item Singapore
- http://mirror.averse.net/pub/CPAN
- ftp://mirror.averse.net/pub/CPAN
http://cpan.mirror.choon.net/
- http://cpan.oss.eznetsols.org
- ftp://ftp.oss.eznetsols.org/cpan
+ http://mirror.0x.sg/CPAN/
+ ftp://mirror.0x.sg/CPAN/
=item Taiwan
- http://ftp.cse.yzu.edu.tw/pub/CPAN/
- ftp://ftp.cse.yzu.edu.tw/pub/CPAN/
+ http://cpan.cdpa.nsysu.edu.tw/Unix/Lang/CPAN/
+ ftp://cpan.cdpa.nsysu.edu.tw/Unix/Lang/CPAN/
+ http://cpan.stu.edu.tw/
+ ftp://ftp.stu.edu.tw/CPAN/
+ http://ftp.yzu.edu.tw/CPAN/
+ ftp://ftp.yzu.edu.tw/CPAN/
http://cpan.nctu.edu.tw/
ftp://cpan.nctu.edu.tw/
- ftp://ftp.ncu.edu.tw/CPAN/
- http://cpan.cdpa.nsysu.edu.tw/
- ftp://cpan.cdpa.nsysu.edu.tw/Unix/Lang/CPAN/
- http://cpan.stu.edu.tw
- ftp://ftp.stu.edu.tw/CPAN
- http://ftp.stu.edu.tw/CPAN
- ftp://ftp.stu.edu.tw/pub/CPAN
- http://cpan.cs.pu.edu.tw/
- ftp://cpan.cs.pu.edu.tw/pub/CPAN
-
-=item Thailand
-
- http://mirrors.issp.co.th/cpan/
- ftp://mirrors.issp.co.th/cpan/
- http://mirror.yourconnect.com/CPAN/
- ftp://mirror.yourconnect.com/CPAN/
+ http://ftp.ubuntu-tw.org/mirror/CPAN/
+ ftp://ftp.ubuntu-tw.org/mirror/CPAN/
=item Turkey
- http://cpan.gazi.edu.tr/
-
-=back
-
-=head2 Central America
-
-=over 4
+ http://cpan.ulak.net.tr/
+ ftp://ftp.ulak.net.tr/pub/perl/CPAN/
+ http://mirror.vit.com.tr/mirror/CPAN/
+ ftp://mirror.vit.com.tr/CPAN/
-=item Costa Rica
+=item Viet Nam
- http://mirrors.ucr.ac.cr/CPAN/
- ftp://mirrors.ucr.ac.cr/CPAN/
+ http://mirrors.digipower.vn/CPAN/
+ http://mirror.downloadvn.com/cpan/
+ http://mirrors.vinahost.vn/CPAN/
=back
@@ -460,27 +492,38 @@ Generated by Porting/make_modlib_cpan.pl
=item Austria
http://cpan.inode.at/
- ftp://cpan.inode.at
+ ftp://cpan.inode.at/
+ http://mirror.easyname.at/cpan/
+ ftp://mirror.easyname.at/cpan/
http://gd.tuwien.ac.at/languages/perl/CPAN/
ftp://gd.tuwien.ac.at/pub/CPAN/
+=item Belarus
+
+ http://ftp.byfly.by/pub/CPAN/
+ ftp://ftp.byfly.by/pub/CPAN/
+ http://mirror.datacenter.by/pub/CPAN/
+ ftp://mirror.datacenter.by/pub/CPAN/
+
=item Belgium
- http://ftp.belnet.be/mirror/ftp.cpan.org/
+ http://ftp.belnet.be/ftp.cpan.org/
ftp://ftp.belnet.be/mirror/ftp.cpan.org/
- http://ftp.easynet.be/pub/CPAN/
- http://cpan.weepee.org/
+ http://cpan.cu.be/
+ http://lib.ugent.be/CPAN/
+ http://cpan.weepeetelecom.be/
=item Bosnia and Herzegovina
- http://cpan.blic.net/
+ http://cpan.mirror.ba/
+ ftp://ftp.mirror.ba/CPAN/
=item Bulgaria
- http://cpan.cbox.biz/
- ftp://cpan.cbox.biz/cpan/
- http://cpan.digsys.bg/
- ftp://ftp.digsys.bg/pub/CPAN
+ http://mirrors.neterra.net/CPAN/
+ ftp://mirrors.neterra.net/CPAN/
+ http://mirrors.netix.net/CPAN/
+ ftp://mirrors.netix.net/CPAN/
=item Croatia
@@ -489,104 +532,100 @@ Generated by Porting/make_modlib_cpan.pl
=item Czech Republic
+ http://mirror.dkm.cz/cpan/
+ ftp://mirror.dkm.cz/cpan/
ftp://ftp.fi.muni.cz/pub/CPAN/
- http://archive.cpan.cz/
+ http://mirrors.nic.cz/CPAN/
+ ftp://mirrors.nic.cz/pub/CPAN/
+ http://cpan.mirror.vutbr.cz/
+ ftp://mirror.vutbr.cz/cpan/
=item Denmark
- http://mirrors.dotsrc.org/cpan
- ftp://mirrors.dotsrc.org/cpan/
http://www.cpan.dk/
- http://mirror.uni-c.dk/pub/CPAN/
+ http://mirrors.dotsrc.org/cpan/
+ ftp://mirrors.dotsrc.org/cpan/
=item Finland
ftp://ftp.funet.fi/pub/languages/perl/CPAN/
- http://mirror.eunet.fi/CPAN
=item France
- http://cpan.enstimac.fr/
- ftp://ftp.inria.fr/pub/CPAN/
+ http://ftp.ciril.fr/pub/cpan/
+ ftp://ftp.ciril.fr/pub/cpan/
http://distrib-coffee.ipsl.jussieu.fr/pub/mirrors/cpan/
ftp://distrib-coffee.ipsl.jussieu.fr/pub/mirrors/cpan/
+ http://ftp.lip6.fr/pub/perl/CPAN/
ftp://ftp.lip6.fr/pub/perl/CPAN/
- http://mir2.ovh.net/ftp.cpan.org
- ftp://mir1.ovh.net/ftp.cpan.org
+ http://mirror.ibcp.fr/pub/CPAN/
ftp://ftp.oleane.net/pub/CPAN/
- http://ftp.crihan.fr/mirrors/ftp.cpan.org/
- ftp://ftp.crihan.fr/mirrors/ftp.cpan.org/
- http://ftp.u-strasbg.fr/CPAN
- ftp://ftp.u-strasbg.fr/CPAN
- http://cpan.cict.fr/
- ftp://cpan.cict.fr/pub/CPAN/
+ http://cpan.mirrors.ovh.net/ftp.cpan.org/
+ ftp://cpan.mirrors.ovh.net/ftp.cpan.org/
+ http://cpan.enstimac.fr/
=item Germany
- ftp://ftp.fu-berlin.de/unix/languages/perl/
- http://mirrors.softliste.de/cpan/
- ftp://ftp.rub.de/pub/CPAN/
- http://www.planet-elektronik.de/CPAN/
+ http://mirror.23media.de/cpan/
+ ftp://mirror.23media.de/cpan/
+ http://artfiles.org/cpan.org/
+ ftp://artfiles.org/cpan.org/
+ http://mirror.bibleonline.ru/cpan/
+ http://mirror.checkdomain.de/CPAN/
+ ftp://mirror.checkdomain.de/CPAN/
+ http://cpan.noris.de/
+ http://mirror.de.leaseweb.net/CPAN/
+ ftp://mirror.de.leaseweb.net/CPAN/
+ http://cpan.mirror.euserv.net/
+ ftp://mirror.euserv.net/cpan/
+ http://ftp-stud.hs-esslingen.de/pub/Mirrors/CPAN/
+ ftp://mirror.fraunhofer.de/CPAN/
+ ftp://ftp.freenet.de/pub/ftp.cpan.org/pub/CPAN/
http://ftp.hosteurope.de/pub/CPAN/
ftp://ftp.hosteurope.de/pub/CPAN/
- http://www.mirrorspace.org/cpan/
- http://mirror.netcologne.de/cpan/
- ftp://mirror.netcologne.de/cpan/
- ftp://ftp.freenet.de/pub/ftp.cpan.org/pub/CPAN/
- http://ftp-stud.hs-esslingen.de/pub/Mirrors/CPAN/
- ftp://ftp-stud.hs-esslingen.de/pub/Mirrors/CPAN/
- http://mirrors.zerg.biz/cpan/
+ ftp://ftp.fu-berlin.de/unix/languages/perl/
http://ftp.gwdg.de/pub/languages/perl/CPAN/
ftp://ftp.gwdg.de/pub/languages/perl/CPAN/
- http://dl.ambiweb.de/mirrors/ftp.cpan.org/
- http://cpan.mirror.clusters.kg/
+ http://ftp.hawo.stw.uni-erlangen.de/CPAN/
+ ftp://ftp.hawo.stw.uni-erlangen.de/CPAN/
http://cpan.mirror.iphh.net/
ftp://cpan.mirror.iphh.net/pub/CPAN/
- http://cpan.mirroring.de/
- http://mirror.informatik.uni-mannheim.de/pub/mirrors/CPAN/
- ftp://mirror.informatik.uni-mannheim.de/pub/mirrors/CPAN/
- http://www.chemmedia.de/mirrors/CPAN/
- http://ftp.cw.net/pub/CPAN/
- ftp://ftp.cw.net/pub/CPAN/
- http://cpan.cpantesters.org/
- ftp://cpan.cpantesters.org/CPAN/
- http://cpan.mirrored.de/
+ ftp://ftp.mpi-inf.mpg.de/pub/perl/CPAN/
+ http://cpan.netbet.org/
+ http://mirror.netcologne.de/cpan/
+ ftp://mirror.netcologne.de/cpan/
ftp://mirror.petamem.com/CPAN/
- http://cpan.noris.de/
- ftp://cpan.noris.de/pub/CPAN/
- ftp://ftp.mpi-sb.mpg.de/pub/perl/CPAN/
- ftp://ftp.gmd.de/mirrors/CPAN/
+ http://www.planet-elektronik.de/CPAN/
+ http://ftp.halifax.rwth-aachen.de/cpan/
+ ftp://ftp.halifax.rwth-aachen.de/cpan/
+ http://mirror.softaculous.com/cpan/
+ http://ftp.u-tx.net/CPAN/
+ ftp://ftp.u-tx.net/CPAN/
+ http://mirror.reismil.ch/CPAN/
=item Greece
- ftp://ftp.forthnet.gr/pub/languages/perl/CPAN
- ftp://ftp.ntua.gr/pub/lang/perl/
- http://cpan.cc.uoc.gr/
+ http://cpan.cc.uoc.gr/mirrors/CPAN/
ftp://ftp.cc.uoc.gr/mirrors/CPAN/
+ http://ftp.ntua.gr/pub/lang/perl/
+ ftp://ftp.ntua.gr/pub/lang/perl/
=item Hungary
- http://cpan.mirrors.enexis.hu/
- ftp://cpan.mirrors.enexis.hu/mirrors/cpan/
- http://cpan.hu/
-
-=item Iceland
-
- http://ftp.rhnet.is/pub/CPAN/
- ftp://ftp.rhnet.is/pub/CPAN/
+ http://mirror.met.hu/CPAN/
=item Ireland
- http://ftp.esat.net/pub/languages/perl/CPAN/
- ftp://ftp.esat.net/pub/languages/perl/CPAN/
- http://ftp.heanet.ie/mirrors/ftp.perl.org/pub/CPAN
- ftp://ftp.heanet.ie/mirrors/ftp.perl.org/pub/CPAN
+ http://ftp.heanet.ie/mirrors/ftp.perl.org/pub/CPAN/
+ ftp://ftp.heanet.ie/mirrors/ftp.perl.org/pub/CPAN/
=item Italy
http://bo.mirror.garr.it/mirrors/CPAN/
+ ftp://ftp.eutelia.it/CPAN_Mirror/
http://cpan.panu.it/
ftp://ftp.panu.it/pub/mirrors/perl/CPAN/
+ http://cpan.muzzy.it/
=item Latvia
@@ -597,136 +636,133 @@ Generated by Porting/make_modlib_cpan.pl
http://ftp.litnet.lt/pub/CPAN/
ftp://ftp.litnet.lt/pub/CPAN/
-=item Malta
+=item Moldova
- http://cpan.waldonet.net.mt/
+ http://mirror.as43289.net/pub/CPAN/
+ ftp://mirror.as43289.net/pub/CPAN/
=item Netherlands
- ftp://ftp.quicknet.nl/pub/CPAN/
- http://mirror.hostfuss.com/CPAN/
- ftp://mirror.hostfuss.com/CPAN/
- http://mirrors3.kernel.org/cpan/
- ftp://mirrors3.kernel.org/pub/CPAN/
- http://cpan.mirror.versatel.nl/
- ftp://ftp.mirror.versatel.nl/cpan/
+ http://cpan.cs.uu.nl/
+ ftp://ftp.cs.uu.nl/pub/CPAN/
+ http://mirror.nl.leaseweb.net/CPAN/
+ ftp://mirror.nl.leaseweb.net/CPAN/
+ http://ftp.nluug.nl/languages/perl/CPAN/
+ ftp://ftp.nluug.nl/pub/languages/perl/CPAN/
+ http://mirror.transip.net/CPAN/
+ ftp://mirror.transip.net/CPAN/
+ http://cpan.mirror.triple-it.nl/
+ http://ftp.tudelft.nl/cpan/
+ ftp://ftp.tudelft.nl/pub/CPAN/
ftp://download.xs4all.nl/pub/mirror/CPAN/
- http://mirror.leaseweb.com/CPAN/
- ftp://mirror.leaseweb.com/CPAN/
- ftp://ftp.cpan.nl/pub/CPAN/
- http://archive.cs.uu.nl/mirror/CPAN/
- ftp://ftp.cs.uu.nl/mirror/CPAN/
- http://luxitude.net/cpan/
=item Norway
- ftp://ftp.uninett.no/pub/languages/perl/CPAN
- ftp://ftp.uit.no/pub/languages/perl/cpan/
+ http://cpan.uib.no/
+ ftp://cpan.uib.no/pub/CPAN/
+ ftp://ftp.uninett.no/pub/languages/perl/CPAN/
+ http://cpan.vianett.no/
=item Poland
- http://piotrkosoft.net/pub/mirrors/CPAN/
+ http://ftp.agh.edu.pl/CPAN/
+ ftp://ftp.agh.edu.pl/CPAN/
+ http://ftp.piotrkosoft.net/pub/mirrors/CPAN/
ftp://ftp.piotrkosoft.net/pub/mirrors/CPAN/
- http://ftp.man.poznan.pl/pub/CPAN
- ftp://ftp.man.poznan.pl/pub/CPAN
ftp://ftp.ps.pl/pub/CPAN/
+ http://sunsite.icm.edu.pl/pub/CPAN/
ftp://sunsite.icm.edu.pl/pub/CPAN/
- ftp://ftp.tpnet.pl/d4/CPAN/
=item Portugal
- http://cpan.dei.uc.pt/
- ftp://ftp.dei.uc.pt/pub/CPAN
- ftp://ftp.ist.utl.pt/pub/CPAN/
- http://cpan.perl.pt/
- http://cpan.ip.pt/
- ftp://cpan.ip.pt/pub/cpan/
- http://mirrors.nfsi.pt/CPAN/
- ftp://mirrors.nfsi.pt/pub/CPAN/
http://cpan.dcc.fc.up.pt/
+ http://mirrors.fe.up.pt/pub/CPAN/
+ http://cpan.perl-hackers.net/
+ http://cpan.perl.pt/
=item Romania
- http://ftp.astral.ro/pub/CPAN/
- ftp://ftp.astral.ro/pub/CPAN/
- ftp://ftp.lug.ro/CPAN
+ http://mirrors.hostingromania.ro/cpan.org/
+ ftp://ftp.lug.ro/CPAN/
+ http://mirrors.m247.ro/CPAN/
+ http://mirrors.evowise.com/CPAN/
+ http://mirrors.teentelecom.net/CPAN/
+ ftp://mirrors.teentelecom.net/CPAN/
http://mirrors.xservers.ro/CPAN/
- http://mirrors.hostingromania.ro/ftp.cpan.org/
- ftp://ftp.hostingromania.ro/mirrors/ftp.cpan.org/
- ftp://ftp.iasi.roedu.net/pub/mirrors/ftp.cpan.org/
-=item Russia
+=item Russian Federation
ftp://ftp.aha.ru/CPAN/
http://cpan.rinet.ru/
ftp://cpan.rinet.ru/pub/mirror/CPAN/
- ftp://ftp.SpringDaemons.com/pub/CPAN/
+ http://cpan-mirror.rbc.ru/pub/CPAN/
http://mirror.rol.ru/CPAN/
- http://ftp.silvernet.ru/CPAN/
- http://ftp.spbu.ru/CPAN/
- ftp://ftp.spbu.ru/CPAN/
+ http://cpan.uni-altai.ru/
+ http://cpan.webdesk.ru/
+ ftp://cpan.webdesk.ru/cpan/
+ http://mirror.yandex.ru/mirrors/cpan/
+ ftp://mirror.yandex.ru/mirrors/cpan/
+
+=item Serbia
+
+ http://mirror.sbb.rs/CPAN/
+ ftp://mirror.sbb.rs/CPAN/
=item Slovakia
- http://cpan.fyxm.net/
+ http://cpan.lnx.sk/
+ http://tux.rainside.sk/CPAN/
+ ftp://tux.rainside.sk/CPAN/
=item Slovenia
- http://www.klevze.si/cpan
+ http://ftp.arnes.si/software/perl/CPAN/
+ ftp://ftp.arnes.si/software/perl/CPAN/
=item Spain
+ http://mirrors.evowise.com/CPAN/
http://osl.ugr.es/CPAN/
+ http://ftp.rediris.es/mirror/CPAN/
ftp://ftp.rediris.es/mirror/CPAN/
- http://ftp.gui.uva.es/sites/cpan.org/
- ftp://ftp.gui.uva.es/sites/cpan.org/
=item Sweden
- http://mirrors4.kernel.org/cpan/
- ftp://mirrors4.kernel.org/pub/CPAN/
+ http://ftp.acc.umu.se/mirror/CPAN/
+ ftp://ftp.acc.umu.se/mirror/CPAN/
=item Switzerland
- http://cpan.mirror.solnet.ch/
- ftp://ftp.solnet.ch/mirror/CPAN/
- ftp://ftp.adwired.ch/CPAN/
+ http://www.pirbot.com/mirrors/cpan/
http://mirror.switch.ch/ftp/mirror/CPAN/
ftp://mirror.switch.ch/mirror/CPAN/
=item Ukraine
- http://cpan.makeperl.org/
- ftp://cpan.makeperl.org/pub/CPAN
- http://cpan.org.ua/
- http://cpan.gafol.net/
- ftp://ftp.gafol.net/pub/cpan/
+ http://cpan.ip-connect.vn.ua/
+ ftp://cpan.ip-connect.vn.ua/mirror/cpan/
=item United Kingdom
- http://www.mirrorservice.org/sites/ftp.funet.fi/pub/languages/perl/CPAN/
- ftp://ftp.mirrorservice.org/sites/ftp.funet.fi/pub/languages/perl/CPAN/
- http://mirror.tje.me.uk/pub/mirrors/ftp.cpan.org/
- ftp://mirror.tje.me.uk/pub/mirrors/ftp.cpan.org/
- http://www.mirror.8086.net/sites/CPAN/
- ftp://ftp.mirror.8086.net/sites/CPAN/
http://cpan.mirror.anlx.net/
ftp://ftp.mirror.anlx.net/CPAN/
http://mirror.bytemark.co.uk/CPAN/
ftp://mirror.bytemark.co.uk/CPAN/
+ http://mirrors.coreix.net/CPAN/
http://cpan.etla.org/
- ftp://cpan.etla.org/pub/CPAN
- ftp://ftp.demon.co.uk/pub/CPAN/
+ ftp://cpan.etla.org/pub/CPAN/
+ http://cpan.cpantesters.org/
+ http://mirror.sax.uk.as61049.net/CPAN/
http://mirror.sov.uk.goscomb.net/CPAN/
- ftp://mirror.sov.uk.goscomb.net/pub/CPAN/
- http://ftp.plig.net/pub/CPAN/
- ftp://ftp.plig.net/pub/CPAN/
+ http://www.mirrorservice.org/sites/cpan.perl.org/CPAN/
+ ftp://ftp.mirrorservice.org/sites/cpan.perl.org/CPAN/
+ http://mirror.ox.ac.uk/sites/www.cpan.org/
+ ftp://mirror.ox.ac.uk/sites/www.cpan.org/
http://ftp.ticklers.org/pub/CPAN/
ftp://ftp.ticklers.org/pub/CPAN/
http://cpan.mirrors.uk2.net/
ftp://mirrors.uk2.net/pub/CPAN/
- http://mirror.ox.ac.uk/sites/www.cpan.org/
- ftp://mirror.ox.ac.uk/sites/www.cpan.org/
+ http://mirror.ukhost4u.com/CPAN/
=back
@@ -734,25 +770,20 @@ Generated by Porting/make_modlib_cpan.pl
=over 4
-=item Bahamas
-
- http://www.securehost.com/mirror/CPAN/
-
=item Canada
- http://cpan.arcticnetwork.ca
- ftp://mirror.arcticnetwork.ca/pub/CPAN
- http://cpan.sunsite.ualberta.ca/
- ftp://cpan.sunsite.ualberta.ca/pub/CPAN/
- http://theoryx5.uwinnipeg.ca/pub/CPAN/
- ftp://theoryx5.uwinnipeg.ca/pub/CPAN/
- http://arwen.cs.dal.ca/mirror/CPAN/
- ftp://arwen.cs.dal.ca/pub/mirror/CPAN/
http://CPAN.mirror.rafal.ca/
ftp://CPAN.mirror.rafal.ca/pub/CPAN/
- ftp://ftp.nrc.ca/pub/CPAN/
- http://mirror.csclub.uwaterloo.ca/pub/CPAN/
- ftp://mirror.csclub.uwaterloo.ca/pub/CPAN/
+ http://mirror.csclub.uwaterloo.ca/CPAN/
+ ftp://mirror.csclub.uwaterloo.ca/CPAN/
+ http://mirrors.gossamer-threads.com/CPAN/
+ http://mirror.its.dal.ca/cpan/
+ ftp://mirror.its.dal.ca/cpan/
+ ftp://ftp.ottix.net/pub/CPAN/
+
+=item Costa Rica
+
+ http://mirrors.ucr.ac.cr/CPAN/
=item Mexico
@@ -765,58 +796,43 @@ Generated by Porting/make_modlib_cpan.pl
=item Alabama
- http://mirror.hiwaay.net/CPAN/
- ftp://mirror.hiwaay.net/CPAN/
+ http://mirror.teklinks.com/CPAN/
=item Arizona
- http://cpan.ezarticleinformation.com/
+ http://mirror.n5tech.com/CPAN/
+ http://mirrors.namecheap.com/CPAN/
+ ftp://mirrors.namecheap.com/CPAN/
=item California
- http://cpan.knowledgematters.net/
- http://cpan.binkerton.com/
http://cpan.develooper.com/
- http://mirrors.gossamer-threads.com/CPAN
- http://cpan.schatt.com/
- http://mirrors.kernel.org/cpan/
- ftp://mirrors.kernel.org/pub/CPAN
- http://mirrors2.kernel.org/cpan/
- ftp://mirrors2.kernel.org/pub/CPAN/
- http://cpan.mirror.facebook.net/
- http://mirrors1.kernel.org/cpan/
- ftp://mirrors1.kernel.org/pub/CPAN/
- http://cpan-sj.viaverio.com/
- ftp://cpan-sj.viaverio.com/pub/CPAN/
+ http://httpupdate127.cpanel.net/CPAN/
+ http://mirrors.sonic.net/cpan/
+ ftp://mirrors.sonic.net/cpan/
http://www.perl.com/CPAN/
-
-=item Florida
-
- ftp://ftp.cise.ufl.edu/pub/mirrors/CPAN/
- http://mirror.atlantic.net/pub/CPAN/
- ftp://mirror.atlantic.net/pub/CPAN/
+ http://cpan.yimg.com/
=item Idaho
- http://mirror.its.uidaho.edu/pub/cpan/
- ftp://mirror.its.uidaho.edu/cpan/
+ http://mirrors.syringanetworks.net/CPAN/
+ ftp://mirrors.syringanetworks.net/CPAN/
=item Illinois
http://cpan.mirrors.hoobly.com/
- http://cpan.uchicago.edu/pub/CPAN/
- ftp://cpan.uchicago.edu/pub/CPAN/
- http://mirrors.servercentral.net/CPAN/
- http://www.stathy.com/CPAN/
- ftp://www.stathy.com/CPAN/
+ http://mirror.team-cymru.org/CPAN/
+ ftp://mirror.team-cymru.org/CPAN/
=item Indiana
- ftp://ftp.uwsg.iu.edu/pub/perl/CPAN/
http://cpan.netnitco.net/
ftp://cpan.netnitco.net/pub/mirrors/CPAN/
- http://ftp.ndlug.nd.edu/pub/perl/
- ftp://ftp.ndlug.nd.edu/pub/perl/
+ ftp://ftp.uwsg.iu.edu/pub/perl/CPAN/
+
+=item Kansas
+
+ http://mirrors.concertpass.com/cpan/
=item Massachusetts
@@ -824,22 +840,27 @@ Generated by Porting/make_modlib_cpan.pl
=item Michigan
- http://ftp.wayne.edu/cpan/
- ftp://ftp.wayne.edu/cpan/
+ http://cpan.cse.msu.edu/
+ ftp://cpan.cse.msu.edu/
+ http://httpupdate118.cpanel.net/CPAN/
+ http://mirrors-usa.go-parts.com/cpan/
+ http://ftp.wayne.edu/CPAN/
+ ftp://ftp.wayne.edu/CPAN/
-=item Minnesota
+=item New Hampshire
- http://cpan.msi.umn.edu/
+ http://mirror.metrocast.net/cpan/
=item New Jersey
http://mirror.datapipe.net/CPAN/
ftp://mirror.datapipe.net/pub/CPAN/
+ http://www.hoovism.com/CPAN/
+ ftp://ftp.hoovism.com/CPAN/
+ http://cpan.mirror.nac.net/
=item New York
- http://mirrors.24-7-solutions.net/pub/CPAN/
- ftp://mirrors.24-7-solutions.net/pub/CPAN/
http://mirror.cc.columbia.edu/pub/software/cpan/
ftp://mirror.cc.columbia.edu/pub/software/cpan/
http://cpan.belfry.net/
@@ -847,63 +868,62 @@ Generated by Porting/make_modlib_cpan.pl
ftp://cpan.erlbaum.net/CPAN/
http://cpan.hexten.net/
ftp://cpan.hexten.net/
- ftp://mirror.nyi.net/CPAN/
- http://mirror.rit.edu/CPAN/
- ftp://mirror.rit.edu/CPAN/
+ http://mirror.nyi.net/CPAN/
+ ftp://mirror.nyi.net/pub/CPAN/
+ http://noodle.portalus.net/CPAN/
+ ftp://noodle.portalus.net/CPAN/
+ http://mirrors.rit.edu/CPAN/
+ ftp://mirrors.rit.edu/CPAN/
=item North Carolina
- http://www.ibiblio.org/pub/mirrors/CPAN
- ftp://ftp.ncsu.edu/pub/mirror/CPAN/
+ http://httpupdate140.cpanel.net/CPAN/
+ http://mirrors.ibiblio.org/CPAN/
=item Oregon
http://ftp.osuosl.org/pub/CPAN/
ftp://ftp.osuosl.org/pub/CPAN/
+ http://mirror.uoregon.edu/CPAN/
=item Pennsylvania
- http://ftp.epix.net/CPAN/
- ftp://ftp.epix.net/pub/languages/perl/
http://cpan.pair.com/
ftp://cpan.pair.com/pub/CPAN/
+ http://cpan.mirrors.ionfish.org/
=item South Carolina
http://cpan.mirror.clemson.edu/
-=item Tennessee
-
- http://mira.sunsite.utk.edu/CPAN/
-
=item Texas
- http://mirror.uta.edu/CPAN
+ http://mirror.uta.edu/CPAN/
=item Utah
+ http://cpan.cs.utah.edu/
+ ftp://cpan.cs.utah.edu/CPAN/
ftp://mirror.xmission.com/CPAN/
=item Virginia
- http://cpan-du.viaverio.com/
- ftp://cpan-du.viaverio.com/pub/CPAN/
- http://perl.secsup.org/
- ftp://perl.secsup.org/pub/perl/
+ http://mirror.cogentco.com/pub/CPAN/
ftp://mirror.cogentco.com/pub/CPAN/
+ http://mirror.jmu.edu/pub/CPAN/
+ ftp://mirror.jmu.edu/pub/CPAN/
+ http://mirror.us.leaseweb.net/CPAN/
+ ftp://mirror.us.leaseweb.net/CPAN/
=item Washington
http://cpan.llarian.net/
ftp://cpan.llarian.net/pub/CPAN/
- ftp://ftp-mirror.internap.com/pub/CPAN/
=item Wisconsin
- http://cpan.mirrors.tds.net
- ftp://cpan.mirrors.tds.net/pub/CPAN
- http://mirror.sit.wisc.edu/pub/CPAN/
- ftp://mirror.sit.wisc.edu/pub/CPAN/
+ http://cpan.mirrors.tds.net/
+ ftp://cpan.mirrors.tds.net/pub/CPAN/
=back
@@ -915,19 +935,32 @@ Generated by Porting/make_modlib_cpan.pl
=item Australia
- http://mirror.internode.on.net/pub/cpan/
+ http://mirror.as24220.net/pub/cpan/
+ ftp://mirror.as24220.net/pub/cpan/
+ http://cpan.mirrors.ilisys.com.au/
+ http://cpan.mirror.digitalpacific.com.au/
ftp://mirror.internode.on.net/pub/cpan/
- http://cpan.mirror.aussiehq.net.au/
- http://mirror.as24220.net/cpan/
- ftp://mirror.as24220.net/cpan/
+ http://mirror.optusnet.com.au/CPAN/
+ http://cpan.mirror.serversaustralia.com.au/
+ http://cpan.uberglobalmirror.com/
+ http://mirror.waia.asn.au/pub/cpan/
+
+=item New Caledonia
+
+ http://cpan.lagoon.nc/pub/CPAN/
+ ftp://cpan.lagoon.nc/pub/CPAN/
+ http://cpan.nautile.nc/CPAN/
+ ftp://cpan.nautile.nc/CPAN/
=item New Zealand
ftp://ftp.auckland.ac.nz/pub/perl/CPAN/
- http://cpan.inspire.net.nz
- ftp://cpan.inspire.net.nz/cpan
http://cpan.catalyst.net.nz/CPAN/
ftp://cpan.catalyst.net.nz/pub/CPAN/
+ http://cpan.inspire.net.nz/
+ ftp://cpan.inspire.net.nz/cpan/
+ http://mirror.webtastix.net/CPAN/
+ ftp://mirror.webtastix.net/CPAN/
=back
@@ -937,107 +970,117 @@ Generated by Porting/make_modlib_cpan.pl
=item Argentina
- http://cpan.patan.com.ar/
- http://cpan.localhost.net.ar
- ftp://mirrors.localhost.net.ar/pub/mirrors/CPAN
+ http://cpan.mmgdesigns.com.ar/
=item Brazil
- ftp://cpan.pop-mg.com.br/pub/CPAN/
- http://ftp.pucpr.br/CPAN
- ftp://ftp.pucpr.br/CPAN
http://cpan.kinghost.net/
+ http://linorg.usp.br/CPAN/
+ http://mirror.nbtelecom.com.br/CPAN/
=item Chile
http://cpan.dcc.uchile.cl/
ftp://cpan.dcc.uchile.cl/pub/lang/cpan/
-=item Colombia
-
- http://www.laqee.unal.edu.co/CPAN/
-
=back
=head2 RSYNC Mirrors
- mirror.as24220.net::cpan
- cpan.inode.at::CPAN
- gd.tuwien.ac.at::CPAN
- ftp.belnet.be::packages/cpan
- rsync.linorg.usp.br::CPAN
- rsync.arcticnetwork.ca::CPAN
- CPAN.mirror.rafal.ca::CPAN
- mirror.csclub.uwaterloo.ca::CPAN
- theoryx5.uwinnipeg.ca::CPAN
- www.laqee.unal.edu.co::CPAN
- mirror.uni-c.dk::CPAN
- rsync.nic.funet.fi::CPAN
- rsync://distrib-coffee.ipsl.jussieu.fr/pub/mirrors/cpan/
- mir1.ovh.net::CPAN
- miroir-francais.fr::cpan
- ftp.crihan.fr::CPAN
- rsync://mirror.cict.fr/cpan/
- rsync://mirror.netcologne.de/cpan/
- ftp-stud.hs-esslingen.de::CPAN/
- ftp.gwdg.de::FTP/languages/perl/CPAN/
- cpan.mirror.iphh.net::CPAN
- cpan.cpantesters.org::cpan
- cpan.hu::CPAN
- komo.vlsm.org::CPAN
- mirror.unej.ac.id::cpan
- ftp.esat.net::/pub/languages/perl/CPAN
- ftp.heanet.ie::mirrors/ftp.perl.org/pub/CPAN
- rsync.panu.it::CPAN
- cpan.fastbull.org::CPAN
- ftp.kddilabs.jp::cpan
- ftp.nara.wide.ad.jp::cpan/
- rsync://ftp.jaist.ac.jp/pub/CPAN/
- rsync://ftp.riken.jp/cpan/
- mirror.linuxiso.kz::CPAN
- rsync://mirrors3.kernel.org/mirrors/CPAN/
- rsync://rsync.osmirror.nl/cpan/
- mirror.leaseweb.com::CPAN
- cpan.nautile.nc::CPAN
- mirror.icis.pcz.pl::CPAN
- piotrkosoft.net::mirrors/CPAN
- rsync://cpan.perl.pt/
- ftp.kaist.ac.kr::cpan
- cpan.sarang.net::CPAN
- mirror.averse.net::cpan
- rsync.oss.eznetsols.org
- mirror.ac.za::cpan
- ftp.is.co.za::IS-Mirror/ftp.cpan.org/
- rsync://ftp.gui.uva.es/cpan/
- rsync://mirrors4.kernel.org/mirrors/CPAN/
- ftp.solnet.ch::CPAN
- ftp.ulak.net.tr::CPAN
- gafol.net::cpan
- rsync.mirrorservice.org::ftp.funet.fi/pub/
- rsync://rsync.mirror.8086.net/CPAN/
- rsync.mirror.anlx.net::CPAN
- mirror.bytemark.co.uk::CPAN
- ftp.plig.net::CPAN
- rsync://ftp.ticklers.org:CPAN/
- mirrors.ibiblio.org::CPAN
- cpan-du.viaverio.com::CPAN
- mirror.hiwaay.net::CPAN
- rsync://mira.sunsite.utk.edu/CPAN/
- cpan.mirrors.tds.net::CPAN
- mirror.its.uidaho.edu::cpan
- rsync://mirror.cc.columbia.edu::cpan/
- ftp.fxcorporate.com::CPAN
- rsync.atlantic.net::CPAN
- mirrors.kernel.org::mirrors/CPAN
- rsync://mirrors2.kernel.org/mirrors/CPAN/
- cpan.pair.com::CPAN
- rsync://mirror.rit.edu/CPAN/
- rsync://mirror.facebook.net/cpan/
- rsync://mirrors1.kernel.org/mirrors/CPAN/
- cpan-sj.viaverio.com::CPAN
+ rsync://ftp.is.co.za/IS-Mirror/ftp.cpan.org/
+ rsync://mirror.ac.za/CPAN/
+ rsync://mirror.zol.co.zw/CPAN/
+ rsync://mirror.dhakacom.com/CPAN/
+ rsync://mirrors.ustc.edu.cn/CPAN/
+ rsync://mirrors.xmu.edu.cn/CPAN/
+ rsync://kambing.ui.ac.id/CPAN/
+ rsync://ftp.jaist.ac.jp/pub/CPAN/
+ rsync://mirror.jre655.com/CPAN/
+ rsync://ftp.kddilabs.jp/cpan/
+ rsync://ftp.nara.wide.ad.jp/cpan/
+ rsync://ftp.riken.jp/cpan/
+ rsync://mirror.neolabs.kz/CPAN/
+ rsync://mirror.qnren.qa/CPAN/
+ rsync://ftp.neowiz.com/CPAN/
+ rsync://mirror.0x.sg/CPAN/
+ rsync://ftp.yzu.edu.tw/pub/CPAN/
+ rsync://ftp.ubuntu-tw.org/CPAN/
+ rsync://mirrors.digipower.vn/CPAN/
+ rsync://cpan.inode.at/CPAN/
+ rsync://ftp.byfly.by/CPAN/
+ rsync://mirror.datacenter.by/CPAN/
+ rsync://ftp.belnet.be/cpan/
+ rsync://cpan.mirror.ba/CPAN/
+ rsync://mirrors.neterra.net/CPAN/
+ rsync://mirrors.netix.net/CPAN/
+ rsync://mirror.dkm.cz/cpan/
+ rsync://mirrors.nic.cz/CPAN/
+ rsync://cpan.mirror.vutbr.cz/cpan/
+ rsync://rsync.nic.funet.fi/CPAN/
+ rsync://ftp.ciril.fr/pub/cpan/
+ rsync://distrib-coffee.ipsl.jussieu.fr/pub/mirrors/cpan/
+ rsync://cpan.mirrors.ovh.net/CPAN/
+ rsync://mirror.de.leaseweb.net/CPAN/
+ rsync://mirror.euserv.net/cpan/
+ rsync://ftp-stud.hs-esslingen.de/CPAN/
+ rsync://ftp.gwdg.de/pub/languages/perl/CPAN/
+ rsync://ftp.hawo.stw.uni-erlangen.de/CPAN/
+ rsync://cpan.mirror.iphh.net/CPAN/
+ rsync://mirror.netcologne.de/cpan/
+ rsync://ftp.halifax.rwth-aachen.de/cpan/
+ rsync://ftp.ntua.gr/CPAN/
+ rsync://mirror.met.hu/CPAN/
+ rsync://ftp.heanet.ie/mirrors/ftp.perl.org/pub/CPAN/
+ rsync://rsync.panu.it/CPAN/
+ rsync://mirror.as43289.net/CPAN/
+ rsync://rsync.cs.uu.nl/CPAN/
+ rsync://mirror.nl.leaseweb.net/CPAN/
+ rsync://ftp.nluug.nl/CPAN/
+ rsync://mirror.transip.net/CPAN/
+ rsync://cpan.uib.no/cpan/
+ rsync://cpan.vianett.no/CPAN/
+ rsync://cpan.perl-hackers.net/CPAN/
+ rsync://cpan.perl.pt/cpan/
+ rsync://mirrors.m247.ro/CPAN/
+ rsync://mirrors.teentelecom.net/CPAN/
+ rsync://cpan.webdesk.ru/CPAN/
+ rsync://mirror.yandex.ru/mirrors/cpan/
+ rsync://mirror.sbb.rs/CPAN/
+ rsync://ftp.acc.umu.se/mirror/CPAN/
+ rsync://rsync.pirbot.com/ftp/cpan/
+ rsync://cpan.ip-connect.vn.ua/CPAN/
+ rsync://rsync.mirror.anlx.net/CPAN/
+ rsync://mirror.bytemark.co.uk/CPAN/
+ rsync://mirror.sax.uk.as61049.net/CPAN/
+ rsync://rsync.mirrorservice.org/cpan.perl.org/CPAN/
+ rsync://ftp.ticklers.org/CPAN/
+ rsync://mirrors.uk2.net/CPAN/
+ rsync://CPAN.mirror.rafal.ca/CPAN/
+ rsync://mirror.csclub.uwaterloo.ca/CPAN/
+ rsync://mirrors.namecheap.com/CPAN/
+ rsync://mirrors.syringanetworks.net/CPAN/
+ rsync://mirror.team-cymru.org/CPAN/
+ rsync://debian.cse.msu.edu/cpan/
+ rsync://mirrors-usa.go-parts.com/mirrors/cpan/
+ rsync://rsync.hoovism.com/CPAN/
+ rsync://mirror.cc.columbia.edu/cpan/
+ rsync://noodle.portalus.net/CPAN/
+ rsync://mirrors.rit.edu/cpan/
+ rsync://mirrors.ibiblio.org/CPAN/
+ rsync://cpan.pair.com/CPAN/
+ rsync://cpan.cs.utah.edu/CPAN/
+ rsync://mirror.cogentco.com/CPAN/
+ rsync://mirror.jmu.edu/CPAN/
+ rsync://mirror.us.leaseweb.net/CPAN/
+ rsync://cpan.mirror.digitalpacific.com.au/cpan/
+ rsync://mirror.internode.on.net/cpan/
+ rsync://uberglobalmirror.com/cpan/
+ rsync://cpan.lagoon.nc/cpan/
+ rsync://mirrors.mmgdesigns.com.ar/CPAN/
+
For an up-to-date listing of CPAN sites,
-see http://www.cpan.org/SITES or ftp://www.cpan.org/SITES .
+see L<http://www.cpan.org/SITES> or L<ftp://www.cpan.org/SITES>.
=head1 Modules: Creation, Use, and Abuse