Hello community, here is the log from the commit of package perl-Class-C3 for openSUSE:Factory checked in at 2017-05-03 15:57:37 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-Class-C3 (Old) and /work/SRC/openSUSE:Factory/.perl-Class-C3.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Class-C3" Wed May 3 15:57:37 2017 rev:21 rq:492413 version:0.33 Changes: -------- --- /work/SRC/openSUSE:Factory/perl-Class-C3/perl-Class-C3.changes 2016-10-18 10:38:56.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.perl-Class-C3.new/perl-Class-C3.changes 2017-05-03 15:57:39.820214861 +0200 @@ -1,0 +2,12 @@ +Tue Apr 25 05:14:35 UTC 2017 - [email protected] + +- updated to 0.33 + see /usr/share/doc/packages/perl-Class-C3/Changes + + 0.33 - 2017-04-23 + - update bundled ExtUtils::HasCompiler to 0.017 + - moved repository to Moose GitHub org + - avoid using base.pm in tests (RT#120530) + - minor pod and test cleanups + +------------------------------------------------------------------- Old: ---- Class-C3-0.32.tar.gz New: ---- Class-C3-0.33.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-Class-C3.spec ++++++ --- /var/tmp/diff_new_pack.UmP2U0/_old 2017-05-03 15:57:40.612103067 +0200 +++ /var/tmp/diff_new_pack.UmP2U0/_new 2017-05-03 15:57:40.616102503 +0200 @@ -1,7 +1,7 @@ # # spec file for package perl-Class-C3 # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2017 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,14 +17,14 @@ Name: perl-Class-C3 -Version: 0.32 +Version: 0.33 Release: 0 %define cpan_name Class-C3 Summary: Pragma to Use the C3 Method Resolution Order Algorithm License: Artistic-1.0 or GPL-1.0+ Group: Development/Libraries/Perl Url: http://search.cpan.org/dist/Class-C3/ -Source0: http://www.cpan.org/authors/id/H/HA/HAARG/%{cpan_name}-%{version}.tar.gz +Source0: https://cpan.metacpan.org/authors/id/H/HA/HAARG/%{cpan_name}-%{version}.tar.gz Source1: cpanspec.yml BuildArch: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build ++++++ Class-C3-0.32.tar.gz -> Class-C3-0.33.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/Changes new/Class-C3-0.33/Changes --- old/Class-C3-0.32/Changes 2016-09-15 06:55:48.000000000 +0200 +++ new/Class-C3-0.33/Changes 2017-04-23 23:58:48.000000000 +0200 @@ -1,5 +1,11 @@ Revision history for Perl extension Class::C3. +0.33 - 2017-04-23 + - update bundled ExtUtils::HasCompiler to 0.017 + - moved repository to Moose GitHub org + - avoid using base.pm in tests (RT#120530) + - minor pod and test cleanups + 0.32 - 2016-09-15 - update bundled ExtUtils::HasCompiler to 0.016 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/META.json new/Class-C3-0.33/META.json --- old/Class-C3-0.32/META.json 2016-09-15 06:56:12.000000000 +0200 +++ new/Class-C3-0.33/META.json 2017-04-23 23:59:18.000000000 +0200 @@ -4,7 +4,7 @@ "Stevan Little, <[email protected]>" ], "dynamic_config" : 1, - "generated_by" : "ExtUtils::MakeMaker version 7.1001, CPAN::Meta::Converter version 2.150005", + "generated_by" : "ExtUtils::MakeMaker version 7.24, CPAN::Meta::Converter version 2.150005", "license" : [ "perl_5" ], @@ -61,10 +61,10 @@ ], "repository" : { "type" : "git", - "url" : "git://git.shadowcat.co.uk/gitmo/Class-C3.git", - "web" : "http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo/Class-C3.git" + "url" : "https://github.com/moose/Class-C3.git", + "web" : "https://github.com/moose/Class-C3" } }, - "version" : "0.32", + "version" : "0.33", "x_serialization_backend" : "JSON::PP version 2.27300" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/META.yml new/Class-C3-0.33/META.yml --- old/Class-C3-0.32/META.yml 2016-09-15 06:56:12.000000000 +0200 +++ new/Class-C3-0.33/META.yml 2017-04-23 23:59:18.000000000 +0200 @@ -7,7 +7,7 @@ configure_requires: ExtUtils::MakeMaker: '0' dynamic_config: 1 -generated_by: 'ExtUtils::MakeMaker version 7.1001, CPAN::Meta::Converter version 2.150005' +generated_by: 'ExtUtils::MakeMaker version 7.24, CPAN::Meta::Converter version 2.150005' license: perl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html @@ -27,6 +27,6 @@ bugtracker: https://rt.cpan.org/Public/Dist/Display.html?Name=Class-C3 homepage: https://metacpan.org/release/Class-C3 license: http://dev.perl.org/licenses/ - repository: git://git.shadowcat.co.uk/gitmo/Class-C3.git -version: '0.32' + repository: https://github.com/moose/Class-C3.git +version: '0.33' x_serialization_backend: 'CPAN::Meta::YAML version 0.018' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/Makefile.PL new/Class-C3-0.33/Makefile.PL --- old/Class-C3-0.32/Makefile.PL 2016-04-19 14:43:22.000000000 +0200 +++ new/Class-C3-0.33/Makefile.PL 2017-04-14 00:24:38.000000000 +0200 @@ -34,8 +34,8 @@ }, resources => { repository => { - url => 'git://git.shadowcat.co.uk/gitmo/Class-C3.git', - web => 'http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo/Class-C3.git', + url => 'https://github.com/moose/Class-C3.git', + web => 'https://github.com/moose/Class-C3', type => 'git', }, bugtracker => { @@ -67,7 +67,7 @@ ## BOILERPLATE ############################################################### require ExtUtils::MakeMaker; -(do 'maint/Makefile.PL.include' or die $@) unless -f 'META.yml'; +(do './maint/Makefile.PL.include' or die $@) unless -f 'META.yml'; # have to do this since old EUMM dev releases miss the eval $VERSION line my $eumm_version = eval $ExtUtils::MakeMaker::VERSION; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/README new/Class-C3-0.33/README --- old/Class-C3-0.32/README 2016-09-15 06:56:12.000000000 +0200 +++ new/Class-C3-0.33/README 2017-04-23 23:59:18.000000000 +0200 @@ -168,23 +168,23 @@ # \ / # <D> - package A; - use c3; - sub foo { 'A::foo' } + package ClassA; + use Class::C3; + sub foo { 'ClassA::foo' } - package B; - use base 'A'; - use c3; - sub foo { 'B::foo => ' . (shift)->next::method() } + package ClassB; + use base 'ClassA'; + use Class::C3; + sub foo { 'ClassB::foo => ' . (shift)->next::method() } - package C; - use base 'A'; - use c3; - sub foo { 'C::foo => ' . (shift)->next::method() } + package ClassC; + use base 'ClassA'; + use Class::C3; + sub foo { 'ClassC::foo => ' . (shift)->next::method() } - package D; - use base ('B', 'C'); - use c3; + package ClassD; + use base ('ClassB', 'ClassC'); + use Class::C3; sub foo { 'D::foo => ' . (shift)->next::method() } print D->foo; # prints out "D::foo => B::foo => C::foo => A::foo" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/inc/ExtUtils/HasCompiler.pm new/Class-C3-0.33/inc/ExtUtils/HasCompiler.pm --- old/Class-C3-0.32/inc/ExtUtils/HasCompiler.pm 2016-09-15 06:50:50.000000000 +0200 +++ new/Class-C3-0.33/inc/ExtUtils/HasCompiler.pm 2017-04-23 22:27:36.000000000 +0200 @@ -1,5 +1,5 @@ package ExtUtils::HasCompiler; -$ExtUtils::HasCompiler::VERSION = '0.016'; +$ExtUtils::HasCompiler::VERSION = '0.017'; use strict; use warnings; @@ -124,7 +124,7 @@ push @extra, qq{"-L$incdir"}, '-lperl', $perllibs; } push @commands, qq{$cc $ccflags $optimize "-I$incdir" $cccdlflags -c $source_name -o $object_file}; - push @commands, qq{$ld $optimize $object_file -o $loadable_object $lddlflags @extra}; + push @commands, qq{$ld $object_file -o $loadable_object $lddlflags @extra}; } for my $command (@commands) { @@ -173,7 +173,7 @@ =head1 VERSION -version 0.016 +version 0.017 =head1 DESCRIPTION diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/lib/Class/C3/next.pm new/Class-C3-0.33/lib/Class/C3/next.pm --- old/Class-C3-0.32/lib/Class/C3/next.pm 2016-09-15 06:55:30.000000000 +0200 +++ new/Class-C3-0.33/lib/Class/C3/next.pm 2017-04-23 23:58:08.000000000 +0200 @@ -7,7 +7,7 @@ use Scalar::Util 'blessed'; -our $VERSION = '0.32'; +our $VERSION = '0.33'; our %METHOD_CACHE; @@ -66,7 +66,7 @@ use warnings; no warnings 'redefine'; # for 00load.t w/ core support -our $VERSION = '0.32'; +our $VERSION = '0.33'; sub method { (next::method($_[0]) || return)->(@_) } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/lib/Class/C3.pm new/Class-C3-0.33/lib/Class/C3.pm --- old/Class-C3-0.32/lib/Class/C3.pm 2016-09-15 06:55:30.000000000 +0200 +++ new/Class-C3-0.33/lib/Class/C3.pm 2017-04-23 23:58:08.000000000 +0200 @@ -1,10 +1,9 @@ - package Class::C3; use strict; use warnings; -our $VERSION = '0.32'; +our $VERSION = '0.33'; our $C3_IN_CORE; our $C3_XS; @@ -403,23 +402,23 @@ # \ / # <D> - package A; - use c3; - sub foo { 'A::foo' } + package ClassA; + use Class::C3; + sub foo { 'ClassA::foo' } - package B; - use base 'A'; - use c3; - sub foo { 'B::foo => ' . (shift)->next::method() } + package ClassB; + use base 'ClassA'; + use Class::C3; + sub foo { 'ClassB::foo => ' . (shift)->next::method() } - package C; - use base 'A'; - use c3; - sub foo { 'C::foo => ' . (shift)->next::method() } + package ClassC; + use base 'ClassA'; + use Class::C3; + sub foo { 'ClassC::foo => ' . (shift)->next::method() } - package D; - use base ('B', 'C'); - use c3; + package ClassD; + use base ('ClassB', 'ClassC'); + use Class::C3; sub foo { 'D::foo => ' . (shift)->next::method() } print D->foo; # prints out "D::foo => B::foo => C::foo => A::foo" @@ -576,9 +575,9 @@ =head1 AUTHOR -Stevan Little, E<lt>[email protected]<gt> +Stevan Little, <[email protected]> -Brandon L. Black, E<lt>[email protected]<gt> +Brandon L. Black, <[email protected]> =head1 COPYRIGHT AND LICENSE diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/01_MRO.t new/Class-C3-0.33/t/01_MRO.t --- old/Class-C3-0.32/t/01_MRO.t 2014-01-17 03:28:22.000000000 +0100 +++ new/Class-C3-0.33/t/01_MRO.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; @@ -19,25 +17,25 @@ { package Diamond_A; - use Class::C3; + use Class::C3; sub hello { 'Diamond_A::hello' } } { package Diamond_B; - use base 'Diamond_A'; - use Class::C3; + BEGIN { our @ISA = ('Diamond_A'); } + use Class::C3; } { package Diamond_C; - use Class::C3; - use base 'Diamond_A'; - + use Class::C3; + BEGIN { our @ISA = ('Diamond_A'); } + sub hello { 'Diamond_C::hello' } } { package Diamond_D; - use base ('Diamond_B', 'Diamond_C'); - use Class::C3; + BEGIN { our @ISA = ('Diamond_B', 'Diamond_C'); } + use Class::C3; } Class::C3::initialize(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/02_MRO.t new/Class-C3-0.33/t/02_MRO.t --- old/Class-C3-0.32/t/02_MRO.t 2014-01-17 03:28:16.000000000 +0100 +++ new/Class-C3-0.33/t/02_MRO.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; @@ -45,38 +43,38 @@ { package Test::O; - use Class::C3; - - package Test::F; - use Class::C3; - use base 'Test::O'; - + use Class::C3; + + package Test::F; + use Class::C3; + BEGIN { our @ISA = ('Test::O'); } + package Test::E; - use base 'Test::O'; - use Class::C3; - + BEGIN { our @ISA = ('Test::O'); } + use Class::C3; + sub C_or_E { 'Test::E' } package Test::D; - use Class::C3; - use base 'Test::O'; - - sub C_or_D { 'Test::D' } - + use Class::C3; + BEGIN { our @ISA = ('Test::O'); } + + sub C_or_D { 'Test::D' } + package Test::C; - use base ('Test::D', 'Test::F'); - use Class::C3; - + BEGIN { our @ISA = ('Test::D', 'Test::F'); } + use Class::C3; + sub C_or_D { 'Test::C' } - sub C_or_E { 'Test::C' } - - package Test::B; - use Class::C3; - use base ('Test::D', 'Test::E'); - - package Test::A; - use base ('Test::B', 'Test::C'); - use Class::C3; + sub C_or_E { 'Test::C' } + + package Test::B; + use Class::C3; + BEGIN { our @ISA = ('Test::D', 'Test::E'); } + + package Test::A; + BEGIN { our @ISA = ('Test::B', 'Test::C'); } + use Class::C3; } Class::C3::initialize(); @@ -89,28 +87,28 @@ is_deeply( [ Class::C3::calculateMRO('Test::E') ], [ qw(Test::E Test::O) ], - '... got the right MRO for Test::E'); + '... got the right MRO for Test::E'); is_deeply( [ Class::C3::calculateMRO('Test::D') ], [ qw(Test::D Test::O) ], - '... got the right MRO for Test::D'); + '... got the right MRO for Test::D'); is_deeply( [ Class::C3::calculateMRO('Test::C') ], [ qw(Test::C Test::D Test::F Test::O) ], - '... got the right MRO for Test::C'); + '... got the right MRO for Test::C'); is_deeply( [ Class::C3::calculateMRO('Test::B') ], [ qw(Test::B Test::D Test::E Test::O) ], - '... got the right MRO for Test::B'); + '... got the right MRO for Test::B'); is_deeply( [ Class::C3::calculateMRO('Test::A') ], [ qw(Test::A Test::B Test::C Test::D Test::E Test::F Test::O) ], - '... got the right MRO for Test::A'); - + '... got the right MRO for Test::A'); + is(Test::A->C_or_D, 'Test::C', '... got the expected method output'); is(Test::A->can('C_or_D')->(), 'Test::C', '... can got the expected method output'); @@ -126,4 +124,4 @@ is(Test::A->C_or_E, 'Test::E', '... old method resolution has been restored'); is(Test::A->can('C_or_E')->(), 'Test::E', '... old can(method) resolution has been restored'); - + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/03_MRO.t new/Class-C3-0.33/t/03_MRO.t --- old/Class-C3-0.32/t/03_MRO.t 2014-01-17 03:28:12.000000000 +0100 +++ new/Class-C3-0.33/t/03_MRO.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; @@ -51,39 +49,39 @@ { package Test::O; use Class::C3; - + sub O_or_D { 'Test::O' } - sub O_or_F { 'Test::O' } - + sub O_or_F { 'Test::O' } + package Test::F; - use base 'Test::O'; + BEGIN { our @ISA = ('Test::O'); } use Class::C3; - - sub O_or_F { 'Test::F' } - + + sub O_or_F { 'Test::F' } + package Test::E; - use base 'Test::O'; + BEGIN { our @ISA = ('Test::O'); } use Class::C3; - + package Test::D; - use base 'Test::O'; + BEGIN { our @ISA = ('Test::O'); } use Class::C3; - + sub O_or_D { 'Test::D' } sub C_or_D { 'Test::D' } - + package Test::C; - use base ('Test::D', 'Test::F'); - use Class::C3; + BEGIN { our @ISA = ('Test::D', 'Test::F'); } + use Class::C3; sub C_or_D { 'Test::C' } - + package Test::B; - use base ('Test::E', 'Test::D'); + BEGIN { our @ISA = ('Test::E', 'Test::D'); } use Class::C3; - + package Test::A; - use base ('Test::B', 'Test::C'); + BEGIN { our @ISA = ('Test::B', 'Test::C'); } use Class::C3; } @@ -92,19 +90,19 @@ is_deeply( [ Class::C3::calculateMRO('Test::A') ], [ qw(Test::A Test::B Test::E Test::C Test::D Test::F Test::O) ], - '... got the right MRO for Test::A'); - -is(Test::A->O_or_D, 'Test::D', '... got the right method dispatch'); -is(Test::A->O_or_F, 'Test::F', '... got the right method dispatch'); + '... got the right MRO for Test::A'); + +is(Test::A->O_or_D, 'Test::D', '... got the right method dispatch'); +is(Test::A->O_or_F, 'Test::F', '... got the right method dispatch'); -# NOTE: +# NOTE: # this test is particularly interesting because the p5 dispatch # would actually call Test::D before Test::C and Test::D is a -# subclass of Test::C -is(Test::A->C_or_D, 'Test::C', '... got the right method dispatch'); +# subclass of Test::C +is(Test::A->C_or_D, 'Test::C', '... got the right method dispatch'); Class::C3::uninitialize(); -is(Test::A->O_or_D, 'Test::O', '... old dispatch order is restored'); -is(Test::A->O_or_F, 'Test::O', '... old dispatch order is restored'); -is(Test::A->C_or_D, 'Test::D', '... old dispatch order is restored'); +is(Test::A->O_or_D, 'Test::O', '... old dispatch order is restored'); +is(Test::A->O_or_F, 'Test::O', '... old dispatch order is restored'); +is(Test::A->C_or_D, 'Test::D', '... old dispatch order is restored'); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/04_MRO.t new/Class-C3-0.33/t/04_MRO.t --- old/Class-C3-0.32/t/04_MRO.t 2014-01-17 03:23:22.000000000 +0100 +++ new/Class-C3-0.33/t/04_MRO.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; @@ -12,7 +10,7 @@ Object ^ | - LifeForm + LifeForm ^ ^ / \ Sentient BiPedal @@ -32,32 +30,32 @@ =cut { - package Object; + package Object; use Class::C3; - + package LifeForm; use Class::C3; - use base 'Object'; - + BEGIN { our @ISA = ('Object'); } + package Sentient; use Class::C3; - use base 'LifeForm'; - + BEGIN { our @ISA = ('LifeForm'); } + package BiPedal; - use Class::C3; - use base 'LifeForm'; - + use Class::C3; + BEGIN { our @ISA = ('LifeForm'); } + package Intelligent; - use Class::C3; - use base 'Sentient'; - + use Class::C3; + BEGIN { our @ISA = ('Sentient'); } + package Humanoid; - use Class::C3; - use base 'BiPedal'; - + use Class::C3; + BEGIN { our @ISA = ('BiPedal'); } + package Vulcan; - use Class::C3; - use base ('Intelligent', 'Humanoid'); + use Class::C3; + BEGIN { our @ISA = ('Intelligent', 'Humanoid'); } } Class::C3::initialize(); @@ -65,4 +63,4 @@ is_deeply( [ Class::C3::calculateMRO('Vulcan') ], [ qw(Vulcan Intelligent Sentient Humanoid BiPedal LifeForm Object) ], - '... got the right MRO for the Vulcan Dylan Example'); + '... got the right MRO for the Vulcan Dylan Example'); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/05_MRO.t new/Class-C3-0.33/t/05_MRO.t --- old/Class-C3-0.32/t/05_MRO.t 2016-04-19 13:42:53.000000000 +0200 +++ new/Class-C3-0.33/t/05_MRO.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/06_MRO.t new/Class-C3-0.33/t/06_MRO.t --- old/Class-C3-0.32/t/06_MRO.t 2014-01-17 03:28:41.000000000 +0100 +++ new/Class-C3-0.33/t/06_MRO.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; @@ -7,8 +5,8 @@ =pod -This tests a strange bug found by Matt S. Trout -while building DBIx::Class. Thanks Matt!!!! +This tests a strange bug found by Matt S. Trout +while building DBIx::Class. Thanks Matt!!!! <A> / \ @@ -20,29 +18,29 @@ { package Diamond_A; - use Class::C3; + use Class::C3; sub foo { 'Diamond_A::foo' } } { package Diamond_B; - use base 'Diamond_A'; - use Class::C3; + BEGIN { our @ISA = ('Diamond_A'); } + use Class::C3; sub foo { 'Diamond_B::foo => ' . (shift)->next::method } } { package Diamond_C; - use Class::C3; - use base 'Diamond_A'; + use Class::C3; + BEGIN { our @ISA = ('Diamond_A'); } } { package Diamond_D; - use base ('Diamond_C', 'Diamond_B'); - use Class::C3; - - sub foo { 'Diamond_D::foo => ' . (shift)->next::method } + BEGIN { our @ISA = ('Diamond_C', 'Diamond_B'); } + use Class::C3; + + sub foo { 'Diamond_D::foo => ' . (shift)->next::method } } Class::C3::initialize(); @@ -52,6 +50,6 @@ [ qw(Diamond_D Diamond_C Diamond_B Diamond_A) ], '... got the right MRO for Diamond_D'); -is(Diamond_D->foo, - 'Diamond_D::foo => Diamond_B::foo => Diamond_A::foo', +is(Diamond_D->foo, + 'Diamond_D::foo => Diamond_B::foo => Diamond_A::foo', '... got the right next::method dispatch path'); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/10_Inconsistent_hierarchy.t new/Class-C3-0.33/t/10_Inconsistent_hierarchy.t --- old/Class-C3-0.32/t/10_Inconsistent_hierarchy.t 2014-01-17 03:28:52.000000000 +0100 +++ new/Class-C3-0.33/t/10_Inconsistent_hierarchy.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; @@ -22,25 +20,25 @@ =cut -eval q{ +eval q{ { package X; use Class::C3; package Y; - use Class::C3; + use Class::C3; package XY; use Class::C3; - use base ('X', 'Y'); + BEGIN { our @ISA = ('X', 'Y'); } package YX; use Class::C3; - use base ('Y', 'X'); + BEGIN { our @ISA = ('Y', 'X'); } package Z; eval 'use Class::C3' if $Class::C3::C3_IN_CORE; - use base ('XY', 'YX'); + BEGIN { our @ISA = ('XY', 'YX'); } } Class::C3::initialize(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/20_reinitialize.t new/Class-C3-0.33/t/20_reinitialize.t --- old/Class-C3-0.32/t/20_reinitialize.t 2014-01-17 03:29:00.000000000 +0100 +++ new/Class-C3-0.33/t/20_reinitialize.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; @@ -19,24 +17,24 @@ { package Diamond_A; - use Class::C3; + use Class::C3; sub hello { 'Diamond_A::hello' } } { package Diamond_B; - use base 'Diamond_A'; - use Class::C3; + BEGIN { our @ISA = ('Diamond_A'); } + use Class::C3; } { package Diamond_C; - use Class::C3; - use base 'Diamond_A'; + use Class::C3; + BEGIN { our @ISA = ('Diamond_A'); } sub hello { 'Diamond_C::hello' } } { package Diamond_D; - use base ('Diamond_B', 'Diamond_C'); - use Class::C3; + BEGIN { our @ISA = ('Diamond_B', 'Diamond_C'); } + use Class::C3; } Class::C3::initialize(); @@ -60,8 +58,8 @@ { package Diamond_E; - use Class::C3; - sub hello { 'Diamond_E::hello' } + use Class::C3; + sub hello { 'Diamond_E::hello' } } { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/21_C3_with_overload.t new/Class-C3-0.33/t/21_C3_with_overload.t --- old/Class-C3-0.32/t/21_C3_with_overload.t 2014-01-17 03:29:08.000000000 +0100 +++ new/Class-C3-0.33/t/21_C3_with_overload.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; @@ -10,21 +8,21 @@ use strict; use warnings; use Class::C3; - + package OverloadingTest; use strict; use warnings; use Class::C3; - use base 'BaseTest'; + BEGIN { our @ISA = ('BaseTest'); } use overload '""' => sub { ref(shift) . " stringified" }, fallback => 1; - - sub new { bless {} => shift } - + + sub new { bless {} => shift } + package InheritingFromOverloadedTest; use strict; use warnings; - use base 'OverloadingTest'; + BEGIN { our @ISA = ('OverloadingTest'); } use Class::C3; package BaseTwo; @@ -38,7 +36,7 @@ package OverloadInheritTwo; use Class::C3; - use base qw/BaseTwo/; + BEGIN { our @ISA = (qw/BaseTwo/); } } @@ -56,8 +54,8 @@ ok(($y eq 'OverloadingTest stringified'), '... eq was handled correctly'); my $result; -eval { - $result = $x eq 'InheritingFromOverloadedTest stringified' +eval { + $result = $x eq 'InheritingFromOverloadedTest stringified' }; ok(!$@, '... this should not throw an exception'); ok($result, '... and we should get the true value'); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/22_uninitialize.t new/Class-C3-0.33/t/22_uninitialize.t --- old/Class-C3-0.32/t/22_uninitialize.t 2014-01-17 03:29:14.000000000 +0100 +++ new/Class-C3-0.33/t/22_uninitialize.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; @@ -17,26 +15,26 @@ { package Diamond_A; - use Class::C3; + use Class::C3; sub hello { 'Diamond_A::hello' } } { package Diamond_B; - use base 'Diamond_A'; - use Class::C3; + BEGIN { our @ISA = ('Diamond_A'); } + use Class::C3; } { package Diamond_C; - use Class::C3; - use base 'Diamond_A'; + use Class::C3; + BEGIN { our @ISA = ('Diamond_A'); } sub goodbye { 'Diamond_C::goodbye' } sub hello { 'Diamond_C::hello' } } { package Diamond_D; - use base ('Diamond_B', 'Diamond_C'); - use Class::C3; - + BEGIN { our @ISA = ('Diamond_B', 'Diamond_C'); } + use Class::C3; + our @hello = qw(h e l l o); our $hello = 'hello'; our %hello = (h => 1, e => 2, l => "3 & 4", o => 5) @@ -57,13 +55,13 @@ is($Diamond_D::hello, 'hello', '... our SCALAR package vars are here'); is_deeply( - \@Diamond_D::hello, + \@Diamond_D::hello, [ qw(h e l l o) ], '... our ARRAY package vars are here'); is_deeply( - \%Diamond_D::hello, + \%Diamond_D::hello, { h => 1, e => 2, l => "3 & 4", o => 5 }, - '... our HASH package vars are here'); + '... our HASH package vars are here'); Class::C3::uninitialize(); @@ -72,11 +70,11 @@ is($Diamond_D::hello, 'hello', '... our SCALAR package vars are still here'); is_deeply( - \@Diamond_D::hello, + \@Diamond_D::hello, [ qw(h e l l o) ], '... our ARRAY package vars are still here'); is_deeply( - \%Diamond_D::hello, + \%Diamond_D::hello, { h => 1, e => 2, l => "3 & 4", o => 5 }, - '... our HASH package vars are still here'); + '... our HASH package vars are still here'); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/23_multi_init.t new/Class-C3-0.33/t/23_multi_init.t --- old/Class-C3-0.32/t/23_multi_init.t 2014-01-17 03:29:19.000000000 +0100 +++ new/Class-C3-0.33/t/23_multi_init.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; @@ -21,18 +19,18 @@ sub testmethod { 42 } package TestMRO::B; - use base 'TestMRO::A'; + BEGIN { our @ISA = ('TestMRO::A'); } use Class::C3; package TestMRO::C; - use base 'TestMRO::A'; + BEGIN { our @ISA = ('TestMRO::A'); } use Class::C3; sub testmethod { shift->next::method + 1 } package TestMRO::D; BEGIN { Class::C3::initialize } - use base 'TestMRO::B'; - use base 'TestMRO::C'; + BEGIN { our @ISA = ('TestMRO::B'); } + BEGIN { our @ISA = ('TestMRO::C'); } use Class::C3; sub new { my $class = shift; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/24_more_overload.t new/Class-C3-0.33/t/24_more_overload.t --- old/Class-C3-0.32/t/24_more_overload.t 2014-01-17 03:29:28.000000000 +0100 +++ new/Class-C3-0.33/t/24_more_overload.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; @@ -8,43 +6,43 @@ { package BaseTest; use Class::C3; - sub new { bless {} => shift } - + sub new { bless {} => shift } + package OverloadingTest; use Class::C3; - use base 'BaseTest'; + BEGIN { our @ISA = ('BaseTest'); } use overload '+' => sub { die "called plus operator in OT" }, fallback => 0; - + package InheritingFromOverloadedTest; - use base 'OverloadingTest'; + BEGIN { our @ISA = ('OverloadingTest'); } use Class::C3; use overload '+' => sub { die "called plus operator in IFOT" }, fallback => 1; package IFOTX; use Class::C3; - use base 'OverloadingTest'; + BEGIN { our @ISA = ('OverloadingTest'); } package IFIFOT; use Class::C3; - use base 'InheritingFromOverloadedTest'; + BEGIN { our @ISA = ('InheritingFromOverloadedTest'); } package Foo; use Class::C3; - use base 'BaseTest'; + BEGIN { our @ISA = ('BaseTest'); } use overload '+' => sub { die "called plus operator in Foo" }, fallback => 1; package Bar; use Class::C3; - use base 'Foo'; + BEGIN { our @ISA = ('Foo'); } use overload '+' => sub { die "called plus operator in Bar" }, fallback => 0; package Baz; use Class::C3; - use base 'Bar'; + BEGIN { our @ISA = ('Bar'); } } Class::C3::initialize(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/30_next_method.t new/Class-C3-0.33/t/30_next_method.t --- old/Class-C3-0.32/t/30_next_method.t 2014-01-17 03:24:00.000000000 +0100 +++ new/Class-C3-0.33/t/30_next_method.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; @@ -19,30 +17,30 @@ { package Diamond_A; - use Class::C3; + use Class::C3; sub hello { 'Diamond_A::hello' } - sub foo { 'Diamond_A::foo' } + sub foo { 'Diamond_A::foo' } } { package Diamond_B; - use base 'Diamond_A'; - use Class::C3; - sub foo { 'Diamond_B::foo => ' . (shift)->next::method() } + BEGIN { our @ISA = ('Diamond_A'); } + use Class::C3; + sub foo { 'Diamond_B::foo => ' . (shift)->next::method() } } { package Diamond_C; - use Class::C3; - use base 'Diamond_A'; + use Class::C3; + BEGIN { our @ISA = ('Diamond_A'); } sub hello { 'Diamond_C::hello => ' . (shift)->next::method() } - sub foo { 'Diamond_C::foo => ' . (shift)->next::method() } + sub foo { 'Diamond_C::foo => ' . (shift)->next::method() } } { package Diamond_D; - use base ('Diamond_B', 'Diamond_C'); - use Class::C3; - - sub foo { 'Diamond_D::foo => ' . (shift)->next::method() } + BEGIN { our @ISA = ('Diamond_B', 'Diamond_C'); } + use Class::C3; + + sub foo { 'Diamond_D::foo => ' . (shift)->next::method() } } Class::C3::initialize(); @@ -54,14 +52,14 @@ is(Diamond_D->hello, 'Diamond_C::hello => Diamond_A::hello', '... method resolved itself as expected'); -is(Diamond_D->can('hello')->('Diamond_D'), - 'Diamond_C::hello => Diamond_A::hello', +is(Diamond_D->can('hello')->('Diamond_D'), + 'Diamond_C::hello => Diamond_A::hello', '... can(method) resolved itself as expected'); - -is(UNIVERSAL::can("Diamond_D", 'hello')->('Diamond_D'), - 'Diamond_C::hello => Diamond_A::hello', + +is(UNIVERSAL::can("Diamond_D", 'hello')->('Diamond_D'), + 'Diamond_C::hello => Diamond_A::hello', '... can(method) resolved itself as expected'); -is(Diamond_D->foo, - 'Diamond_D::foo => Diamond_B::foo => Diamond_C::foo => Diamond_A::foo', +is(Diamond_D->foo, + 'Diamond_D::foo => Diamond_B::foo => Diamond_C::foo => Diamond_A::foo', '... method foo resolved itself as expected'); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/31_next_method_skip.t new/Class-C3-0.33/t/31_next_method_skip.t --- old/Class-C3-0.32/t/31_next_method_skip.t 2014-01-17 03:24:39.000000000 +0100 +++ new/Class-C3-0.33/t/31_next_method_skip.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; @@ -19,40 +17,40 @@ { package Diamond_A; - use Class::C3; - sub bar { 'Diamond_A::bar' } + use Class::C3; + sub bar { 'Diamond_A::bar' } sub baz { 'Diamond_A::baz' } } { package Diamond_B; - use base 'Diamond_A'; - use Class::C3; - sub baz { 'Diamond_B::baz => ' . (shift)->next::method() } + BEGIN { our @ISA = ('Diamond_A'); } + use Class::C3; + sub baz { 'Diamond_B::baz => ' . (shift)->next::method() } } { package Diamond_C; - use Class::C3; - use base 'Diamond_A'; - sub foo { 'Diamond_C::foo' } - sub buz { 'Diamond_C::buz' } - + use Class::C3; + BEGIN { our @ISA = ('Diamond_A'); } + sub foo { 'Diamond_C::foo' } + sub buz { 'Diamond_C::buz' } + sub woz { 'Diamond_C::woz' } - sub maybe { 'Diamond_C::maybe' } + sub maybe { 'Diamond_C::maybe' } } { package Diamond_D; - use base ('Diamond_B', 'Diamond_C'); - use Class::C3; - sub foo { 'Diamond_D::foo => ' . (shift)->next::method() } - sub bar { 'Diamond_D::bar => ' . (shift)->next::method() } - sub buz { 'Diamond_D::buz => ' . (shift)->baz() } - sub fuz { 'Diamond_D::fuz => ' . (shift)->next::method() } - + BEGIN { our @ISA = ('Diamond_B', 'Diamond_C'); } + use Class::C3; + sub foo { 'Diamond_D::foo => ' . (shift)->next::method() } + sub bar { 'Diamond_D::bar => ' . (shift)->next::method() } + sub buz { 'Diamond_D::buz => ' . (shift)->baz() } + sub fuz { 'Diamond_D::fuz => ' . (shift)->next::method() } + sub woz { 'Diamond_D::woz can => ' . ((shift)->next::can() ? 1 : 0) } sub noz { 'Diamond_D::noz can => ' . ((shift)->next::can() ? 1 : 0) } sub maybe { 'Diamond_D::maybe => ' . ((shift)->maybe::next::method() || 0) } - sub moybe { 'Diamond_D::moybe => ' . ((shift)->maybe::next::method() || 0) } + sub moybe { 'Diamond_D::moybe => ' . ((shift)->maybe::next::method() || 0) } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/32_next_method_edge_cases.t new/Class-C3-0.33/t/32_next_method_edge_cases.t --- old/Class-C3-0.32/t/32_next_method_edge_cases.t 2014-01-17 03:29:43.000000000 +0100 +++ new/Class-C3-0.33/t/32_next_method_edge_cases.t 2017-04-23 21:43:40.000000000 +0200 @@ -22,7 +22,7 @@ isa_ok($foo, 'Foo'); can_ok($foo, 'bar'); - is($foo->bar(), 'Foo::bar', '... got the right return value'); + is($foo->bar(), 'Foo::bar', '... got the right return value'); # fail calling it from a subclass @@ -32,17 +32,17 @@ use warnings; use Class::C3; our @ISA = ('Foo'); - } - + } + my $bar = Bar->new(); isa_ok($bar, 'Bar'); - isa_ok($bar, 'Foo'); - + isa_ok($bar, 'Foo'); + # test it working with with Sub::Name - SKIP: { + SKIP: { eval 'use Sub::Name'; skip "Sub::Name is required for this test", 3 if $@; - + my $m = sub { (shift)->next::method() }; Sub::Name::subname('Bar::bar', $m); { @@ -50,14 +50,14 @@ *{'Bar::bar'} = $m; } - Class::C3::initialize(); + Class::C3::initialize(); can_ok($bar, 'bar'); my $value = eval { $bar->bar() }; ok(!$@, '... calling bar() succedded') || diag $@; is($value, 'Foo::bar', '... got the right return value too'); } - + # test it failing without Sub::Name { package Baz; @@ -65,12 +65,12 @@ use warnings; use Class::C3; our @ISA = ('Foo'); - } - + } + my $baz = Baz->new(); isa_ok($baz, 'Baz'); - isa_ok($baz, 'Foo'); - + isa_ok($baz, 'Foo'); + { my $m = sub { (shift)->next::method() }; { @@ -78,9 +78,9 @@ *{'Baz::bar'} = $m; } - Class::C3::initialize(); + Class::C3::initialize(); eval { $baz->bar() }; ok($@, '... calling bar() with next::method failed') || diag $@; - } + } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/33_next_method_used_with_NEXT.t new/Class-C3-0.33/t/33_next_method_used_with_NEXT.t --- old/Class-C3-0.32/t/33_next_method_used_with_NEXT.t 2014-01-17 03:21:40.000000000 +0100 +++ new/Class-C3-0.33/t/33_next_method_used_with_NEXT.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; @@ -16,33 +14,33 @@ use strict; use warnings; use Class::C3; - + sub foo { 'Foo::foo' } - + package Fuz; use strict; use warnings; - use Class::C3; - use base 'Foo'; + use Class::C3; + BEGIN { our @ISA = ('Foo'); } sub foo { 'Fuz::foo => ' . (shift)->next::method } - + package Bar; use strict; - use warnings; + use warnings; use Class::C3; - use base 'Foo'; + BEGIN { our @ISA = ('Foo'); } sub foo { 'Bar::foo => ' . (shift)->next::method } - + package Baz; use strict; - use warnings; + use warnings; require NEXT; # load this as late as possible so we can catch the test skip - use base 'Bar', 'Fuz'; - - sub foo { 'Baz::foo => ' . (shift)->NEXT::foo } + BEGIN { our @ISA = ('Bar', 'Fuz'); } + + sub foo { 'Baz::foo => ' . (shift)->NEXT::foo } } Class::C3::initialize(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/34_next_method_in_eval.t new/Class-C3-0.33/t/34_next_method_in_eval.t --- old/Class-C3-0.32/t/34_next_method_in_eval.t 2014-01-17 03:24:12.000000000 +0100 +++ new/Class-C3-0.33/t/34_next_method_in_eval.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; @@ -12,23 +10,23 @@ =cut { - package A; - use Class::C3; + package ClassA; + use Class::C3; sub foo { - die 'A::foo died'; - return 'A::foo succeeded'; + die 'ClassA::foo died'; + return 'ClassA::foo succeeded'; } } { - package B; - use base 'A'; - use Class::C3; - + package ClassB; + BEGIN { our @ISA = ('ClassA'); } + use Class::C3; + sub foo { eval { - return 'B::foo => ' . (shift)->next::method(); + return 'ClassB::foo => ' . (shift)->next::method(); }; if ($@) { @@ -37,10 +35,10 @@ } } -Class::C3::initialize(); +Class::C3::initialize(); -like(B->foo, - qr/^A::foo died/, +like(ClassB->foo, + qr/^ClassA::foo died/, 'method resolved inside eval{}'); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/35_next_method_in_anon.t new/Class-C3-0.33/t/35_next_method_in_anon.t --- old/Class-C3-0.32/t/35_next_method_in_anon.t 2014-01-17 03:24:18.000000000 +0100 +++ new/Class-C3-0.33/t/35_next_method_in_anon.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; @@ -13,26 +11,26 @@ =cut { - package A; - use Class::C3; + package ClassA; + use Class::C3; sub foo { - return 'A::foo'; + return 'ClassA::foo'; } sub bar { - return 'A::bar'; + return 'ClassA::bar'; } } { - package B; - use base 'A'; - use Class::C3; - + package ClassB; + BEGIN { our @ISA = ('ClassA'); } + use Class::C3; + sub foo { my $code = sub { - return 'B::foo => ' . (shift)->next::method(); + return 'ClassB::foo => ' . (shift)->next::method(); }; return (shift)->$code; } @@ -40,7 +38,7 @@ sub bar { my $code1 = sub { my $code2 = sub { - return 'B::bar => ' . (shift)->next::method(); + return 'ClassB::bar => ' . (shift)->next::method(); }; return (shift)->$code2; }; @@ -48,12 +46,12 @@ } } -Class::C3::initialize(); +Class::C3::initialize(); -is(B->foo, "B::foo => A::foo", +is(ClassB->foo, "ClassB::foo => ClassA::foo", 'method resolved inside anonymous sub'); -is(B->bar, "B::bar => A::bar", +is(ClassB->bar, "ClassB::bar => ClassA::bar", 'method resolved inside nested anonymous subs'); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/36_next_goto.t new/Class-C3-0.33/t/36_next_goto.t --- old/Class-C3-0.32/t/36_next_goto.t 2014-01-17 03:30:20.000000000 +0100 +++ new/Class-C3-0.33/t/36_next_goto.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,5 +1,3 @@ -#!/usr/bin/perl - use strict; use warnings; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Class-C3-0.32/t/37_mro_warn.t new/Class-C3-0.33/t/37_mro_warn.t --- old/Class-C3-0.32/t/37_mro_warn.t 2014-01-17 03:21:40.000000000 +0100 +++ new/Class-C3-0.33/t/37_mro_warn.t 2017-04-23 21:43:40.000000000 +0200 @@ -1,4 +1,5 @@ use strict; +use warnings; use Test::More; BEGIN
