Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package perl-App-perlbrew for
openSUSE:Factory checked in at 2022-05-20 17:51:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-App-perlbrew (Old)
and /work/SRC/openSUSE:Factory/.perl-App-perlbrew.new.1538 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-App-perlbrew"
Fri May 20 17:51:02 2022 rev:30 rq:978229 version:0.95
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-App-perlbrew/perl-App-perlbrew.changes
2021-12-07 00:01:36.420092313 +0100
+++
/work/SRC/openSUSE:Factory/.perl-App-perlbrew.new.1538/perl-App-perlbrew.changes
2022-05-20 17:52:01.423296882 +0200
@@ -1,0 +2,13 @@
+Mon May 16 03:06:05 UTC 2022 - Tina M??ller <[email protected]>
+
+- updated to 0.95
+ see /usr/share/doc/packages/perl-App-perlbrew/Changes
+
+ 0.95
+ - Released at 2022-05-15T22:59:11+0800
+ - Thanks to our contributors: Leon Timmermans
+ - Now we use metacpan api for fetching perl versions and for
downloading. Github PR #743
+ - `--verbose` flag now also enable verbosity of underlying curl/wget
commands. Github PR #740.
+ - Avoid perl test errors when NO_COLOR is set. Github PR #738
+
+-------------------------------------------------------------------
Old:
----
App-perlbrew-0.94.tar.gz
New:
----
App-perlbrew-0.95.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-App-perlbrew.spec ++++++
--- /var/tmp/diff_new_pack.31xwbR/_old 2022-05-20 17:52:01.919297334 +0200
+++ /var/tmp/diff_new_pack.31xwbR/_new 2022-05-20 17:52:01.923297338 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-App-perlbrew
#
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,17 +18,17 @@
%define cpan_name App-perlbrew
Name: perl-App-perlbrew
-Version: 0.94
+Version: 0.95
Release: 0
-Summary: Manage perl installations in your C<$HOME>
License: MIT
+Summary: Manage perl installations in your C<$HOME>
URL: https://metacpan.org/release/%{cpan_name}
Source0:
https://cpan.metacpan.org/authors/id/G/GU/GUGOD/%{cpan_name}-%{version}.tar.gz
Source1: cpanspec.yml
BuildArch: noarch
BuildRequires: perl
BuildRequires: perl-macros
-BuildRequires: perl(CPAN::Perl::Releases) >= 5.20210620
+BuildRequires: perl(CPAN::Perl::Releases) >= 5.20220313
BuildRequires: perl(Capture::Tiny) >= 0.48
BuildRequires: perl(Devel::PatchPerl) >= 2.08
BuildRequires: perl(ExtUtils::MakeMaker) >= 7.22
@@ -48,7 +48,7 @@
BuildRequires: perl(Test::Spec) >= 0.49
BuildRequires: perl(Test::TempDir::Tiny) >= 0.016
BuildRequires: perl(local::lib) >= 2.000014
-Requires: perl(CPAN::Perl::Releases) >= 5.20210620
+Requires: perl(CPAN::Perl::Releases) >= 5.20220313
Requires: perl(Capture::Tiny) >= 0.48
Requires: perl(Devel::PatchPerl) >= 2.08
Requires: perl(ExtUtils::MakeMaker) >= 7.22
@@ -59,9 +59,7 @@
Requires: perl(local::lib) >= 2.000014
%{perl_requires}
# MANUAL BEGIN
-BuildRequires: curl
-BuildRequires: groff
-BuildRequires: wget
+BuildRequires: wget curl groff
# MANUAL END
%description
++++++ App-perlbrew-0.94.tar.gz -> App-perlbrew-0.95.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/App-perlbrew-0.94/CONTRIBUTING.md
new/App-perlbrew-0.95/CONTRIBUTING.md
--- old/App-perlbrew-0.94/CONTRIBUTING.md 2021-12-05 00:42:00.000000000
+0100
+++ new/App-perlbrew-0.95/CONTRIBUTING.md 2022-05-15 17:05:33.000000000
+0200
@@ -6,6 +6,7 @@
- Fork the repository on github
- Modify `lib/App/perlbrew.pm` or `script/perlbrew` if necessary.
- Add tests so others do not break your feature.
+- If it seems pulsable, update `Changes` too. Put a gist of the change in the
beginning of the file.
- Send a pull request to @gugod and make an offer that he cannot reject
(optional :-)
Notice that the "master" branch is a stable branch, while the "develop" branch
is the default target
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/App-perlbrew-0.94/Changes
new/App-perlbrew-0.95/Changes
--- old/App-perlbrew-0.94/Changes 2021-12-05 00:42:00.000000000 +0100
+++ new/App-perlbrew-0.95/Changes 2022-05-15 17:05:33.000000000 +0200
@@ -1,3 +1,10 @@
+0.95
+ - Released at 2022-05-15T22:59:11+0800
+ - Thanks to our contributors: Leon Timmermans
+ - Now we use metacpan api for fetching perl versions and for
downloading. Github PR #743
+ - `--verbose` flag now also enable verbosity of underlying curl/wget
commands. Github PR #740.
+ - Avoid perl test errors when NO_COLOR is set. Github PR #738
+
0.94
- Released at 2021-12-05T08:39:16+0900
- Let `self-upgrade` print version numbers when doing upgrades. Github
issue #678.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/App-perlbrew-0.94/LICENSE
new/App-perlbrew-0.95/LICENSE
--- old/App-perlbrew-0.94/LICENSE 2021-12-05 00:42:00.000000000 +0100
+++ new/App-perlbrew-0.95/LICENSE 2022-05-15 17:05:33.000000000 +0200
@@ -1,4 +1,4 @@
-This software is Copyright (c) 2021 by Kang-min Liu C<< <[email protected]> >>.
+This software is Copyright (c) 2022 by Kang-min Liu C<< <[email protected]> >>.
This is free software, licensed under:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/App-perlbrew-0.94/META.json
new/App-perlbrew-0.95/META.json
--- old/App-perlbrew-0.94/META.json 2021-12-05 00:42:00.000000000 +0100
+++ new/App-perlbrew-0.95/META.json 2022-05-15 17:05:33.000000000 +0200
@@ -27,7 +27,7 @@
},
"runtime" : {
"requires" : {
- "CPAN::Perl::Releases" : "5.20210620",
+ "CPAN::Perl::Releases" : "5.20220313",
"Capture::Tiny" : "0.48",
"Devel::PatchPerl" : "2.08",
"ExtUtils::MakeMaker" : "7.22",
@@ -75,7 +75,7 @@
},
"App::perlbrew" : {
"file" : "lib/App/perlbrew.pm",
- "version" : "0.94"
+ "version" : "0.95"
}
},
"release_status" : "stable",
@@ -89,8 +89,8 @@
"web" : "https://github.com/gugod/App-perlbrew"
}
},
- "version" : "0.94",
- "x_serialization_backend" : "JSON::PP version 4.04",
+ "version" : "0.95",
+ "x_serialization_backend" : "JSON::PP version 4.07",
"x_spdx_expression" : "MIT",
"x_static_install" : "1"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/App-perlbrew-0.94/META.yml
new/App-perlbrew-0.95/META.yml
--- old/App-perlbrew-0.94/META.yml 2021-12-05 00:42:00.000000000 +0100
+++ new/App-perlbrew-0.95/META.yml 2022-05-15 17:05:33.000000000 +0200
@@ -37,9 +37,9 @@
file: lib/App/Perlbrew/Util.pm
App::perlbrew:
file: lib/App/perlbrew.pm
- version: '0.94'
+ version: '0.95'
requires:
- CPAN::Perl::Releases: '5.20210620'
+ CPAN::Perl::Releases: '5.20220313'
Capture::Tiny: '0.48'
Devel::PatchPerl: '2.08'
ExtUtils::MakeMaker: '7.22'
@@ -52,7 +52,7 @@
resources:
bugtracker: https://github.com/gugod/App-perlbrew/issues
repository: https://github.com/gugod/App-perlbrew.git
-version: '0.94'
+version: '0.95'
x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
x_spdx_expression: MIT
x_static_install: '1'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/App-perlbrew-0.94/README new/App-perlbrew-0.95/README
--- old/App-perlbrew-0.94/README 2021-12-05 00:42:00.000000000 +0100
+++ new/App-perlbrew-0.95/README 2022-05-15 17:05:33.000000000 +0200
@@ -118,10 +118,13 @@
perlbrew project <https://perlbrew.pl/> uses github
https://github.com/gugod/App-perlbrew/issues for issue tracking. Issues
- sent to these two systems will eventually be reviewed and handled.
+ sent to these two systems will eventually be reviewed and handled. To
+ participate, you need a github account.
- See https://github.com/gugod/App-perlbrew/contributors for a list of
- project contributors.
+ Please briefly read the short instructions about how to get your work
+ released to CPAN:
+
+ https://github.com/gugod/App-perlbrew/blob/develop/CONTRIBUTING.md
AUTHOR
@@ -129,7 +132,7 @@
COPYRIGHT
- Copyright (c) 2021 Kang-min Liu <[email protected]>.
+ Copyright (c) 2022 Kang-min Liu <[email protected]>.
LICENCE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/App-perlbrew-0.94/cpanfile
new/App-perlbrew-0.95/cpanfile
--- old/App-perlbrew-0.94/cpanfile 2021-12-05 00:42:00.000000000 +0100
+++ new/App-perlbrew-0.95/cpanfile 2022-05-15 17:05:33.000000000 +0200
@@ -1,5 +1,5 @@
# Always requires the latest for this two.
-requires 'CPAN::Perl::Releases' => '5.20210620';
+requires 'CPAN::Perl::Releases' => '5.20220313';
requires 'Devel::PatchPerl' => '2.08';
requires 'Capture::Tiny' => '0.48';
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/App-perlbrew-0.94/lib/App/Perlbrew/HTTP.pm
new/App-perlbrew-0.95/lib/App/Perlbrew/HTTP.pm
--- old/App-perlbrew-0.94/lib/App/Perlbrew/HTTP.pm 2021-12-05
00:42:00.000000000 +0100
+++ new/App-perlbrew-0.95/lib/App/Perlbrew/HTTP.pm 2022-05-15
17:05:33.000000000 +0200
@@ -6,6 +6,7 @@
use Exporter 'import';
our @EXPORT_OK = qw(http_user_agent_program http_user_agent_command http_get
http_download);
+our $HTTP_VERBOSE = 0;
our $HTTP_USER_AGENT_PROGRAM;
my %commands = (
@@ -65,10 +66,18 @@
sub http_user_agent_command {
my ($purpose, $params) = @_;
my $ua = http_user_agent_program;
- my $cmd = $ua . " " . $commands{ $ua }->{ $purpose };
+ my $cmd = $commands{ $ua }->{ $purpose };
for (keys %$params) {
$cmd =~ s!{$_}!$params->{$_}!g;
}
+
+ if ($HTTP_VERBOSE) {
+ unless ($ua eq "fetch") {
+ $cmd =~ s/(silent|quiet)/verbose/;
+ }
+ }
+
+ $cmd = $ua . " " . $cmd;
return ($ua, $cmd) if wantarray;
return $cmd;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/App-perlbrew-0.94/lib/App/perlbrew.pm
new/App-perlbrew-0.95/lib/App/perlbrew.pm
--- old/App-perlbrew-0.94/lib/App/perlbrew.pm 2021-12-05 00:42:00.000000000
+0100
+++ new/App-perlbrew-0.95/lib/App/perlbrew.pm 2022-05-15 17:05:33.000000000
+0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
use 5.008;
-our $VERSION = "0.94";
+our $VERSION = "0.95";
use Config;
BEGIN {
@@ -152,6 +152,10 @@
$self->root;
$self->home;
+ if ($self->{verbose}) {
+ $App::Perlbrew::HTTP::HTTP_VERBOSE = 1;
+ }
+
return $self;
}
@@ -311,11 +315,15 @@
}
sub cpan_mirror {
- my ($self) = @_;
+ my ($self, $v) = @_;
+
+ $self->{cpan_mirror} = $v if $v;
+
unless($self->{cpan_mirror}) {
- $self->{cpan_mirror} = $self->env("PERLBREW_CPAN_MIRROR") ||
"https://www.cpan.org";
+ $self->{cpan_mirror} = $self->env("PERLBREW_CPAN_MIRROR") ||
"https://cpan.metacpan.org";
$self->{cpan_mirror} =~ s{/+$}{};
}
+
return $self->{cpan_mirror};
}
@@ -689,51 +697,23 @@
my $perls = {};
my @perllist;
- my $url = $self->{all} ? "https://www.cpan.org/src/5.0/"
- : "https://www.cpan.org/src/README.html" ;
- my $html = http_get($url, undef, undef);
- unless ($html) {
- die "\nERROR: Unable to retrieve the list of perls from $url\n\n";
- }
- for (split "\n", $html) {
- my ($current_perl, $current_url);
- if ($self->{all}) {
- ($current_perl, $current_url) = ($2, $1) if m|<a
href="(perl.*?\.tar\.gz)">\s*([^\s]+?)\s*</a>|;
- }
- else {
- ($current_perl, $current_url ) = ($2, $1) if m|<td><a
href="(http(?:s?)://www.cpan.org/src/.+?)">\s*([^\s]+?)\s*</a></td>|;
- }
-
- # if we have a $current_perl add it to the available hash of perls
- if ($current_perl) {
- $current_perl =~ s/\.tar\.(bz2|gz)//;
- push @perllist, [ $current_perl, $current_url ];
- $perls->{$current_perl} = $current_url;
- }
- }
-
# we got impatient waiting for cpan.org to get updated to show 5.28...
# So, we also fetch from metacpan for anything that looks perlish,
# and we do our own processing to filter out the development
# releases and minor versions when needed (using
# filter_perl_available)
- $url = 'https://fastapi.metacpan.org/v1/release/versions/perl';
- $html = http_get($url, undef, undef);
- unless ($html) {
- $html = '';
- warn "\nERROR: Unable to retrieve list of perls from Metacpan.\n\n";
+ my $url = 'https://fastapi.metacpan.org/v1/release/versions/perl';
+ my $json = http_get($url, undef, undef);
+ unless ($json) {
+ die "\nERROR: Unable to retrieve list of perls from Metacpan.\n\n";
}
- while ($html =~
m{"(http(?:s?)://cpan\.metacpan\.org/[^"]+/(perl-5\.[0-9]+\.[0-9]+(?:-[A-Z0-9]+)?)\.tar\.(?:bz2|gz))"}g)
{
- my ($current_perl, $current_url) = ($2, $1);
- push @perllist, [ $current_perl, $current_url ];
+ my $decoded = decode_json($json);
+ for my $release (@{ $decoded->{releases} }) {
+ push @perllist, [ $release->{name}, $release->{download_url} ];
}
foreach my $perl ($self->filter_perl_available(\@perllist)) {
- # We only want to add a Metacpan link if the www.cpan.org link
- # doesn't exist, and this assures that we do that properly.
- if (!exists($perls->{ $perl->[0] })) {
- $perls->{ $perl->[0] } = $perl->[1];
- }
+ $perls->{ $perl->[0] } = $perl->[1];
}
return $perls;
@@ -812,7 +792,7 @@
}
# try src/5.0 symlinks, either perl-5.X or perl5.X; favor .tar.bz2 over
.tar.gz
- my $index = http_get("https://www.cpan.org/src/5.0/");
+ my $index = http_get("https://cpan.metacpan.org/src/5.0/");
if ($index) {
for my $prefix ("perl-", "perl") {
for my $suffix (".tar.bz2", ".tar.gz") {
@@ -884,7 +864,7 @@
my $version = $rd->{version};
# try src/5.0 symlinks, either perl-5.X or perl5.X; favor .tar.bz2 over
.tar.gz
- my $index = http_get("https://www.cpan.org/src/5.0/");
+ my $index = http_get("https://cpan.metacpan.org/src/5.0/");
if ($index) {
for my $prefix ("perl-", "perl") {
for my $suffix (".tar.bz2", ".tar.gz") {
@@ -1675,7 +1655,7 @@
$cmd = "($cmd) >> '$self->{log_file}' 2>&1 ";
}
- delete $ENV{$_} for qw(PERL5LIB PERL5OPT AWKPATH);
+ delete $ENV{$_} for qw(PERL5LIB PERL5OPT AWKPATH NO_COLOR);
if ($self->do_system($cmd)) {
my $newperl = $self->root->perls ($installation_name)->perl;
@@ -2208,21 +2188,16 @@
sub run_command_self_upgrade {
my ($self) = @_;
- my $TMPDIR = $ENV{TMPDIR} || "/tmp";
- my $TMP_PERLBREW = App::Perlbrew::Path->new ($TMPDIR, "perlbrew");
require FindBin;
unless (-w $FindBin::Bin) {
die "Your perlbrew installation appears to be system-wide. Please
upgrade through your package manager.\n";
}
-
http_get('https://raw.githubusercontent.com/gugod/App-perlbrew/master/perlbrew',
undef, sub {
- my ($body) = @_;
+ my $TMPDIR = $ENV{TMPDIR} || "/tmp";
+ my $TMP_PERLBREW = App::Perlbrew::Path->new ($TMPDIR, "perlbrew");
- open my $fh, '>', $TMP_PERLBREW or die "Unable to write perlbrew: $!";
- print $fh $body;
- close $fh;
- });
+
http_download('https://raw.githubusercontent.com/gugod/App-perlbrew/master/perlbrew',
$TMP_PERLBREW);
chmod 0755, $TMP_PERLBREW;
my $new_version = qx($TMP_PERLBREW version);
@@ -2230,11 +2205,13 @@
if ($new_version =~ /App::perlbrew\/(\d+\.\d+)$/) {
$new_version = $1;
} else {
+ $TMP_PERLBREW->unlink;
die "Unable to detect version of new perlbrew!\n";
}
if ($new_version <= $VERSION) {
print "Your perlbrew is up-to-date (version $VERSION).\n" unless
$self->{quiet};
+ $TMP_PERLBREW->unlink;
return;
}
@@ -3381,10 +3358,12 @@
L<perlbrew project|https://perlbrew.pl/> uses github
L<https://github.com/gugod/App-perlbrew/issues> for issue
tracking. Issues sent to these two systems will eventually be reviewed
-and handled.
+and handled. To participate, you need a github account.
+
+Please briefly read the short instructions about how to get your work
+released to CPAN:
-See L<https://github.com/gugod/App-perlbrew/contributors> for a list
-of project contributors.
+L<https://github.com/gugod/App-perlbrew/blob/develop/CONTRIBUTING.md>
=head1 AUTHOR
@@ -3392,7 +3371,7 @@
=head1 COPYRIGHT
-Copyright (c) 2021 Kang-min Liu C<< <[email protected]> >>.
+Copyright (c) 2022 Kang-min Liu C<< <[email protected]> >>.
=head1 LICENCE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/App-perlbrew-0.94/t/03.test_get_available_versions.t
new/App-perlbrew-0.95/t/03.test_get_available_versions.t
--- old/App-perlbrew-0.94/t/03.test_get_available_versions.t 2021-12-05
00:42:00.000000000 +0100
+++ new/App-perlbrew-0.95/t/03.test_get_available_versions.t 2022-05-15
17:05:33.000000000 +0200
@@ -7,15 +7,12 @@
{
no warnings 'redefine';
- my $html_cpan = read_cpan_html();
- my $html_metacpan = read_metacpan_html();
+ my $html_metacpan = read_metacpan_json();
sub App::perlbrew::http_get {
my $url = shift;
- if ($url =~ m/www\.cpan\.org/) {
- return $html_cpan;
- } elsif ($url =~ m/fastapi\.metacpan\.org/) {
+ if ($url =~ m/fastapi\.metacpan\.org/) {
return $html_metacpan;
} else {
return '';
@@ -23,12 +20,12 @@
}
}
-plan tests => 17;
+plan tests => 12;
my $app = App::perlbrew->new();
my $dists = $app->available_perl_distributions();
my @vers = $app->sort_perl_versions(keys %$dists);
-is scalar( @vers ), 16, "Correct number of releases found";
+is scalar( @vers ), 11, "Correct number of releases found";
my @known_perl_versions = (
'perl-5.28.0', 'perl-5.26.2', 'perl-5.24.4', 'perl-5.22.4',
@@ -41,462 +38,7 @@
ok grep( $_ eq $perl_version, @known_perl_versions ), "$perl_version
found";
}
-sub read_cpan_html {
- return <<'EOF';
-<!DOCTYPE html>
-<html lang="en">
-<head>
- <title>Perl Source - www.cpan.org</title>
- <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<link rel="author" href="mailto:[email protected]" />
- <link rel="canonical" href="http://www.cpan.org/src/index.html" />
- <link type="text/css" rel="stylesheet" href="../misc/css/cpan.css" />
-
-</head>
-<body class="section_source">
-
-<table id="wrapper" border="0" width="95%" cellspacing="0" cellpadding="2"
align="center">
- <tr>
- <td id="header">
-
- <div id="header_left">
- <a href="../index.html"><img
src="../misc/images/cpan.png" id="logo" alt="CPAN" /></a>
- </div>
-
- <div id="header_right">
- <h1>Comprehensive Perl Archive Network</h1>
- <p id="strapline">Stop reinventing wheels, start building space
rockets
-
-
-</p>
- </div>
- </td>
- </tr>
- <tr>
- <td id="menubar_holder">
-
- <ul class="menubar">
- <li><a href="../index.html">Home</a></li>
- <li><a href="../modules/index.html">Modules</a></li>
- <li><a href="../ports/index.html">Ports</a></li>
- <li><a href="../src/README.html">Perl Source</a></li>
- <li><a href="../misc/cpan-faq.html">FAQ</a></li>
- <li><a href="../SITES.html">Mirrors</a></li>
- </ul>
-
- <div id="searchbar">
- <form method="get"
action="http://search.cpan.org/search" name="f" class="searchbox menubar"
id="f">
- <input type="hidden" name="mode"
value="all" />
- <a href="http://search.cpan.org">Search</a>:
- <input id="searchfield" type="text"
name="query" value="" placeholder="Module name" />
- <input type="submit" value="Search" />
- </form>
- </div>
- </td>
- </tr>
- <tr>
- <td>
- <div id="content">
-
-
-
-<h1>Perl Source</h1>
-
-<p>
- Perl <a href="http://en.wikipedia.org/wiki/Compiler">compiles</a> on over
<a href=
- "http://perldoc.perl.org/perlport.html#PLATFORMS">100 platforms</a>, if you
- want to install from a binary instead see the <a href=
- "../ports/index.html">ports</a> page (especially for Windows).
-</p>
-
-
-<h2>
- How to install from source
-</h2>
-
-
-<pre>
- wget <a
href="http://www.cpan.org/src/perl-5.12.3.tar.gz">http://www.cpan.org/src/perl-5.12.3.tar.gz</a>
- tar -xzf perl-5.12.3.tar.gz
- cd perl-5.12.3
- ./Configure -des -Dprefix=$HOME/localperl
- make
- make test
- make install
-</pre>
-<p>
- Read both INSTALL and README.<strong>yoursystem</strong> in
- the <code>perl-5.12.3</code> directory for more detailed information.
-</p>
-
-
-
-
-
-<h2>Latest releases in each branch of Perl</h2>
-
-
-<table class="os_version">
- <tr class="table_header">
- <th>Major</th>
- <th>Version</th>
- <th>Type</th>
- <th>Released</th>
- <th>Download</th>
- </tr>
-
-
- <tr >
- <td>5.13</td>
- <td>5.13.11
- <td>Devel</td>
- <td>2011-03-20</td>
- <td><a
href="https://www.cpan.org/src/perl-5.13.11.tar.bz2">perl-5.13.11.tar.bz2</a></td>
- </tr>
-
-
- <tr class="latest">
- <td>5.12</td>
- <td>5.12.5
- <td>Maint</td>
- <td>2011-01-22</td>
- <td><a
href="http://www.cpan.org/src/perl-5.12.5.tar.gz">perl-5.12.5.tar.gz</a></td>
- </tr>
-
-
- <tr >
- <td>5.10</td>
- <td>5.10.1
- <td>Maint</td>
- <td>2009-08-23</td>
- <td><a
href="http://www.cpan.org/src/perl-5.10.1.tar.gz">perl-5.10.1.tar.gz</a></td>
- </tr>
-
-
- <tr >
- <td>5.8</td>
- <td>5.8.9
- <td>Maint</td>
- <td>2008-12-14</td>
- <td><a
href="http://www.cpan.org/src/perl-5.8.9.tar.gz">perl-5.8.9.tar.gz</a></td>
- </tr>
-
-
- <tr >
- <td>5.6</td>
- <td>5.6.2
- <td>Maint</td>
- <td>2003-11-15</td>
- <td><a
href="http://www.cpan.org/src/perl-5.6.2.tar.gz">perl-5.6.2.tar.gz</a></td>
- </tr>
-
-
- <tr >
- <td>5.5</td>
- <td>5.5.4
- <td>Maint</td>
- <td>2004-02-23</td>
- <td><a
href="http://www.cpan.org/src/perl5.005_04.tar.gz">perl5.005_04.tar.gz</a></td>
- </tr>
-
-
- <tr >
- <td>5.4</td>
- <td>5.4.5
- <td>Maint</td>
- <td>1999-04-29</td>
- <td><a
href="http://www.cpan.org/src/perl5.004_05.tar.gz">perl5.004_05.tar.gz</a></td>
- </tr>
-
-
- <tr >
- <td>5.3</td>
- <td>5.3.7
- <td>Maint</td>
- <td>1996-10-10</td>
- <td><a
href="http://www.cpan.org/src/perl5.003_07.tar.gz">perl5.003_07.tar.gz</a></td>
- </tr>
-
-</table>
-
-
-
-
-<p>
- <a href="http://perldoc.perl.org/perlhist.html">Perl History</a>
-</p>
-<p>
- If you want to help out developing new releases of Perl visit the <a href=
- "http://dev.perl.org/perl5/">development site</a> and join the
- <a href="http://lists.perl.org/list/perl5-porters.html">perl5-porters</a>
mailing list.
-</p>
-
-<h2>
- Version scheme
-</h2>
-<p>
- Perl has used the following <a href=
- "http://perldoc.perl.org/perlpolicy.html">policy</a> since the 5.6 release
- of Perl:
-</p>
-<ul>
- <li>Maintenance branches (ready for production use) are even numbers (5.8,
- 5.10, 5.12 etc)
- </li>
- <li>Sub-branches of maintenance releases (5.12.1, 5.12.2 etc) are mostly
- just for bug fixes
- </li>
- <li>Development branches are odd numbers (5.9, 5.11, 5.13 etc)
- </li>
- <li>RC (release candidates) leading up to a maintenance branch are called
- testing releases
- </li>
-</ul>
-<p>
- Please note that branches earlier than 5.8 are no longer supported, though
- fixes for urgent issues, for example severe security problems, may
- still be issued.
-</p>
-<p>
- Note: please avoid referring to the "symbolic" source releases like
- "stable" and "latest", or "maint" and "devel". They are still used here but
- only for backward compatibility. The symbolic names were found to cause
- more confusion than they are worth because they don't really work with
- multiple branches, especially not with multiple maintenance branches, and
- especially the "latest" makes absolutely no sense. The "latest" and
- "stable" are now just aliases for "maint", and "maint" in turn is the
- maintenance branch with the largest release number.
-</p>
-
-
-<h2>First release in each branch of Perl</h2>
-
-
-<table class="os_version">
- <tr class="table_header">
- <th>Major</th>
- <th>Version</th>
- <th>Released</th>
- </tr>
-
-
- <tr>
- <td>5.12</td>
- <td>5.12.0
- <td>2010-04-12</td>
- </tr>
-
-
- <tr>
- <td>5.10</td>
- <td>5.10.0
- <td>2007-12-18</td>
- </tr>
-
-
- <tr>
- <td>5.8</td>
- <td>5.8.0
- <td>2002-07-18</td>
- </tr>
-
-
- <tr>
- <td>5.6</td>
- <td>5.6.0
- <td>2000-03-22</td>
- </tr>
-
-
- <tr>
- <td>5.5</td>
- <td>5.5.0
- <td>1998-07-22</td>
- </tr>
-
-
- <tr>
- <td>5.4</td>
- <td>5.4.0
- <td>1997-05-15</td>
- </tr>
-
-
- <tr>
- <td>5.3</td>
- <td>5.3.7
- <td>1996-10-10</td>
- </tr>
-
-</table>
-
-
-<p></p>
-
-<h2>
- Other files and directories (mostly for posterity)
-</h2>
-<ul>
- <li>
- <a href="5.0/">5.0/</a>
- <p>
- Source archives for all releases of perl5. You should only need to
- look here if you have an application which, for some reason or
- another, does not run with the current release of perl5. Be aware
- that only 5.004 and later versions of perl are maintained. If you
- report a genuine bug in such a version, you will probably be
- informed either that it is fixed in the current maintenance
- release, or will be fixed in a subsequent one. If you report a bug
- in an unmaintained version, you are likely to be advised to upgrade
- to a maintained version which fixes the bug, or to await a fix in a
- maintained version. No fix will be provided for the unmaintained
- version.
- </p>
- </li>
- <li>
- <p>
- Perl 6 or Parrot are not yet in CPAN. In the meanwhile, try
- <a href="http://dev.perl.org/perl6/">here</a> or <a href=
- "http://www.parrotcode.org/">here</a>.
- </p>
- </li>
- <li>
- <a href="5.0/jperl">5.0/jperl</a>
- <p>
- Path to patch files needed to adapt particular perl releases for
- use with Japanese character sets.
- </p>
- </li>
- <li>
- <a href="ENDINGS">ENDINGS</a>
- <p>
- Discussion of the meanings of the endings of filenames (.gz, .ZIP
- and so on). Read this file if you want to know how to handle a
- source code archive after you've downloaded it.
- </p>
- </li>
- <li>
- <a href="README">README</a>
- <p>
- This file.
- </p>
- </li>
- <li>
- <a href="misc/">misc/</a>
- <p>
- Third-party and other add-on source packages needed in order to
- build certain perl configurations. You do not need any of this
- stuff to build a default configuration.
- </p>
- </li>
- <li>perl-5.*.tar.gz, perl-5.*.tar.bz2, perl5_*.tar.gz
- <p>
- Source code archives for several recent production releases of
- perl.
- </p>
- </li>
- <li>
- <a href="unsupported/">unsupported/</a>
- <p>
- This is where we hid the source for perl4, which was superseded by
- perl5 years ago. We would really much rather that you didn't use
- it. It is definitely obsolete and has security and other bugs. And,
- since it's unsupported, it will continue to have them.
- </p>
- </li>
- <li>
- <a href="5.0/sperl-2000-08-05/">5.0/sperl-2000-08-05</a>
- <p>
- Files relevant to the security problem found in 'suidperl' in
- August 2000, reported in the bugtraq mailing list. The problem was
- found in all Perl release branches: 5.6, 5.005, and 5.004. The
- 5.6.1 release has a fix for this, as have the 5.8 releases. The
- (now obsolete) development branch 5.7 was unaffected, except for
- very early (pre-5.7.0) developer-only snapshots. The bug affects
- you only if you use an executable called 'suidperl', not if you use
- 'perl', and it is very likely only to affect UNIX platforms, and
- even more precisely, as of March 2001, the only platforms known to
- be affected are Linux platforms (all of them, <a href=
- "5.0/sperl-2000-08-05/sperl-2000-08-05.txt">as far as we know</a>).
- The 'suidperl' is an optional component which is not installed, or
- even built, by default. These files will help you in the case you
- compile Perl yourself from the source and you want to close the
- security hole.
- </p>
- </li>
- <li>
- <a href="5.0/CA-97.17.sperl">5.0/CA-97.17.sperl</a>
- </li>
- <li>
- <a href="5.0/fixsperl-0">5.0/fixsperl-0</a>
- </li>
- <li>
- <a href="5.0/fixsuid5-0.pat">5.0/fixsuid5-0.pat</a>
- <p>
- Files relevant to the CERT Advisory CA-97.17.sperl, a security
- problem found in 'suidperl' back in 1997. The problem was found
- both in Perl 4.036 (the final) (and last) release of Perl 4 and in
- early versions of Perl 5 (pre-5.003). The bug affects you only if
- you use an executable called 'suidperl', not if you use 'perl', and
- it is very likely only to affect UNIX platform. The 'suidperl' is
- an optional component which is not installed, or even built, by
- default. These files will help you in the (very unlikely) case you
- need to use (the obsolete and unsupported) Perl 4 or the early Perl
- 5s, <b>Perl releases newer than Perl 5.003 do not have this
- security problem.</b>
- </p>
- </li>
-</ul>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- </div>
- </td>
- </tr>
- <tr>
- <td id="footer">
- <div id="footer_copyright">
- <p>Yours Eclectically, The Self-Appointed Master Librarians
(<i>OOK!</i>) of the CPAN.<br/>
- © 1995-2010 Jarkko Hietaniemi.
- © 2011 <a href="http://www.perl.org">Perl.org</a>.
- All rights reserved.
- <a href="../disclaimer.html">Disclaimer</a>.
- </p>
- </div>
-
-
- <div id="footer_mirror">
- <p>Master mirror hosted by <a
href="http://www.yellowbot.com/"><img alt="YellowBot"
src="../misc/images/yellowbot.png" /></a></p>
- </div>
-
-
-
- </td>
- </tr>
-</table>
-
-
-</body>
-</html>
-EOF
-}
-
-sub read_metacpan_html {
+sub read_metacpan_json {
return <<'EOF';
{
"releases" : [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/App-perlbrew-0.94/t/08.error_available.t
new/App-perlbrew-0.95/t/08.error_available.t
--- old/App-perlbrew-0.94/t/08.error_available.t 2021-12-05
00:42:00.000000000 +0100
+++ new/App-perlbrew-0.95/t/08.error_available.t 2022-05-15
17:05:33.000000000 +0200
@@ -14,7 +14,24 @@
my $app = App::perlbrew->new("available");
$app->run;
},
- qr[ERROR: Unable to retrieve the list of perls.]
+ qr[ERROR:]
);
+throws_ok(
+ sub {
+ my $app = App::perlbrew->new("available");
+ my $ret = $app->available_perl_distributions();
+ },
+ qr[ERROR:]
+);
+
+throws_ok(
+ sub {
+ my $app = App::perlbrew->new("available");
+ my $ret = $app->available_cperl_distributions();
+ },
+ qr[ERROR:]
+);
+
+
done_testing;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/App-perlbrew-0.94/t/http-program-control.t
new/App-perlbrew-0.95/t/http-program-control.t
--- old/App-perlbrew-0.94/t/http-program-control.t 2021-12-05
00:42:00.000000000 +0100
+++ new/App-perlbrew-0.95/t/http-program-control.t 2022-05-15
17:05:33.000000000 +0200
@@ -4,15 +4,26 @@
use FindBin;
use lib $FindBin::Bin;
-use App::Perlbrew::HTTP qw(http_user_agent_program);
+use App::Perlbrew::HTTP qw(http_user_agent_command);
use Test::More;
use Test::Exception;
for my $prog (qw(curl wget fetch)) {
- subtest "UA set to $prog", sub {
- local $App::Perlbrew::HTTP::HTTP_USER_AGENT_PROGRAM = $prog;
- is http_user_agent_program(), $prog, "UA Program can be set to: $prog";
+ local $App::Perlbrew::HTTP::HTTP_USER_AGENT_PROGRAM = $prog;
+ for my $verbose (0, 1) {
+ local $App::Perlbrew::HTTP::HTTP_VERBOSE = $verbose;
+
+ subtest "UA should be $prog, verbosity should be $verbose", sub {
+ my ($ua, $cmd) = http_user_agent_command( "get" => { "url" =>
"https://perlbrew.pl" });
+
+ is $ua, $prog, "UA Program can be set to: $prog";
+
+ unless ($prog eq "fetch") {
+ my ($cmd_verbosity) = $cmd =~ m/\s(--verbose)\s/;
+ is !!$cmd_verbosity, !!$verbose, "verbosity matches: [$cmd]";
+ }
+ }
};
}