Hello community,

here is the log from the commit of package perl-Role-Tiny for openSUSE:Factory 
checked in at 2013-10-06 14:56:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Role-Tiny (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Role-Tiny.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Role-Tiny"

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Role-Tiny/perl-Role-Tiny.changes    
2013-07-29 17:50:38.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.perl-Role-Tiny.new/perl-Role-Tiny.changes       
2013-10-06 14:56:02.000000000 +0200
@@ -1,0 +2,8 @@
+Fri Oct  4 09:13:59 UTC 2013 - [email protected]
+
+- updated to 1.003002
+  - abbreviate generated package names if they are longer than perl can handle
+    (RT#83248)
+  - add explicit dependency on the version of Exporter that added 'import'
+
+-------------------------------------------------------------------

Old:
----
  Role-Tiny-1.003001.tar.gz

New:
----
  Role-Tiny-1.003002.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ perl-Role-Tiny.spec ++++++
--- /var/tmp/diff_new_pack.UW7QIk/_old  2013-10-06 14:56:02.000000000 +0200
+++ /var/tmp/diff_new_pack.UW7QIk/_new  2013-10-06 14:56:02.000000000 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           perl-Role-Tiny
-Version:        1.003001
+Version:        1.003002
 Release:        0
 %define cpan_name Role-Tiny
 Summary:        Roles. Like a nouvelle cuisine portion size slice of Moose.

++++++ Role-Tiny-1.003001.tar.gz -> Role-Tiny-1.003002.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Role-Tiny-1.003001/Changes 
new/Role-Tiny-1.003002/Changes
--- old/Role-Tiny-1.003001/Changes      2013-07-15 05:59:09.000000000 +0200
+++ new/Role-Tiny-1.003002/Changes      2013-09-05 05:46:05.000000000 +0200
@@ -1,7 +1,14 @@
-1.003001 - 2013-07-14
+Revision history for Role-Tiny
+
+1.003002   2013-09-04
+  - abbreviate generated package names if they are longer than perl can handle
+    (RT#83248)
+  - add explicit dependency on the version of Exporter that added 'import'
+
+1.003001   2013-07-14
   - fix test accidentally requiring Class::Method::Modifiers
 
-1.003000 - 2013-07-14
+1.003000   2013-07-14
   - allow composing roles simultaneously that mutually require each other
     (RT#82711)
   - Fix _concrete_methods_of returning non-CODE entries
@@ -10,67 +17,67 @@
   - add is_role method for checking if a given package is a role
   - drop minimum perl version - code tests just fine on 5.6.1 and 5.6.2
 
-1.002005 - 2013-02-01
+1.002005   2013-02-01
   - complain loudly if Class::Method::Modifiers is too old (and skip tests)
   - don't use $_ as loop variable when calling arbitrary code
 
-1.002004 - 2012-11-02
+1.002004   2012-11-02
   - remove accidentally-introduced strictures.pm usage
 
-1.002003 - 2012-10-29
+1.002003   2012-10-29
   - fix method modifier breakage on 5.10.0
 
-1.002002 - 2012-10-28
+1.002002   2012-10-28
   - skip t/around-does.t when Class::Method::Modifiers is not installed
     (RT#80310)
 
-1.002001 - 2012-10-26
+1.002001   2012-10-26
   - t/does-Moo.t moved to 'xt' (RT#80290)
   - don't die when looking for 'DOES' on perl < 5.10 (RT#80402)
 
-1.002000 - 2012-10-19
+1.002000   2012-10-19
   - load class in addition to roles when using create_class_from_roles
   - fix module name in Makefile.PL (RT#78591)
   - when classes consume roles, override their DOES method (RT#79747)
   - method modifiers can be used for 'does' and 'DOES'
 
-1.001005 - 2012-07-18
+1.001005   2012-07-18
   - localize UNIVERSAL::can change to avoid confusing TB2
   - properly report roles consumed by superclasses
 
-1.001004 - 2012-07-12
+1.001004   2012-07-12
   - remove strictures.pm from the test supplied by mmcleric so we install again
   - when applying runtime roles include roles from original class in new class
     ( fixes ::does_role checks)
 
-1.001003 - 2012-06-19
+1.001003   2012-06-19
   - correctly apply modifiers with role composition
   - check for conflicts during role-to-object application (test from mmcleric)
   - add an explicit return to all exported subs so people don't accidentally
     rely on the return value
   - store coderefs as well as their refaddrs to protect against crazy
 
-1.001002 - 2012-05-05
+1.001002   2012-05-05
   - alter duplication test to not provoke Class::Method::Modifiers loading
 
-1.001001 - 2012-04-27
+1.001001   2012-04-27
   - remove strictures from one last test file
 
-1.001000 - 2012-04-27
+1.001000   2012-04-27
   - Documentation improvements, no code changes
 
-1.000_901 - 2012-04-12
+1.000_901   2012-04-12
   - Fix MANIFEST inclusion of Role::Basic composition
 
-1.000_900 - 2012-04-11
+1.000_900   2012-04-11
   - Add composition with tests stolen from Role::Basic
 
-1.000001 - 2012-04-03
+1.000001   2012-04-03
   - Document that Class::Method::Modifiers must be depended on separately
   - Update tests so that they skip correctly without C::M::M
   - Add a SEE ALSO section
 
-1.000000 - 2012-03-29
+1.000000   2012-03-29
   - Remove redundant code in create_class_with_roles
   - Minor doc fix to does_role
   - Split Role::Tiny out into its own dist
@@ -87,25 +94,25 @@
   - Explicitly require Role::Tiny in Role::Tiny::With (RT#70446)
   - Fix spurious 'once' warnings under perl -w
 
-0.009013 - 2011-12-23
+0.009013   2011-12-23
   - fix up Class::XSAccessor version check to be more robust
   - improved documentation
   - fix failures on perls < 5.8.3
   - fix test failures on cygwin
 
-0.009012 - 2011-11-15
+0.009012   2011-11-15
   - make Method::Generate::Constructor handle $obj->new
   - fix bug where constants containing a reference weren't handled correctly
     (ref(\[]) is 'REF' not 'SCALAR', ref(\v1) is 'VSTRING')
 
-0.009011 - 2011-10-03
+0.009011   2011-10-03
   - add support for DEMOLISH
   - add support for BUILDARGS
 
-0.009010 - 2011-07-20
+0.009010   2011-07-20
   - missing new files for Role::Tiny::With
 
-0.009009 - 2011-07-20
+0.009009   2011-07-20
   - remove the big scary warning because we seem to be mostly working now
   - perl based getter dies if @_ > 1 (XSAccessor already did)
   - add Role::Tiny::With for use in classes
@@ -113,14 +120,14 @@
     subclasses with a BUILD method but no attributes get it honoured
   - add coerce handling
 
-0.009008 - 2011-06-03
+0.009008   2011-06-03
   - transfer fix to _load_module to Role::Tiny and make a note it's an inline
   - Bring back 5.8.1 compat
 
-0.009007 - 2011-02-25
+0.009007   2011-02-25
   - I botched the copyright. re-disting.
 
-0.009006 - 2011-02-25
+0.009006   2011-02-25
   - handle non-lazy default and builder when init_arg is undef
   - add copyright and license info for downstream packagers
   - weak ref checking for Sub::Quote to avoid bugs on refaddr reuse
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Role-Tiny-1.003001/MANIFEST 
new/Role-Tiny-1.003002/MANIFEST
--- old/Role-Tiny-1.003001/MANIFEST     2013-07-15 05:59:27.000000000 +0200
+++ new/Role-Tiny-1.003002/MANIFEST     2013-09-05 05:46:18.000000000 +0200
@@ -25,6 +25,7 @@
 t/role-basic/lib/TestMethods.pm
 t/role-basic/lib/Try/Tiny.pm
 t/role-duplication.t
+t/role-long-package-name.t
 t/role-tiny-composition.t
 t/role-tiny-with.t
 t/role-tiny.t
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Role-Tiny-1.003001/META.json 
new/Role-Tiny-1.003002/META.json
--- old/Role-Tiny-1.003001/META.json    2013-07-15 05:59:27.000000000 +0200
+++ new/Role-Tiny-1.003002/META.json    2013-09-05 05:46:17.000000000 +0200
@@ -4,7 +4,7 @@
       "mst - Matt S. Trout (cpan:MSTROUT) <[email protected]>"
    ],
    "dynamic_config" : 1,
-   "generated_by" : "ExtUtils::MakeMaker version 6.68, CPAN::Meta::Converter 
version 2.131560",
+   "generated_by" : "ExtUtils::MakeMaker version 6.74, CPAN::Meta::Converter 
version 2.120921",
    "license" : [
       "perl_5"
    ],
@@ -27,20 +27,23 @@
             "Test::More" : "0.96"
          }
       },
-      "configure" : {
+      "runtime" : {
          "requires" : {
-            "ExtUtils::MakeMaker" : "0"
+            "Exporter" : "5.57"
          }
-      },
-      "runtime" : {
-         "requires" : {}
       }
    },
    "release_status" : "stable",
    "resources" : {
+      "bugtracker" : {
+         "mailto" : "[email protected]",
+         "web" : "https://rt.cpan.org/Public/Dist/Display.html?Name=Role-Tiny";
+      },
       "repository" : {
-         "url" : "git://git.shadowcat.co.uk/gitmo/Role-Tiny.git"
+         "type" : "git",
+         "url" : "git://git.shadowcat.co.uk/gitmo/Role-Tiny.git",
+         "web" : 
"http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo/Role-Tiny.git";
       }
    },
-   "version" : "1.003001"
+   "version" : "1.003002"
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Role-Tiny-1.003001/META.yml 
new/Role-Tiny-1.003002/META.yml
--- old/Role-Tiny-1.003001/META.yml     2013-07-15 05:59:27.000000000 +0200
+++ new/Role-Tiny-1.003002/META.yml     2013-09-05 05:46:17.000000000 +0200
@@ -5,10 +5,8 @@
 build_requires:
   Test::Fatal: 0.003
   Test::More: 0.96
-configure_requires:
-  ExtUtils::MakeMaker: 0
 dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 6.68, CPAN::Meta::Converter version 
2.131560'
+generated_by: 'ExtUtils::MakeMaker version 6.74, CPAN::Meta::Converter version 
2.120921'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -19,7 +17,9 @@
     - t
     - inc
     - xt
-requires: {}
+requires:
+  Exporter: 5.57
 resources:
+  bugtracker: https://rt.cpan.org/Public/Dist/Display.html?Name=Role-Tiny
   repository: git://git.shadowcat.co.uk/gitmo/Role-Tiny.git
-version: 1.003001
+version: 1.003002
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Role-Tiny-1.003001/Makefile.PL 
new/Role-Tiny-1.003002/Makefile.PL
--- old/Role-Tiny-1.003001/Makefile.PL  2013-07-11 13:42:21.000000000 +0200
+++ new/Role-Tiny-1.003002/Makefile.PL  2013-09-05 00:16:25.000000000 +0200
@@ -10,27 +10,36 @@
 );
 
 # have to do this since old EUMM dev releases miss the eval $VERSION line
-my $mymeta_works = do { no warnings; $ExtUtils::MakeMaker::VERSION >= 6.5707 };
+my $mymeta = eval($ExtUtils::MakeMaker::VERSION) >= 6.57_02;
+my $mymeta_works = eval($ExtUtils::MakeMaker::VERSION) >= 6.57_07;
 
 WriteMakefile(
   NAME => 'Role::Tiny',
   VERSION_FROM => 'lib/Role/Tiny.pm',
   PREREQ_PM => {
+    Exporter => '5.57',
     ($] >= 5.010 ? () : ('MRO::Compat' => 0)),
     ($mymeta_works ? () : (%BUILD_DEPS)),
   },
   $mymeta_works ? (BUILD_REQUIRES => \%BUILD_DEPS) : (),
+  ($mymeta && !$mymeta_works ? (NO_MYMETA => 1) : ()),
 
-  META_ADD => {
+  -f 'META.yml' ? () : (META_MERGE => {
+    'meta-spec' => { version => 2 },
+    no_index => {
+      directory => [ 'xt' ]
+    },
     resources => {
       # r/w: [email protected]:Role-Tiny.git
-      repository => 'git://git.shadowcat.co.uk/gitmo/Role-Tiny.git',
+      repository => {
+        url => 'git://git.shadowcat.co.uk/gitmo/Role-Tiny.git',
+        web => 
'http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo/Role-Tiny.git',
+        type => 'git',
+      },
+      bugtracker => {
+          mailto => '[email protected]',
+          web => 'https://rt.cpan.org/Public/Dist/Display.html?Name=Role-Tiny',
+      },
     },
-  },
-
-  META_MERGE => {
-    no_index => {
-      directory => [ 'xt' ]
-    }
-  },
+  }),
 );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Role-Tiny-1.003001/lib/Role/Tiny.pm 
new/Role-Tiny-1.003002/lib/Role/Tiny.pm
--- old/Role-Tiny-1.003001/lib/Role/Tiny.pm     2013-07-15 05:57:57.000000000 
+0200
+++ new/Role-Tiny-1.003002/lib/Role/Tiny.pm     2013-09-05 05:34:37.000000000 
+0200
@@ -6,7 +6,7 @@
 use strict;
 use warnings FATAL => 'all';
 
-our $VERSION = '1.003001'; # 1.3.1
+our $VERSION = '1.003002'; # 1.3.2
 $VERSION = eval $VERSION;
 
 our %INFO;
@@ -104,6 +104,21 @@
   $object;
 }
 
+my $role_suffix = 'A000';
+sub _composite_name {
+  my ($me, $superclass, @roles) = @_;
+
+  my $new_name = join(
+    '__WITH__', $superclass, my $compose_name = join '__AND__', @roles
+  );
+
+  if (length($new_name) > 252) {
+    $new_name = $COMPOSED{abbrev}{$new_name}
+      ||= substr($new_name, 0, 250 - length $role_suffix).'__'.$role_suffix++;
+  }
+  return wantarray ? ($new_name, $compose_name) : $new_name;
+}
+
 sub create_class_with_roles {
   my ($me, $superclass, @roles) = @_;
 
@@ -118,9 +133,7 @@
     }
   }
 
-  my $new_name = join(
-    '__WITH__', $superclass, my $compose_name = join '__AND__', @roles
-  );
+  my ($new_name, $compose_name) = $me->_composite_name($superclass, @roles);
 
   return $new_name if $COMPOSED{class}{$new_name};
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Role-Tiny-1.003001/maint/Makefile.PL.include 
new/Role-Tiny-1.003002/maint/Makefile.PL.include
--- old/Role-Tiny-1.003001/maint/Makefile.PL.include    2013-01-19 
02:20:25.000000000 +0100
+++ new/Role-Tiny-1.003002/maint/Makefile.PL.include    2013-09-03 
20:57:26.000000000 +0200
@@ -1,6 +1,7 @@
 BEGIN { -e 'Distar' or system("git clone 
git://git.shadowcat.co.uk/p5sagit/Distar.git") }
 use lib 'Distar/lib';
 use Distar;
+use ExtUtils::MakeMaker 6.68 ();
 
 author 'mst - Matt S. Trout (cpan:MSTROUT) <[email protected]>';
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Role-Tiny-1.003001/t/role-long-package-name.t 
new/Role-Tiny-1.003002/t/role-long-package-name.t
--- old/Role-Tiny-1.003001/t/role-long-package-name.t   1970-01-01 
01:00:00.000000000 +0100
+++ new/Role-Tiny-1.003002/t/role-long-package-name.t   2013-08-29 
15:01:37.000000000 +0200
@@ -0,0 +1,42 @@
+use strict;
+use warnings;
+use Test::More;
+
+# using Role::Tiny->apply_roles_to_object with too many roles,
+# It makes 'Identifier too long' error in string 'eval'.
+# And, Moo uses string eval.
+{
+    package R::AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA;
+    use Role::Tiny;
+    package R::BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB;
+    use Role::Tiny;
+    package R::CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC;
+    use Role::Tiny;
+    package R::DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD;
+    use Role::Tiny;
+    package R::EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE;
+    use Role::Tiny;
+}
+
+{
+    package Foo;
+    sub new { bless {}, shift }
+}
+
+my $foo = Foo->new();
+for (qw(
+    R::AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+    R::BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+    R::CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+    R::DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
+    R::EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
+)) {
+    Role::Tiny->apply_roles_to_object($foo, $_);
+}
+
+my $pkg = ref $foo;
+note $pkg;
+eval "package $pkg;";
+ok(!$@) or diag $@;
+
+done_testing;

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to