diff --git a/perl-5.22.0_wrong_rpm_provides.diff b/perl-5.22.0_wrong_rpm_provides.diff index 4817571..cabc27c 100644 --- a/perl-5.22.0_wrong_rpm_provides.diff +++ b/perl-5.22.0_wrong_rpm_provides.diff @@ -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); diff --git a/perl-5.28.1.tar.xz b/perl-5.28.1.tar.xz deleted file mode 100644 index 10e8b6c..0000000 --- a/perl-5.28.1.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fea7162d4cca940a387f0587b93f6737d884bf74d8a9d7cfd978bc12cd0b202d -size 12372080 diff --git a/perl-5.30.1.tar.xz b/perl-5.30.1.tar.xz new file mode 100644 index 0000000..fa93a44 --- /dev/null +++ b/perl-5.30.1.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7336cd3ed0535eb61b76a71350effcfa7c88b44faf37d64d70952ced5d38cd35 +size 12367844 diff --git a/perl-fix2020.patch b/perl-fix2020.patch index e11bdbd..984b117 100644 --- a/perl-fix2020.patch +++ b/perl-fix2020.patch @@ -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. diff --git a/perl-gdbm-test-no-mmap.diff b/perl-gdbm-test-no-mmap.diff index f05a9ac..caa10a2 100644 --- a/perl-gdbm-test-no-mmap.diff +++ b/perl-gdbm-test-no-mmap.diff @@ -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") diff --git a/perl-regexp-refoverflow.diff b/perl-regexp-refoverflow.diff deleted file mode 100644 index 29f727f..0000000 --- a/perl-regexp-refoverflow.diff +++ /dev/null @@ -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"); - } diff --git a/perl-reproducible2.patch b/perl-reproducible2.patch index d512b96..5c6bf7e 100644 --- a/perl-reproducible2.patch +++ b/perl-reproducible2.patch @@ -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)) { - diff --git a/perl-revert-caretx.diff b/perl-revert-caretx.diff deleted file mode 100644 index 1a3fdf1..0000000 --- a/perl-revert-caretx.diff +++ /dev/null @@ -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 diff --git a/perl.changes b/perl.changes index a9881bf..be22118 100644 --- a/perl.changes +++ b/perl.changes @@ -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 diff --git a/perl.spec b/perl.spec index 75e8a0d..ce47784 100644 --- a/perl.spec +++ b/perl.spec @@ -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}