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 &lt;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 &lt;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

Reply via email to