r34154 - in /trunk/libmoosex-methodattributes-perl: ./ debian/ lib/MooseX/ lib/MooseX/MethodAttributes/ lib/MooseX/MethodAttributes/Role/ lib/MooseX/MethodAttributes/Role/AttrContainer/ lib/MooseX/MethodAttributes/Role/Meta/ lib/MooseX/MethodAttributes/Role/Meta/Method/ t/ t/lib/

ansgar-guest at users.alioth.debian.org ansgar-guest at users.alioth.debian.org
Sun Apr 26 08:36:18 UTC 2009


Author: ansgar-guest
Date: Sun Apr 26 08:36:12 2009
New Revision: 34154

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=34154
Log:
New upstream release.

Added:
    trunk/libmoosex-methodattributes-perl/t/catalyst.t
      - copied unchanged from r34153, branches/upstream/libmoosex-methodattributes-perl/current/t/catalyst.t
    trunk/libmoosex-methodattributes-perl/t/catalyst_todo.t
      - copied unchanged from r34153, branches/upstream/libmoosex-methodattributes-perl/current/t/catalyst_todo.t
Modified:
    trunk/libmoosex-methodattributes-perl/Changes
    trunk/libmoosex-methodattributes-perl/MANIFEST
    trunk/libmoosex-methodattributes-perl/META.yml
    trunk/libmoosex-methodattributes-perl/Makefile.PL
    trunk/libmoosex-methodattributes-perl/README
    trunk/libmoosex-methodattributes-perl/debian/changelog
    trunk/libmoosex-methodattributes-perl/dist.ini
    trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes.pm
    trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Inheritable.pm
    trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer.pm
    trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer/Inheritable.pm
    trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Class.pm
    trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method.pm
    trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/MaybeWrapped.pm
    trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/Wrapped.pm
    trunk/libmoosex-methodattributes-perl/t/lib/BaseClass.pm
    trunk/libmoosex-methodattributes-perl/t/lib/OtherSubClass.pm
    trunk/libmoosex-methodattributes-perl/t/lib/SubClass.pm
    trunk/libmoosex-methodattributes-perl/t/lib/SubClassUseBaseAndUseMoose.pm
    trunk/libmoosex-methodattributes-perl/t/lib/SubSubClass.pm
    trunk/libmoosex-methodattributes-perl/t/lib/TestClass.pm

Modified: trunk/libmoosex-methodattributes-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/Changes?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/Changes (original)
+++ trunk/libmoosex-methodattributes-perl/Changes Sun Apr 26 08:36:12 2009
@@ -1,3 +1,12 @@
+0.08  Sat, 25 Apr 2009 16:30:00 + 0100
+  * Fix get_nearest_methods_with_attributes to deal with wrapped methods.
+    - Add tests for this, and how Catalyst uses the module
+  * Add TODO tests showing that method metaclass inheritance (or lacktherof)
+    into subclasses causes us to fail to do the right thing.
+
+0.07  Sat, 25 Apr 2009 13:47:05 + 0100
+  * Add the get_nearest_methods_with_attributes method.
+
 0.06  Sun, 19 Apr 2009 23:03:06 + 0100
   * Fix bug when using base, as Moose doesn't automatically inherit the
     method metaclass from your parent class unless you use the 'extends'

Modified: trunk/libmoosex-methodattributes-perl/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/MANIFEST?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/MANIFEST (original)
+++ trunk/libmoosex-methodattributes-perl/MANIFEST Sun Apr 26 08:36:12 2009
@@ -15,6 +15,8 @@
 lib/MooseX/MethodAttributes/Role/Meta/Method/Wrapped.pm
 t/basic.t
 t/calling.t
+t/catalyst.t
+t/catalyst_todo.t
 t/inherited.t
 t/inherited_non_moose_multilevel.t
 t/lib/BaseClass.pm

Modified: trunk/libmoosex-methodattributes-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/META.yml?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/META.yml (original)
+++ trunk/libmoosex-methodattributes-perl/META.yml Sun Apr 26 08:36:12 2009
@@ -10,4 +10,4 @@
   Moose: 0.70
   MooseX::Types: 0.06
   namespace::clean: 0
-version: 0.07
+version: 0.08

Modified: trunk/libmoosex-methodattributes-perl/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/Makefile.PL?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/Makefile.PL (original)
+++ trunk/libmoosex-methodattributes-perl/Makefile.PL Sun Apr 26 08:36:12 2009
@@ -9,7 +9,7 @@
   NAME      => 'MooseX::MethodAttributes',
   AUTHOR    => 'Florian\ Ragwitz\ \<rafl\@debian\.org\>\,\ Tomas\ Doran\ \<bobtfish\@bobtfish\.net\>',
   ABSTRACT  => 'code attribute introspection',
-  VERSION   => '0.07',
+  VERSION   => '0.08',
   EXE_FILES => [ qw() ],
   (eval { ExtUtils::MakeMaker->VERSION(6.21) } ? (LICENSE => 'perl') : ()),
   PREREQ_PM    => {

Modified: trunk/libmoosex-methodattributes-perl/README
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/README?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/README (original)
+++ trunk/libmoosex-methodattributes-perl/README Sun Apr 26 08:36:12 2009
@@ -1,7 +1,7 @@
 
 
 This archive contains the distribution MooseX-MethodAttributes, version
-0.07:
+0.08:
 
   code attribute introspection
 

Modified: trunk/libmoosex-methodattributes-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/debian/changelog?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/debian/changelog (original)
+++ trunk/libmoosex-methodattributes-perl/debian/changelog Sun Apr 26 08:36:12 2009
@@ -1,3 +1,9 @@
+libmoosex-methodattributes-perl (0.08-1) unstable; urgency=low
+
+  * New upstream release.
+
+ -- Ansgar Burchardt <ansgar at 43-1.org>  Sun, 26 Apr 2009 10:31:46 +0200
+
 libmoosex-methodattributes-perl (0.07-1) unstable; urgency=low
 
   * New upstream release

Modified: trunk/libmoosex-methodattributes-perl/dist.ini
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/dist.ini?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/dist.ini (original)
+++ trunk/libmoosex-methodattributes-perl/dist.ini Sun Apr 26 08:36:12 2009
@@ -1,5 +1,5 @@
 name    = MooseX-MethodAttributes
-version = 0.07
+version = 0.08
 author  = Florian Ragwitz <rafl at debian.org>
 author  = Tomas Doran <bobtfish at bobtfish.net>
 license = Perl_5

Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes.pm?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes.pm Sun Apr 26 08:36:12 2009
@@ -2,7 +2,7 @@
 use warnings;
 
 package MooseX::MethodAttributes;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
 
 # ABSTRACT: code attribute introspection
 
@@ -38,7 +38,7 @@
 
 =head1 VERSION
 
-version 0.07
+version 0.08
 
 =head1 SYNOPSIS
 

Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Inheritable.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Inheritable.pm?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Inheritable.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Inheritable.pm Sun Apr 26 08:36:12 2009
@@ -1,5 +1,5 @@
 package MooseX::MethodAttributes::Inheritable;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
 
 # ABSTRACT: inheritable code attribute introspection
 
@@ -21,7 +21,7 @@
 
 =head1 VERSION
 
-version 0.07
+version 0.08
 
 =head1 SYNOPSIS
 

Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer.pm?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer.pm Sun Apr 26 08:36:12 2009
@@ -1,5 +1,5 @@
 package MooseX::MethodAttributes::Role::AttrContainer;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
 
 # ABSTRACT: capture code attributes in the class' metaclass
 
@@ -24,7 +24,7 @@
 
 =head1 VERSION
 
-version 0.07
+version 0.08
 
 =head1 METHODS
 

Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer/Inheritable.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer/Inheritable.pm?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer/Inheritable.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer/Inheritable.pm Sun Apr 26 08:36:12 2009
@@ -1,5 +1,5 @@
 package MooseX::MethodAttributes::Role::AttrContainer::Inheritable;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
 
 # ABSTRACT: capture code attributes in the automatically initialized metaclass instance
 
@@ -39,7 +39,7 @@
 
 =head1 VERSION
 
-version 0.07
+version 0.08
 
 =head1 DESCRIPTION
 

Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Class.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Class.pm?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Class.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Class.pm Sun Apr 26 08:36:12 2009
@@ -1,5 +1,5 @@
 package MooseX::MethodAttributes::Role::Meta::Class;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
 
 # ABSTRACT: metaclass role for storing code attributes
 
@@ -80,8 +80,11 @@
 sub get_nearest_methods_with_attributes {
     my ($self) = @_;
     
-    grep { 
-        scalar @{ $self->find_method_by_name($_->name)->attributes }
+    map {
+        my $m = $self->find_method_by_name($_->name);
+        my $meth = $m->can('attributes');
+        my $attrs = $meth ? $m->$meth() : [];
+        scalar @{ $attrs } ? ( $m ) : ( );
     } $self->get_all_methods_with_attributes;
 }
 
@@ -95,7 +98,7 @@
 
 =head1 VERSION
 
-version 0.07
+version 0.08
 
 =head1 METHODS
 
@@ -137,14 +140,19 @@
 
     sub foo : Attr {}
 
+    sub bar : Attr {}
+
     package SubClass;
     use base qw/BaseClass/;
 
     sub foo {}
 
+    after bar => sub {}
+
 C<< SubClass->meta->get_all_methods_with_attributes >> will return 
 C<< BaseClass->meta->get_method('foo') >> for the above example, but
-this method will not.
+this method will not, and will return the wrapped bar method, wheras
+C<< get_all_methods_with_attributes >> will return the original method.
 
 =head1 AUTHORS
 

Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method.pm?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method.pm Sun Apr 26 08:36:12 2009
@@ -1,5 +1,5 @@
 package MooseX::MethodAttributes::Role::Meta::Method;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
 
 # ABSTRACT: metamethod role allowing code attribute introspection
 
@@ -34,7 +34,7 @@
 
 =head1 VERSION
 
-version 0.07
+version 0.08
 
 =head1 ATTRIBUTES
 

Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/MaybeWrapped.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/MaybeWrapped.pm?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/MaybeWrapped.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/MaybeWrapped.pm Sun Apr 26 08:36:12 2009
@@ -1,5 +1,5 @@
 package MooseX::MethodAttributes::Role::Meta::Method::MaybeWrapped;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
 
 # ABSTRACT: proxy attributes of wrapped methods if their metaclass supports it
 
@@ -26,7 +26,7 @@
 
 =head1 VERSION
 
-version 0.07
+version 0.08
 
 =head1 AUTHORS
 

Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/Wrapped.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/Wrapped.pm?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/Wrapped.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/Wrapped.pm Sun Apr 26 08:36:12 2009
@@ -1,5 +1,5 @@
 package MooseX::MethodAttributes::Role::Meta::Method::Wrapped;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
 
 # ABSTRACT: wrapped metamethod role allowing code attribute introspection
 
@@ -27,7 +27,7 @@
 
 =head1 VERSION
 
-version 0.07
+version 0.08
 
 =head1 METHODS
 

Modified: trunk/libmoosex-methodattributes-perl/t/lib/BaseClass.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/lib/BaseClass.pm?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/BaseClass.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/BaseClass.pm Sun Apr 26 08:36:12 2009
@@ -2,12 +2,12 @@
 use warnings;
 
 package BaseClass::Meta::Role;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
 
 use Moose::Role;
 
 package BaseClass;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
 
 
 use Moose;

Modified: trunk/libmoosex-methodattributes-perl/t/lib/OtherSubClass.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/lib/OtherSubClass.pm?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/OtherSubClass.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/OtherSubClass.pm Sun Apr 26 08:36:12 2009
@@ -2,7 +2,7 @@
 use warnings;
 
 package OtherSubClass;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
 
 use base qw/BaseClass/;
 

Modified: trunk/libmoosex-methodattributes-perl/t/lib/SubClass.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/lib/SubClass.pm?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/SubClass.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/SubClass.pm Sun Apr 26 08:36:12 2009
@@ -2,7 +2,7 @@
 use warnings;
 
 package SubClass;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
 
 
 use Moose;

Modified: trunk/libmoosex-methodattributes-perl/t/lib/SubClassUseBaseAndUseMoose.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/lib/SubClassUseBaseAndUseMoose.pm?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/SubClassUseBaseAndUseMoose.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/SubClassUseBaseAndUseMoose.pm Sun Apr 26 08:36:12 2009
@@ -2,7 +2,7 @@
 use warnings;
 
 package SubClassUseBaseAndUseMoose;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
 
 
 use base qw/BaseClass/;

Modified: trunk/libmoosex-methodattributes-perl/t/lib/SubSubClass.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/lib/SubSubClass.pm?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/SubSubClass.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/SubSubClass.pm Sun Apr 26 08:36:12 2009
@@ -2,7 +2,7 @@
 use warnings;
 
 package SubSubClass;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
 
 
 use base qw/OtherSubClass/;

Modified: trunk/libmoosex-methodattributes-perl/t/lib/TestClass.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/lib/TestClass.pm?rev=34154&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/TestClass.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/TestClass.pm Sun Apr 26 08:36:12 2009
@@ -1,5 +1,5 @@
 package TestClass;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
 
 
 use Moose;
@@ -12,7 +12,7 @@
 after foo => sub {};
 
 package SubClass;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
 
 
 use Moose;




More information about the Pkg-perl-cvs-commits mailing list