Hello community,
here is the log from the commit of package perl-Scalar-List-Utils for
openSUSE:Factory checked in at 2019-10-30 14:40:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Scalar-List-Utils (Old)
and /work/SRC/openSUSE:Factory/.perl-Scalar-List-Utils.new.2990 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Scalar-List-Utils"
Wed Oct 30 14:40:54 2019 rev:17 rq:743347 version:1.53
Changes:
--------
---
/work/SRC/openSUSE:Factory/perl-Scalar-List-Utils/perl-Scalar-List-Utils.changes
2019-08-24 18:39:45.169795720 +0200
+++
/work/SRC/openSUSE:Factory/.perl-Scalar-List-Utils.new.2990/perl-Scalar-List-Utils.changes
2019-10-30 14:40:55.893742735 +0100
@@ -1,0 +2,10 @@
+Fri Oct 25 09:48:59 UTC 2019 - <[email protected]>
+
+- updated to 1.53
+ see /usr/share/doc/packages/perl-Scalar-List-Utils/Changes
+
+ 1.53 -- 2019-10-24 10:41:12
+ [BUGFIXES]
+ * Handle Unicode package names in Scalar::Util::blessed (GH #81)
+
+-------------------------------------------------------------------
Old:
----
Scalar-List-Utils-1.52.tar.gz
New:
----
Scalar-List-Utils-1.53.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Scalar-List-Utils.spec ++++++
--- /var/tmp/diff_new_pack.yOGA4U/_old 2019-10-30 14:40:56.585743472 +0100
+++ /var/tmp/diff_new_pack.yOGA4U/_new 2019-10-30 14:40:56.597743484 +0100
@@ -17,7 +17,7 @@
Name: perl-Scalar-List-Utils
-Version: 1.52
+Version: 1.53
Release: 0
%define cpan_name Scalar-List-Utils
Summary: Common Scalar and List utility subroutines
@@ -36,7 +36,7 @@
%prep
%setup -q -n %{cpan_name}-%{version}
-find . -type f ! -name \*.pl -print0 | xargs -0 chmod 644
+find . -type f ! -path "*/t/*" ! -name "*.pl" ! -name "*.sh" -print0 | xargs
-0 chmod 644
%build
perl Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}"
++++++ Scalar-List-Utils-1.52.tar.gz -> Scalar-List-Utils-1.53.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Scalar-List-Utils-1.52/Changes
new/Scalar-List-Utils-1.53/Changes
--- old/Scalar-List-Utils-1.52/Changes 2019-08-17 20:08:46.000000000 +0200
+++ new/Scalar-List-Utils-1.53/Changes 2019-10-24 11:42:03.000000000 +0200
@@ -1,3 +1,7 @@
+1.53 -- 2019-10-24 10:41:12
+ [BUGFIXES]
+ * Handle Unicode package names in Scalar::Util::blessed (GH #81)
+
1.52 -- 2019-08-17 19:08:18
[BUGFIXES]
* Fix uniqnum() on large stringified integers on long- and
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Scalar-List-Utils-1.52/ListUtil.xs
new/Scalar-List-Utils-1.53/ListUtil.xs
--- old/Scalar-List-Utils-1.52/ListUtil.xs 2019-08-17 20:07:00.000000000
+0200
+++ new/Scalar-List-Utils-1.53/ListUtil.xs 2019-10-23 12:03:30.000000000
+0200
@@ -124,6 +124,38 @@
# define SvNV_nomg SvNV
#endif
+#if PERL_VERSION_GE(5,16,0)
+# define HAVE_UNICODE_PACKAGE_NAMES
+
+# ifndef sv_sethek
+# define sv_sethek(a, b) Perl_sv_sethek(aTHX_ a, b)
+# endif
+
+# ifndef sv_ref
+# define sv_ref(dst, sv, ob) my_sv_ref(aTHX_ dst, sv, ob)
+static SV *
+my_sv_ref(pTHX_ SV *dst, const SV *sv, int ob)
+{
+ /* cargoculted from perl 5.22's sv.c */
+ if(!dst)
+ dst = sv_newmortal();
+
+ if(ob && SvOBJECT(sv)) {
+ if(HvNAME_get(SvSTASH(sv)))
+ sv_sethek(dst, HvNAME_HEK(SvSTASH(sv)));
+ else
+ sv_setpvs(dst, "__ANON__");
+ }
+ else {
+ const char *reftype = sv_reftype(sv, 0);
+ sv_setpv(dst, reftype);
+ }
+
+ return dst;
+}
+# endif
+#endif /* HAVE_UNICODE_PACKAGE_NAMES */
+
enum slu_accum {
ACC_IV,
ACC_NV,
@@ -344,9 +376,9 @@
/* else fallthrough */
}
- /* fallthrough to NV now */
retnv = retiv;
accum = ACC_NV;
+ /* FALLTHROUGH */
case ACC_NV:
is_product ? (retnv *= slu_sv_value(sv))
: (retnv += slu_sv_value(sv));
@@ -1310,7 +1342,7 @@
ST(0) = boolSV((SvPOK(sv) || SvPOKp(sv)) && (SvNIOK(sv) || SvNIOKp(sv)));
XSRETURN(1);
-char *
+SV *
blessed(sv)
SV *sv
PROTOTYPE: $
@@ -1320,8 +1352,12 @@
if(!(SvROK(sv) && SvOBJECT(SvRV(sv))))
XSRETURN_UNDEF;
-
- RETVAL = (char*)sv_reftype(SvRV(sv),TRUE);
+#ifdef HAVE_UNICODE_PACKAGE_NAMES
+ RETVAL = newSVsv(sv_ref(NULL, SvRV(sv), TRUE));
+#else
+ RETVAL = newSV(0);
+ sv_setpv(RETVAL, sv_reftype(SvRV(sv), TRUE));
+#endif
}
OUTPUT:
RETVAL
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Scalar-List-Utils-1.52/META.json
new/Scalar-List-Utils-1.53/META.json
--- old/Scalar-List-Utils-1.52/META.json 2019-08-17 20:09:51.000000000
+0200
+++ new/Scalar-List-Utils-1.53/META.json 2019-10-24 11:42:20.000000000
+0200
@@ -49,6 +49,6 @@
"web" : "https://github.com/Scalar-List-Utils/Scalar-List-Utils"
}
},
- "version" : "1.52",
+ "version" : "1.53",
"x_serialization_backend" : "JSON::PP version 2.97001"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Scalar-List-Utils-1.52/META.yml
new/Scalar-List-Utils-1.53/META.yml
--- old/Scalar-List-Utils-1.52/META.yml 2019-08-17 20:09:51.000000000 +0200
+++ new/Scalar-List-Utils-1.53/META.yml 2019-10-24 11:42:20.000000000 +0200
@@ -23,5 +23,5 @@
resources:
bugtracker:
https://rt.cpan.org/Public/Dist/Display.html?Name=Scalar-List-Utils
repository: https://github.com/Scalar-List-Utils/Scalar-List-Utils.git
-version: '1.52'
+version: '1.53'
x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Scalar-List-Utils-1.52/lib/List/Util/XS.pm
new/Scalar-List-Utils-1.53/lib/List/Util/XS.pm
--- old/Scalar-List-Utils-1.52/lib/List/Util/XS.pm 2019-08-17
20:08:56.000000000 +0200
+++ new/Scalar-List-Utils-1.53/lib/List/Util/XS.pm 2019-10-24
11:42:03.000000000 +0200
@@ -3,7 +3,7 @@
use warnings;
use List::Util;
-our $VERSION = "1.52"; # FIXUP
+our $VERSION = "1.53"; # FIXUP
$VERSION =~ tr/_//d; # FIXUP
1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Scalar-List-Utils-1.52/lib/List/Util.pm
new/Scalar-List-Utils-1.53/lib/List/Util.pm
--- old/Scalar-List-Utils-1.52/lib/List/Util.pm 2019-08-17 20:08:56.000000000
+0200
+++ new/Scalar-List-Utils-1.53/lib/List/Util.pm 2019-10-24 11:42:03.000000000
+0200
@@ -15,7 +15,7 @@
all any first min max minstr maxstr none notall product reduce sum sum0
shuffle uniq uniqnum uniqstr
head tail pairs unpairs pairkeys pairvalues pairmap pairgrep pairfirst
);
-our $VERSION = "1.52";
+our $VERSION = "1.53";
our $XS_VERSION = $VERSION;
$VERSION =~ tr/_//d;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Scalar-List-Utils-1.52/lib/Scalar/Util.pm
new/Scalar-List-Utils-1.53/lib/Scalar/Util.pm
--- old/Scalar-List-Utils-1.52/lib/Scalar/Util.pm 2019-08-17
20:08:56.000000000 +0200
+++ new/Scalar-List-Utils-1.53/lib/Scalar/Util.pm 2019-10-24
11:42:03.000000000 +0200
@@ -17,7 +17,7 @@
dualvar isdual isvstring looks_like_number openhandle readonly set_prototype
tainted
);
-our $VERSION = "1.52";
+our $VERSION = "1.53";
$VERSION =~ tr/_//d;
require List::Util; # List::Util loads the XS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Scalar-List-Utils-1.52/lib/Sub/Util.pm
new/Scalar-List-Utils-1.53/lib/Sub/Util.pm
--- old/Scalar-List-Utils-1.52/lib/Sub/Util.pm 2019-08-17 20:08:56.000000000
+0200
+++ new/Scalar-List-Utils-1.53/lib/Sub/Util.pm 2019-10-24 11:42:03.000000000
+0200
@@ -15,7 +15,7 @@
subname set_subname
);
-our $VERSION = "1.52";
+our $VERSION = "1.53";
$VERSION =~ tr/_//d;
require List::Util; # as it has the XS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Scalar-List-Utils-1.52/t/blessed.t
new/Scalar-List-Utils-1.53/t/blessed.t
--- old/Scalar-List-Utils-1.52/t/blessed.t 2019-08-17 20:08:56.000000000
+0200
+++ new/Scalar-List-Utils-1.53/t/blessed.t 2019-10-23 12:05:19.000000000
+0200
@@ -3,7 +3,7 @@
use strict;
use warnings;
-use Test::More tests => 11;
+use Test::More tests => 12;
use Scalar::Util qw(blessed);
my $t;
@@ -46,3 +46,11 @@
::is( ::blessed($obj), __PACKAGE__, "blessed on broken isa() and can()" );
}
+SKIP: {
+ # Unicode package names only supported in perl 5.16 onwards
+ skip "Unicode package names are not supported", 1 if $] < 5.016;
+
+ my $utf8_pack= "X\x{100}";
+ my $obj= bless {}, $utf8_pack;
+ ::is( ::blessed($obj), $utf8_pack, "blessed preserves utf8ness for utf8
class names" );
+}