Hello community, here is the log from the commit of package perl-Readonly for openSUSE:Factory checked in at 2016-03-16 10:24:47 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-Readonly (Old) and /work/SRC/openSUSE:Factory/.perl-Readonly.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Readonly" Changes: -------- --- /work/SRC/openSUSE:Factory/perl-Readonly/perl-Readonly.changes 2014-09-20 15:49:59.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.perl-Readonly.new/perl-Readonly.changes 2016-03-16 10:24:53.000000000 +0100 @@ -1,0 +2,12 @@ +Tue Mar 8 10:55:38 UTC 2016 - co...@suse.com + +- updated to 2.01 + see /usr/share/doc/packages/perl-Readonly/Changes + + 2.01 2016-02-24T16:01:12Z + - Disallow initialization of Readonly variables by assignment + allowed by Perl prototype changes in v5.16. Assignment initialization + of scalars sets scalar variables to undef and lists and hashes + initialized by assignment are not read only. + +------------------------------------------------------------------- Old: ---- Readonly-2.00.tar.gz New: ---- Readonly-2.01.tar.gz cpanspec.yml ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-Readonly.spec ++++++ --- /var/tmp/diff_new_pack.sz9MbX/_old 2016-03-16 10:24:54.000000000 +0100 +++ /var/tmp/diff_new_pack.sz9MbX/_new 2016-03-16 10:24:54.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package perl-Readonly # -# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,21 +17,20 @@ Name: perl-Readonly -Version: 2.00 +Version: 2.01 Release: 0 %define cpan_name Readonly Summary: Facility for creating read-only scalars, arrays, hashes License: Artistic-1.0 or GPL-1.0+ Group: Development/Libraries/Perl Url: http://search.cpan.org/dist/Readonly/ -Source: http://www.cpan.org/authors/id/S/SA/SANKO/%{cpan_name}-%{version}.tar.gz +Source0: http://www.cpan.org/authors/id/S/SA/SANKO/%{cpan_name}-%{version}.tar.gz +Source1: cpanspec.yml BuildArch: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: perl BuildRequires: perl-macros -BuildRequires: perl(CPAN::Meta) -BuildRequires: perl(CPAN::Meta::Prereqs) -BuildRequires: perl(Module::Build) >= 0.38 +BuildRequires: perl(Module::Build::Tiny) >= 0.035 %{perl_requires} %description @@ -41,18 +40,18 @@ %setup -q -n %{cpan_name}-%{version} %build -%{__perl} Build.PL installdirs=vendor -./Build build flags=%{?_smp_mflags} +%{__perl} Build.PL --installdirs=vendor +./Build build --flags=%{?_smp_mflags} %check ./Build test %install -./Build install destdir=%{buildroot} create_packlist=0 +./Build install --destdir=%{buildroot} --create_packlist=0 %perl_gen_filelist %files -f %{name}.files %defattr(-,root,root,755) -%doc Changes cpanfile LICENSE README.md +%doc Changes LICENSE README.md %changelog ++++++ Readonly-2.00.tar.gz -> Readonly-2.01.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Readonly-2.00/Build.PL new/Readonly-2.01/Build.PL --- old/Readonly-2.00/Build.PL 2014-06-30 13:15:39.000000000 +0200 +++ new/Readonly-2.01/Build.PL 2016-02-24 17:01:31.000000000 +0100 @@ -4,69 +4,9 @@ # ========================================================================= use 5.008_001; - use strict; -use warnings; -use utf8; - -use Module::Build; -use File::Basename; -use File::Spec; -use CPAN::Meta; -use CPAN::Meta::Prereqs; - -my %args = ( - license => 'perl', - dynamic_config => 0, - - configure_requires => { - 'Module::Build' => 0.38, - }, - - name => 'Readonly', - module_name => 'Readonly', - allow_pureperl => 0, - - script_files => [glob('script/*'), glob('bin/*')], - c_source => [qw()], - PL_files => {}, - - test_files => ((-d '.git' || $ENV{RELEASE_TESTING}) && -d 'xt') ? 't/ xt/' : 't/', - recursive_test_files => 1, - -); -if (-d 'share') { - $args{share_dir} = 'share'; -} +use Module::Build::Tiny 0.035; -my $builder = Module::Build->subclass( - class => 'MyBuilder', - code => q{ - sub ACTION_distmeta { - die "Do not run distmeta. Install Minilla and `minil install` instead.\n"; - } - sub ACTION_installdeps { - die "Do not run installdeps. Run `cpanm --installdeps .` instead.\n"; - } - } -)->new(%args); -$builder->create_build_script(); +Build_PL(); -my $mbmeta = CPAN::Meta->load_file('MYMETA.json'); -my $meta = CPAN::Meta->load_file('META.json'); -my $prereqs_hash = CPAN::Meta::Prereqs->new( - $meta->prereqs -)->with_merged_prereqs( - CPAN::Meta::Prereqs->new($mbmeta->prereqs) -)->as_string_hash; -my $mymeta = CPAN::Meta->new( - { - %{$meta->as_struct}, - prereqs => $prereqs_hash - } -); -print "Merging cpanfile prereqs to MYMETA.yml\n"; -$mymeta->save('MYMETA.yml', { version => 1.4 }); -print "Merging cpanfile prereqs to MYMETA.json\n"; -$mymeta->save('MYMETA.json', { version => 2 }); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Readonly-2.00/Changes new/Readonly-2.01/Changes --- old/Readonly-2.00/Changes 2014-06-30 13:15:39.000000000 +0200 +++ new/Readonly-2.01/Changes 2016-02-24 17:01:31.000000000 +0100 @@ -1,5 +1,11 @@ Revision history for Perl extension Readonly. +2.01 2016-02-24T16:01:12Z + - Disallow initialization of Readonly variables by assignment + allowed by Perl prototype changes in v5.16. Assignment initialization + of scalars sets scalar variables to undef and lists and hashes + initialized by assignment are not read only. + 2.00 2014-06-30T11:15:05Z - Deprecation of Readonly::XS as a requirement for fast, readonly scalars is complete. Report any lingering issues on the tracker diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Readonly-2.00/MANIFEST new/Readonly-2.01/MANIFEST --- old/Readonly-2.00/MANIFEST 2014-06-30 13:15:39.000000000 +0200 +++ new/Readonly-2.01/MANIFEST 2016-02-24 17:01:31.000000000 +0100 @@ -4,6 +4,7 @@ cpanfile eg/benchmark.pl lib/Readonly.pm +t/bugs/001_assign.t t/bugs/007_implicit_undef.t t/general/array.t t/general/deepa.t @@ -16,7 +17,7 @@ t/general/reassign.t t/general/scalar.t t/general/tie.t -Build.PL META.json META.yml -MANIFEST \ No newline at end of file +MANIFEST +Build.PL \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Readonly-2.00/META.json new/Readonly-2.01/META.json --- old/Readonly-2.00/META.json 2014-06-30 13:15:39.000000000 +0200 +++ new/Readonly-2.01/META.json 2016-02-24 17:01:31.000000000 +0100 @@ -4,7 +4,7 @@ "Sanko Robinson <sa...@cpan.org> - http://sankorobinson.com/" ], "dynamic_config" : 0, - "generated_by" : "Minilla/v1.1.0", + "generated_by" : "Minilla/v3.0.1", "license" : [ "perl_5" ], @@ -28,9 +28,7 @@ "prereqs" : { "configure" : { "requires" : { - "CPAN::Meta" : "0", - "CPAN::Meta::Prereqs" : "0", - "Module::Build" : "0.38" + "Module::Build::Tiny" : "0.035" } }, "develop" : { @@ -59,7 +57,7 @@ "provides" : { "Readonly" : { "file" : "lib/Readonly.pm", - "version" : "2.00" + "version" : "2.01" }, "Readonly::Array" : { "file" : "lib/Readonly.pm" @@ -82,8 +80,11 @@ "web" : "https://github.com/sanko/readonly" } }, - "version" : "2.00", + "version" : "2.01", "x_contributors" : [ - "David Steinbrunner <dsteinbrun...@pobox.com>" - ] + "David Steinbrunner <dsteinbrun...@pobox.com>", + "Peter Valdemar Mørch <p...@capmon.dk>", + "Ronald Schmidt <ronal...@software-path.com>" + ], + "x_serialization_backend" : "JSON::PP version 2.27300" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Readonly-2.00/META.yml new/Readonly-2.01/META.yml --- old/Readonly-2.00/META.yml 2014-06-30 13:15:39.000000000 +0200 +++ new/Readonly-2.01/META.yml 2016-02-24 17:01:31.000000000 +0100 @@ -5,11 +5,9 @@ build_requires: Test::More: '0' configure_requires: - CPAN::Meta: '0' - CPAN::Meta::Prereqs: '0' - Module::Build: '0.38' + Module::Build::Tiny: '0.035' dynamic_config: 0 -generated_by: 'Minilla/v1.1.0, CPAN::Meta::Converter version 2.141170' +generated_by: 'Minilla/v3.0.1, CPAN::Meta::Converter version 2.150005' license: perl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html @@ -28,7 +26,7 @@ provides: Readonly: file: lib/Readonly.pm - version: '2.00' + version: '2.01' Readonly::Array: file: lib/Readonly.pm Readonly::Hash: @@ -43,6 +41,9 @@ bugtracker: https://github.com/sanko/readonly/issues homepage: https://github.com/sanko/readonly repository: git://github.com/sanko/readonly.git -version: '2.00' +version: '2.01' x_contributors: - 'David Steinbrunner <dsteinbrun...@pobox.com>' + - 'Peter Valdemar Mørch <p...@capmon.dk>' + - 'Ronald Schmidt <ronal...@software-path.com>' +x_serialization_backend: 'CPAN::Meta::YAML version 0.016' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Readonly-2.00/README.md new/Readonly-2.01/README.md --- old/Readonly-2.00/README.md 2014-06-30 13:15:39.000000000 +0200 +++ new/Readonly-2.01/README.md 2016-02-24 17:01:31.000000000 +0100 @@ -385,7 +385,7 @@ # Author -Sanko Robinson <sa...@cpan.org> - http://sankorobinson.com/ +Sanko Robinson <sa...@cpan.org> - http://sankorobinson.com/ CPAN ID: SANKO @@ -393,7 +393,7 @@ # License and Legal -Copyright (C) 2013, 2014 by Sanko Robinson <sa...@cpan.org> +Copyright (C) 2013, 2014 by Sanko Robinson <sa...@cpan.org> Copyright (c) 2001-2004 by Eric J. Roode. All Rights Reserved. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Readonly-2.00/lib/Readonly.pm new/Readonly-2.01/lib/Readonly.pm --- old/Readonly-2.00/lib/Readonly.pm 2014-06-30 13:15:39.000000000 +0200 +++ new/Readonly-2.01/lib/Readonly.pm 2016-02-24 17:01:31.000000000 +0100 @@ -5,7 +5,7 @@ #use warnings; #no warnings 'uninitialized'; package Readonly; -our $VERSION = '2.00'; +our $VERSION = '2.01'; $VERSION = eval $VERSION; # Autocroak (Thanks, MJD) @@ -299,6 +299,11 @@ croak "$REASSIGN $badtype" if $badtype; croak "Readonly scalar must have only one value" if @_ > 2; + # Because of problems with handling \$ prototypes declarations like + # Readonly my @a = ... and Readonly my %h = ... are also caught here + croak 'Invalid initialization by assignment' + if @_ == 1 && defined ${$_[0]}; + my $tieobj = eval {tie ${$_[0]}, 'Readonly::Scalar', $_[1]}; # Tie may have failed because user tried to tie a constant, or we screwed up somehow. if ($@) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Readonly-2.00/t/bugs/001_assign.t new/Readonly-2.01/t/bugs/001_assign.t --- old/Readonly-2.00/t/bugs/001_assign.t 1970-01-01 01:00:00.000000000 +0100 +++ new/Readonly-2.01/t/bugs/001_assign.t 2016-02-24 17:01:31.000000000 +0100 @@ -0,0 +1,45 @@ +#!perl -I../../lib +# Verify the Readonly function rejects initialization by assignment +use strict; +use Test::More tests => 9; + +use constant ASSIGNMENT_ERR => qr/ + \QInvalid initialization by assignment\E | # Readonly assignment patch + \QType of arg 1 to Readonly::Readonly must be one of\E # pre v5.16 +/x; + +# Find the module (1 test) +BEGIN { use_ok('Readonly'); } + +SKIP: +{ + skip 'Readonly $@% syntax is for perl 5.8 or later', 8 unless $] >= 5.008; + +eval 'Readonly my $simple = 2;'; +like $@ => ASSIGNMENT_ERR, 'Reject scalar initialization by assignment'; + +eval 'Readonly my @a = (3, 5);'; +like $@ => ASSIGNMENT_ERR, + 'Reject array initialization by assignment'; + +eval 'Readonly my %h = (key => 42);'; +like $@ => ASSIGNMENT_ERR, + 'Reject hash initialization by assignment'; + +eval 'Readonly my %h = {key => 42};'; +like $@ => ASSIGNMENT_ERR, + 'Reject hash initialization by assignment to hash ref'; + +eval 'Readonly my @a;'; +is $@ => '', 'Readonly empty array OK'; +eval 'Readonly my @a; $a[0] = 2;'; +like $@ => qr/Modification of a read-only/, + 'Readonly empty array is read only'; + +eval 'Readonly my %h;'; +is $@ => '', 'Readonly empty hash OK'; +eval 'Readonly my %h; $h{key} = "v";'; +like $@ => qr/Modification of a read-only/, + 'Readonly empty hash is read only'; + +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Readonly-2.00/t/bugs/007_implicit_undef.t new/Readonly-2.01/t/bugs/007_implicit_undef.t --- old/Readonly-2.00/t/bugs/007_implicit_undef.t 2014-06-30 13:15:39.000000000 +0200 +++ new/Readonly-2.01/t/bugs/007_implicit_undef.t 2016-02-24 17:01:31.000000000 +0100 @@ -11,8 +11,12 @@ # Find the module (1 test) BEGIN { use_ok('Readonly'); } +SKIP: +{ + skip 'Readonly $@% syntax is for perl 5.8 or later', 1 unless $] >= 5.008; eval 'Readonly my $simple;'; is $@ => '', 'Simple API allows for implicit undef values'; +} eval q'Readonly::Scalar my $scalar;'; like $@ => qr[Not enough arguments for Readonly::Scalar], 'Readonly::Scalar does not allow implicit undef values'; ++++++ cpanspec.yml ++++++ --- #description_paragraphs: 3 #description: |- # override description from CPAN #summary: override summary from CPAN #no_testing: broken upstream #sources: # - source1 # - source2 #patches: # foo.patch: -p1 # bar.patch: #preamble: |- # BuildRequires: gcc-c++ #post_prep: |- # hunspell=`pkg-config --libs hunspell | sed -e 's,-l,,; s, *,,g'` # sed -i -e "s,hunspell-X,$hunspell," t/00-prereq.t Makefile.PL #post_build: |- # rm unused.files #post_install: |- # sed on %{name}.files #license: SUSE-NonFree #skip_noarch: 1 #custom_build: |- #./Build build flags=%{?_smp_mflags} --myflag #custom_test: |- #startserver && make test #ignore_requires: Bizarre::Module