SHA256
3
0
forked from pool/perl

- update to perl-5.30.1

* unicode 12.1 is supported
  * turkic UTF-8 locales are now seamlessly supported
  * assigning non-zero to $[ is fatal
  * some formerly deprecated uses of an unescaped left brace "{" in
    regular expression patterns are now illegal
  * previously deprecated sysread()/syswrite() on :utf8 handles is 
    now fatal
  * my() in false conditional prohibited
  * remove File::Glob::glob()
  * various performance enhancements
- updated patches:
  * perl-5.22.0_wrong_rpm_provides.diff
  * perl-gdbm-test-no-mmap.diff
  * perl-fix2020.patch
  * perl-reproducible2.patch
- dropped patches:
  * perl-revert-caretx.diff
  * perl-regexp-refoverflow.diff

OBS-URL: https://build.opensuse.org/package/show/devel:languages:perl/perl?expand=0&rev=182
This commit is contained in:
Michael Schröder 2019-11-19 14:17:02 +00:00 committed by Git OBS Bridge
parent ec6678efe5
commit 12ca3a8449
10 changed files with 115 additions and 198 deletions

View File

@ -1,24 +1,12 @@
--- ./cpan/Math-BigInt/lib/Math/BigInt/CalcEmu.pm.orig 2017-04-19 13:37:05.000000000 +0000
+++ ./cpan/Math-BigInt/lib/Math/BigInt/CalcEmu.pm 2017-08-30 12:16:04.561183753 +0000
@@ -6,7 +6,8 @@ use warnings;
our $VERSION = '1.999811';
-package Math::BigInt;
+package Math::BigInt # line break to prevent wrong rpm provides
+;
# See SYNOPSIS below.
--- ./lib/sigtrap.pm.orig 2017-04-19 13:37:05.000000000 +0000
+++ ./lib/sigtrap.pm 2017-08-30 12:16:04.561183753 +0000
--- ./lib/sigtrap.pm.orig 2019-10-24 20:18:05.000000000 +0000
+++ ./lib/sigtrap.pm 2019-11-19 13:38:25.304577027 +0000
@@ -80,7 +80,8 @@ sub handler_die {
}
sub handler_traceback {
- package DB; # To get subroutine args.
+ package DB # line break to prevent wrong rpm provides
+ package DB # line break to prevent wrong rpm provides
+ ; # To get subroutine args.
my $use_print;
$SIG{'ABRT'} = DEFAULT;
kill 'ABRT', $$ if $panic++;
syswrite(STDERR, 'Caught a SIG', 12);

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fea7162d4cca940a387f0587b93f6737d884bf74d8a9d7cfd978bc12cd0b202d
size 12372080

3
perl-5.30.1.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7336cd3ed0535eb61b76a71350effcfa7c88b44faf37d64d70952ced5d38cd35
size 12367844

View File

@ -6,75 +6,53 @@ Subject: fix calls of timelocal to work after 2019
because year 70 then starts to mean 2070
https://bugzilla.opensuse.org/show_bug.cgi?id=1102840 trackerbug: build fails at some time
https://bugzilla.opensuse.org/show_bug.cgi?id=1102840 trackerbug: build fails at
some time
https://rt.perl.org/Ticket/Display.html?id=132896 perl Net::NNTP
https://rt.perl.org/Ticket/Display.html?id=132898 perl Net::FTP => https://rt.cpan.org/Public/Bug/Display.html?id=124534
https://rt.perl.org/Ticket/Display.html?id=132898 perl Net::FTP => https://rt.cp
an.org/Public/Bug/Display.html?id=124534
https://rt.perl.org/Ticket/Display.html?id=132897 perl doc
Index: perl-5.26.1/cpan/Time-Local/t/Local.t
===================================================================
--- perl-5.26.1.orig/cpan/Time-Local/t/Local.t
+++ perl-5.26.1/cpan/Time-Local/t/Local.t
@@ -85,6 +85,7 @@ my $epoch_is_64
--- ./cpan/Time-Local/t/Local.t.orig 2019-11-19 13:44:13.231729499 +0000
+++ ./cpan/Time-Local/t/Local.t 2019-11-19 13:52:27.846523342 +0000
@@ -147,21 +147,21 @@ subtest(
'diff between two calls',
sub {
is(
- timelocal( 0, 0, 1, 1, 0, 90 ) - timelocal( 0, 0, 0, 1, 0, 90 ),
+ timelocal( 0, 0, 1, 1, 0, 1990 ) - timelocal( 0, 0, 0, 1, 0, 1990 ),
3600,
'one hour difference between two calls to timelocal'
);
for ( @time, @neg_time ) {
my ( $year, $mon, $mday, $hour, $min, $sec ) = @$_;
+ my $year_in = $year;
$year -= 1900;
$mon--;
is(
- timelocal( 1, 2, 3, 1, 0, 100 )
- - timelocal( 1, 2, 3, 31, 11, 99 ),
+ timelocal( 1, 2, 3, 1, 0, 2000 )
+ - timelocal( 1, 2, 3, 31, 11, 1999 ),
24 * 3600,
'one day difference between two calls to timelocal'
);
@@ -96,7 +97,6 @@ SKIP: {
# Test timelocal()
# Diff beween Jan 1, 1980 and Mar 1, 1980 = (31 + 29 = 60 days)
is(
- timegm( 0, 0, 0, 1, 2, 80 ) - timegm( 0, 0, 0, 1, 0, 80 ),
+ timegm( 0, 0, 0, 1, 2, 1980 ) - timegm( 0, 0, 0, 1, 0, 1980 ),
60 * 24 * 3600,
'60 day difference between two calls to timegm'
);
@@ -176,7 +176,7 @@ subtest(
# treated like 03:00:00 rather than 01:00:00 - negative zone offsets
# used to do the latter.
{
- my $year_in = $year < 70 ? $year + 1900 : $year;
my $time = timelocal( $sec, $min, $hour, $mday, $mon, $year_in );
- my $hour = ( localtime( timelocal( 0, 0, 2, 7, 3, 102 ) ) )[2];
+ my $hour = ( localtime( timelocal( 0, 0, 2, 7, 3, 2002 ) ) )[2];
my ( $s, $m, $h, $D, $M, $Y ) = localtime($time);
@@ -111,7 +111,6 @@ SKIP: {
# Test timegm()
{
- my $year_in = $year < 70 ? $year + 1900 : $year;
my $time = timegm( $sec, $min, $hour, $mday, $mon, $year_in );
my ( $s, $m, $h, $D, $M, $Y ) = gmtime($time);
@@ -128,7 +127,6 @@ SKIP: {
for (@bad_time) {
my ( $year, $mon, $mday, $hour, $min, $sec ) = @$_;
- $year -= 1900;
$mon--;
eval { timegm( $sec, $min, $hour, $mday, $mon, $year ) };
@@ -138,19 +136,19 @@ for (@bad_time) {
{
is(
- timelocal( 0, 0, 1, 1, 0, 90 ) - timelocal( 0, 0, 0, 1, 0, 90 ), 3600,
+ timelocal( 0, 0, 1, 1, 0, 1990 ) - timelocal( 0, 0, 0, 1, 0, 1990 ), 3600,
'one hour difference between two calls to timelocal'
);
is(
- timelocal( 1, 2, 3, 1, 0, 100 ) - timelocal( 1, 2, 3, 31, 11, 99 ),
+ timelocal( 1, 2, 3, 1, 0, 2000 ) - timelocal( 1, 2, 3, 31, 11, 1999 ),
24 * 3600,
'one day difference between two calls to timelocal'
);
# Diff beween Jan 1, 1980 and Mar 1, 1980 = (31 + 29 = 60 days)
is(
- timegm( 0, 0, 0, 1, 2, 80 ) - timegm( 0, 0, 0, 1, 0, 80 ),
+ timegm( 0, 0, 0, 1, 2, 1980 ) - timegm( 0, 0, 0, 1, 0, 1980 ),
60 * 24 * 3600,
'60 day difference between two calls to timegm'
);
Index: perl-5.26.1/cpan/libnet/lib/Net/FTP.pm
===================================================================
--- perl-5.26.1.orig/cpan/libnet/lib/Net/FTP.pm
+++ perl-5.26.1/cpan/libnet/lib/Net/FTP.pm
@@ -264,7 +264,7 @@ sub mdtm {
# testers in US/Pacific should get 3,
# other testers should get 2
--- ./cpan/libnet/lib/Net/FTP.pm.orig 2019-11-19 13:47:09.143300523 +0000
+++ ./cpan/libnet/lib/Net/FTP.pm 2019-11-19 13:47:46.179210211 +0000
@@ -262,7 +262,7 @@ sub mdtm {
$ftp->_MDTM($file)
&& $ftp->message =~ /((\d\d)(\d\d\d?))(\d\d)(\d\d)(\d\d)(\d\d)(\d\d)/
@ -83,11 +61,9 @@ Index: perl-5.26.1/cpan/libnet/lib/Net/FTP.pm
: undef;
}
Index: perl-5.26.1/cpan/libnet/lib/Net/NNTP.pm
===================================================================
--- perl-5.26.1.orig/cpan/libnet/lib/Net/NNTP.pm
+++ perl-5.26.1/cpan/libnet/lib/Net/NNTP.pm
@@ -598,7 +598,7 @@ sub date {
--- ./cpan/libnet/lib/Net/NNTP.pm.orig 2019-11-19 13:47:57.431182773 +0000
+++ ./cpan/libnet/lib/Net/NNTP.pm 2019-11-19 13:48:08.143156648 +0000
@@ -596,7 +596,7 @@ sub date {
$nntp->_DATE
&& $nntp->message =~ /(\d{4})(\d\d)(\d\d)(\d\d)(\d\d)(\d\d)/
@ -96,10 +72,8 @@ Index: perl-5.26.1/cpan/libnet/lib/Net/NNTP.pm
: undef;
}
Index: perl-5.26.1/pod/perlport.pod
===================================================================
--- perl-5.26.1.orig/pod/perlport.pod
+++ perl-5.26.1/pod/perlport.pod
--- ./pod/perlport.pod.orig 2019-11-19 13:48:45.327065973 +0000
+++ ./pod/perlport.pod 2019-11-19 13:48:49.983054613 +0000
@@ -670,7 +670,7 @@ When calculating specific times, such as
it may be appropriate to calculate an offset for the epoch.

View File

@ -1,9 +1,9 @@
--- ./ext/GDBM_File/t/fatal.t.orig 2018-09-28 14:01:52.697941391 +0000
+++ ./ext/GDBM_File/t/fatal.t 2018-09-28 14:02:35.601833563 +0000
@@ -29,6 +29,7 @@ is((open $fh, "<&=$fileno"), undef,
--- ./ext/GDBM_File/t/fatal.t.orig 2019-10-24 20:18:04.000000000 +0000
+++ ./ext/GDBM_File/t/fatal.t 2019-11-19 13:40:06.696330179 +0000
@@ -37,6 +37,7 @@ is((open $fh, "<&=$fileno"), undef,
umask(0);
my %h;
isa_ok(tie(%h, 'GDBM_File', 'Op_dbmx', GDBM_WRCREAT, 0640), 'GDBM_File');
isa_ok(tie(%h, 'GDBM_File', 'fatal_dbmx', GDBM_WRCREAT, 0640), 'GDBM_File');
+tied(%h)->setopt(7, 0, length(pack("i", 0))); # turn off mmap mode
isnt((open $fh, "<&=$fileno"), undef, "dup fileno $fileno")

View File

@ -1,13 +0,0 @@
Index: regcomp.c
===================================================================
--- regcomp.c.orig
+++ regcomp.c
@@ -10988,7 +10988,7 @@ S_reg(pTHX_ RExC_state_t *pRExC_state, I
ret = reg2Lanode(pRExC_state, GOSUB, num, RExC_recurse_count);
if (!SIZE_ONLY) {
- if (num > (I32)RExC_rx->nparens) {
+ if (num < 0 || num > (I32)RExC_rx->nparens) {
RExC_parse++;
vFAIL("Reference to nonexistent group");
}

View File

@ -14,22 +14,19 @@ Date: Thu Dec 27 11:24:43 2018 +0100
There could be a chance for remaining variations.
---
---
Better fixes welcome.
Index: perl-5.28.1/dist/Storable/stacksize
===================================================================
--- perl-5.28.1.orig/dist/Storable/stacksize
+++ perl-5.28.1/dist/Storable/stacksize
@@ -198,8 +198,8 @@ my $max_depth_hash = $n;
--- ./dist/Storable/stacksize.orig 2019-11-19 13:55:21.210100584 +0000
+++ ./dist/Storable/stacksize 2019-11-19 13:56:37.537914451 +0000
@@ -164,8 +164,8 @@ my $max_depth_hash = $n;
# be fairly aggressive in trimming this, smoke testing showed several
# several apparently random failures here, eg. working in one
# configuration, but not in a very similar configuration.
-$max_depth = int(0.6 * $max_depth);
-$max_depth_hash = int(0.6 * $max_depth);
-$max_depth_hash = int(0.6 * $max_depth_hash);
+$max_depth = int(0.6 * $max_depth) & ~31;
+$max_depth_hash = int(0.6 * $max_depth) & ~31;
+$max_depth_hash = int(0.6 * $max_depth_hash) & ~31;
my $stack_reserve = $^O eq "MSWin32" ? 32 : 16;
if ($] ge "5.016" && !($^O eq "cygwin" && $ptrsize == 8)) {

View File

@ -1,48 +0,0 @@
--- ./caretx.c.orig 2018-05-21 12:29:23.000000000 +0000
+++ ./caretx.c 2018-09-28 14:05:46.785353073 +0000
@@ -56,7 +56,8 @@ Perl_set_caret_X(pTHX) {
SV *const caret_x = GvSV(tmpgv);
#if defined(OS2)
sv_setpv(caret_x, os2_execname(aTHX));
-#elif defined(USE_KERN_PROC_PATHNAME)
+#else
+# ifdef USE_KERN_PROC_PATHNAME
size_t size = 0;
int mib[4];
mib[0] = CTL_KERN;
@@ -76,7 +77,7 @@ Perl_set_caret_X(pTHX) {
return;
}
}
-#elif defined(USE_NSGETEXECUTABLEPATH)
+# elif defined(USE_NSGETEXECUTABLEPATH)
char buf[1];
uint32_t size = sizeof(buf);
@@ -95,7 +96,7 @@ Perl_set_caret_X(pTHX) {
return;
}
}
-#elif defined(HAS_PROCSELFEXE)
+# elif defined(HAS_PROCSELFEXE)
char buf[MAXPATHLEN];
SSize_t len = readlink(PROCSELFEXE_PATH, buf, sizeof(buf) - 1);
/* NOTE: if the length returned by readlink() is sizeof(buf) - 1,
@@ -125,7 +126,7 @@ Perl_set_caret_X(pTHX) {
sv_setpvn(caret_x, buf, len);
return;
}
-#elif defined(WIN32)
+# elif defined(WIN32)
char *ansi;
WCHAR widename[MAX_PATH];
GetModuleFileNameW(NULL, widename, sizeof(widename)/sizeof(WCHAR));
@@ -133,7 +134,7 @@ Perl_set_caret_X(pTHX) {
sv_setpv(caret_x, ansi);
win32_free(ansi);
return;
-#else
+# endif
/* Fallback to this: */
sv_setpv(caret_x, PL_origargv[0]);
#endif

View File

@ -1,3 +1,26 @@
-------------------------------------------------------------------
Tue Nov 19 14:25:46 CET 2019 - mls@suse.de
- update to perl-5.30.1
* unicode 12.1 is supported
* turkic UTF-8 locales are now seamlessly supported
* assigning non-zero to $[ is fatal
* some formerly deprecated uses of an unescaped left brace "{" in
regular expression patterns are now illegal
* previously deprecated sysread()/syswrite() on :utf8 handles is
now fatal
* my() in false conditional prohibited
* remove File::Glob::glob()
* various performance enhancements
- updated patches:
* perl-5.22.0_wrong_rpm_provides.diff
* perl-gdbm-test-no-mmap.diff
* perl-fix2020.patch
* perl-reproducible2.patch
- dropped patches:
* perl-revert-caretx.diff
* perl-regexp-refoverflow.diff
-------------------------------------------------------------------
Thu Jun 20 12:05:41 UTC 2019 - Martin Liška <mliska@suse.cz>

View File

@ -12,14 +12,14 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%define pversion 5.28.1
%global versionlist 5.28.0
%define pversion 5.30.1
%global versionlist %nil
Name: perl
Version: 5.28.1
Version: 5.30.1
Release: 0
Summary: The Perl interpreter
License: Artistic-1.0 OR GPL-2.0-or-later
@ -31,7 +31,6 @@ Source2: macros.perl
Source3: README.macros
Source4: baselibs.conf
Patch0: perl-5.28.0.dif
Patch2: perl-regexp-refoverflow.diff
Patch3: perl-nroff.diff
Patch4: perl-netcmdutf8.diff
Patch5: perl-HiRes.t-timeout.diff
@ -46,7 +45,6 @@ Patch12: perl-reproducible.patch
Patch13: perl_skip_flaky_tests_powerpc.patch
Patch14: posix-sigaction.patch
Patch15: perl-gdbm-test-no-mmap.diff
Patch16: perl-revert-caretx.diff
# PATCH-FIX-UPSTREAM unmerged
Patch17: perl-fix2020.patch
# PATCH-FIX-UPSTREAM unmerged https://www.nntp.perl.org/group/perl.perl5.porters/2018/12/msg253240.html
@ -67,54 +65,54 @@ Provides: perl-I18N-LangTags = 0.43
Obsoletes: perl-I18N-LangTags <= 0.43
Provides: perl-MIME-Base64 = 3.15
Obsoletes: perl-MIME-Base64 <= 3.15
Provides: perl-Storable = 3.08
Obsoletes: perl-Storable <= 3.08
Provides: perl-Test-Simple = 1.302133
Obsoletes: perl-Test-Simple <= 1.302133
Provides: perl-Storable = 3.15
Obsoletes: perl-Storable <= 3.15
Provides: perl-Test-Simple = 1.302162
Obsoletes: perl-Test-Simple <= 1.302162
Provides: perl-Text-Balanced = 2.03
Obsoletes: perl-Text-Balanced <= 2.03
Provides: perl-Time-HiRes = 1.9759
Obsoletes: perl-Time-HiRes <= 1.9759
Provides: perl-Time-HiRes = 1.9760
Obsoletes: perl-Time-HiRes <= 1.9760
Provides: perl-libnet = 3.11
Obsoletes: perl-libnet <= 3.11
Provides: perl-Compress-Raw-Zlib = 2.076
Obsoletes: perl-Compress-Raw-Zlib <= 2.076
Provides: perl-Compress-Zlib = 2.074
Obsoletes: perl-Compress-Zlib <= 2.074
Provides: perl-IO-Compress-Base = 2.074
Obsoletes: perl-IO-Compress-Base <= 2.074
Provides: perl-IO-Compress-Zlib = 2.074
Obsoletes: perl-IO-Compress-Zlib <= 2.074
Provides: perl-Compress-Raw-Zlib = 2.084
Obsoletes: perl-Compress-Raw-Zlib <= 2.084
Provides: perl-Compress-Zlib = 2.084
Obsoletes: perl-Compress-Zlib <= 2.084
Provides: perl-IO-Compress-Base = 2.084
Obsoletes: perl-IO-Compress-Base <= 2.084
Provides: perl-IO-Compress-Zlib = 2.084
Obsoletes: perl-IO-Compress-Zlib <= 2.084
Provides: perl-IO-Zlib = 1.10
Obsoletes: perl-IO-Zlib <= 1.10
Provides: perl-Archive-Tar = 2.30
Obsoletes: perl-Archive-Tar <= 2.30
Provides: perl-Archive-Tar = 2.32
Obsoletes: perl-Archive-Tar <= 2.32
Provides: perl-Locale-Maketext-Simple = 0.21
Obsoletes: perl-Locale-Maketext-Simple <= 0.21
Provides: perl-Pod-Escapes = 1.07
Obsoletes: perl-Pod-Escapes <= 1.07
Provides: perl-Pod-Simple = 3.35
Obsoletes: perl-Pod-Simple <= 3.35
Provides: perl-ExtUtils-ParseXS = 3.39
Obsoletes: perl-ExtUtils-ParseXS <= 3.39
Provides: perl-ExtUtils-ParseXS = 3.40
Obsoletes: perl-ExtUtils-ParseXS <= 3.40
Provides: perl-CPAN-Meta = 2.150010
Obsoletes: perl-CPAN-Meta <= 2.150010
Provides: perl-CPAN-Meta-YAML = 0.018
Obsoletes: perl-CPAN-Meta-YAML <= 0.018
Provides: perl-ExtUtils-CBuilder = 0.280230
Obsoletes: perl-ExtUtils-CBuilder <= 0.280230
Provides: perl-ExtUtils-CBuilder = 0.280231
Obsoletes: perl-ExtUtils-CBuilder <= 0.280231
Provides: perl-IO-Socket-IP = 0.39
Obsoletes: perl-IO-Socket-IP <= 0.39
Provides: perl-Parse-CPAN-Meta = 2.150010
Obsoletes: perl-Parse-CPAN-Meta <= 2.150010
Provides: perl-PathTools = 3.63
Obsoletes: perl-PathTools <= 3.63
Provides: perl-PathTools = 3.75
Obsoletes: perl-PathTools <= 3.75
Provides: perl-autodie = 2.29
Obsoletes: perl-autodie <= 2.29
Provides: perl-Test-Harness = 3.42
Obsoletes: perl-Test-Harness <= 3.42
Provides: perl-version = 0.9923
Obsoletes: perl-version <= 0.9923
Provides: perl-version = 0.9924
Obsoletes: perl-version <= 0.9924
%if "%{version}" != "%{pversion}"
Provides: perl = %{pversion}-%{release}
%endif
@ -169,7 +167,6 @@ Perl man pages and pod files.
%setup -q -n perl-%{pversion}
cp -p %{SOURCE3} .
%patch0
%patch2
%patch3
%patch4
%patch5
@ -184,9 +181,8 @@ cp -p %{SOURCE3} .
%patch12 -p1
%patch14 -p1
%patch15
%patch16
%patch17 -p1
%patch18 -p1
%patch17
%patch18
%build
%define _lto_cflags %{nil}