r44305 - 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/
jawnsy-guest at users.alioth.debian.org
jawnsy-guest at users.alioth.debian.org
Sat Sep 19 15:05:51 UTC 2009
Author: jawnsy-guest
Date: Sat Sep 19 15:05:43 2009
New Revision: 44305
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=44305
Log:
* New upstream release
+ MooseX::Role::Parameterized can now be used in combination with roles
that contain method attributes
+ Fix to avoid deprecation warning from Class::MOP
* Standards-Version 3.8.3 (no changes)
* Drop version dependency on libmoosex-types-perl
* Update to short debhelper rules format
Added:
trunk/libmoosex-methodattributes-perl/t/param_role.t
- copied unchanged from r44303, branches/upstream/libmoosex-methodattributes-perl/current/t/param_role.t
trunk/libmoosex-methodattributes-perl/t/release-pod-coverage.t
- copied unchanged from r44303, branches/upstream/libmoosex-methodattributes-perl/current/t/release-pod-coverage.t
trunk/libmoosex-methodattributes-perl/t/release-pod-syntax.t
- copied unchanged from r44303, branches/upstream/libmoosex-methodattributes-perl/current/t/release-pod-syntax.t
Modified:
trunk/libmoosex-methodattributes-perl/Changes
trunk/libmoosex-methodattributes-perl/LICENSE
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/TODO
trunk/libmoosex-methodattributes-perl/debian/changelog
trunk/libmoosex-methodattributes-perl/debian/control
trunk/libmoosex-methodattributes-perl/debian/rules
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/Map.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/lib/MooseX/MethodAttributes/Role/Meta/Role.pm
trunk/libmoosex-methodattributes-perl/t/lib/BaseClass.pm
trunk/libmoosex-methodattributes-perl/t/lib/ClassUsingRoleWithAttributes.pm
trunk/libmoosex-methodattributes-perl/t/lib/OtherRoleWithAttributes.pm
trunk/libmoosex-methodattributes-perl/t/lib/OtherSubClass.pm
trunk/libmoosex-methodattributes-perl/t/lib/RoleWithAttributes.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
trunk/libmoosex-methodattributes-perl/t/lib/UsesMultipleRoles.pm
trunk/libmoosex-methodattributes-perl/t/role_with_anon_class.t
Modified: trunk/libmoosex-methodattributes-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/Changes?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/Changes (original)
+++ trunk/libmoosex-methodattributes-perl/Changes Sat Sep 19 15:05:43 2009
@@ -1,3 +1,9 @@
+0.16 Tue, 15 Sep 2009 07:58:14 +0200
+ * Fix so that MooseX::Role::Parameterized can be used in combination with roles
+ containing method attributes + testcase from phaylon (RT#48758)
+ * Fixes to avoid a deprecation warning from the latest Class::MOP (Dave
+ Rolsky)
+
0.15 Sun, Jul 26 18:02:05 2009 +0100
* Fix test which was failing in some cases and additional test cases.
Modified: trunk/libmoosex-methodattributes-perl/LICENSE
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/LICENSE?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/LICENSE (original)
+++ trunk/libmoosex-methodattributes-perl/LICENSE Sat Sep 19 15:05:43 2009
@@ -1,9 +1,9 @@
This software is copyright (c) 2009 by Florian Ragwitz.
This is free software; you can redistribute it and/or modify it under
-the same terms as perl itself.
-
-Terms of Perl itself
+the same terms as the Perl 5 programming language system itself.
+
+Terms of the Perl programming language system itself
a) the GNU General Public License as published by the Free
Software Foundation; either version 1, or (at your option) any
Modified: trunk/libmoosex-methodattributes-perl/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/MANIFEST?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/MANIFEST (original)
+++ trunk/libmoosex-methodattributes-perl/MANIFEST Sat Sep 19 15:05:43 2009
@@ -37,6 +37,9 @@
t/multiple_roles.t
t/multiple_roles2.t
t/override_method_with_no_attribute.t
+t/param_role.t
+t/release-pod-coverage.t
+t/release-pod-syntax.t
t/role.t
t/role_applied.t
t/role_in_role.t
Modified: trunk/libmoosex-methodattributes-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/META.yml?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/META.yml (original)
+++ trunk/libmoosex-methodattributes-perl/META.yml Sat Sep 19 15:05:43 2009
@@ -3,7 +3,7 @@
author:
- 'Florian Ragwitz <rafl at debian.org>'
- 'Tomas Doran <bobtfish at bobtfish.net>'
-generated_by: 'Dist::Zilla::Plugin::MetaYAML version 1.091440'
+generated_by: 'Dist::Zilla::Plugin::MetaYAML version 1.092450'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -16,4 +16,4 @@
Test::Exception: 0
Test::More: 0
namespace::clean: 0
-version: 0.15
+version: 0.16
Modified: trunk/libmoosex-methodattributes-perl/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/Makefile.PL?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/Makefile.PL (original)
+++ trunk/libmoosex-methodattributes-perl/Makefile.PL Sat Sep 19 15:05:43 2009
@@ -9,9 +9,9 @@
NAME => 'MooseX::MethodAttributes',
AUTHOR => 'Florian\ Ragwitz\ \<rafl\@debian\.org\>\,\ Tomas\ Doran\ \<bobtfish\@bobtfish\.net\>',
ABSTRACT => 'code\ attribute\ introspection',
- VERSION => '0.15',
+ VERSION => '0.16',
EXE_FILES => [ qw() ],
- (eval { ExtUtils::MakeMaker->VERSION(6.21) } ? (LICENSE => 'perl') : ()),
+ (eval { ExtUtils::MakeMaker->VERSION(6.31) } ? (LICENSE => 'perl') : ()),
PREREQ_PM => {
"namespace::clean" => '0',
"Test::More" => '0',
Modified: trunk/libmoosex-methodattributes-perl/README
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/README?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/README (original)
+++ trunk/libmoosex-methodattributes-perl/README Sat Sep 19 15:05:43 2009
@@ -1,12 +1,12 @@
This archive contains the distribution MooseX-MethodAttributes, version
-0.15:
+0.16:
code attribute introspection
This software is copyright (c) 2009 by Florian Ragwitz.
This is free software; you can redistribute it and/or modify it under
-the same terms as perl itself.
+the same terms as the Perl 5 programming language system itself.
Modified: trunk/libmoosex-methodattributes-perl/TODO
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/TODO?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/TODO (original)
+++ trunk/libmoosex-methodattributes-perl/TODO Sat Sep 19 15:05:43 2009
@@ -1,5 +1,3 @@
* Test overriding methods from roles with no attribute in otherwise
non MX::MethodAttributes using code.
- * Test methods with attributes in a role which is composed onto another
- role, which is then composed onto a class.
Modified: trunk/libmoosex-methodattributes-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/debian/changelog?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/debian/changelog (original)
+++ trunk/libmoosex-methodattributes-perl/debian/changelog Sat Sep 19 15:05:43 2009
@@ -1,4 +1,13 @@
-libmoosex-methodattributes-perl (0.15-2) UNRELEASED; urgency=low
+libmoosex-methodattributes-perl (0.16-1) UNRELEASED; urgency=low
+
+ [ Jonathan Yu ]
+ * New upstream release
+ + MooseX::Role::Parameterized can now be used in combination with roles
+ that contain method attributes
+ + Fix to avoid deprecation warning from Class::MOP
+ * Standards-Version 3.8.3 (no changes)
+ * Drop version dependency on libmoosex-types-perl
+ * Update to short debhelper rules format
[ Salvatore Bonaccorso ]
* debian/control: Changed: Replace versioned (build-)dependency on
@@ -8,7 +17,7 @@
[ Ryan Niebur ]
* Update jawnsy's email address
- -- Ryan Niebur <ryanryan52 at gmail.com> Tue, 01 Sep 2009 21:19:18 -0700
+ -- Jonathan Yu <jawnsy at cpan.org> Sat, 19 Sep 2009 07:02:00 -0400
libmoosex-methodattributes-perl (0.15-1) unstable; urgency=low
Modified: trunk/libmoosex-methodattributes-perl/debian/control
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/debian/control?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/debian/control (original)
+++ trunk/libmoosex-methodattributes-perl/debian/control Sat Sep 19 15:05:43 2009
@@ -2,20 +2,20 @@
Section: perl
Priority: optional
Build-Depends: debhelper (>= 7)
-Build-Depends-Indep: perl, libmoosex-types-perl (>= 0.06),
- libmoose-perl (>= 0.79), libnamespace-clean-perl
+Build-Depends-Indep: perl, libmoosex-types-perl, libmoose-perl (>= 0.79),
+ libnamespace-clean-perl
Maintainer: Debian Perl Group <pkg-perl-maintainers at lists.alioth.debian.org>
Uploaders: Krzysztof Krzyżaniak (eloy) <eloy at debian.org>,
Ansgar Burchardt <ansgar at 43-1.org>, Brian Cassidy <brian.cassidy at gmail.com>,
Ryan Niebur <ryanryan52 at gmail.com>, Jonathan Yu <jawnsy at cpan.org>
-Standards-Version: 3.8.2
+Standards-Version: 3.8.3
Homepage: http://search.cpan.org/dist/MooseX-MethodAttributes/
Vcs-Svn: svn://svn.debian.org/pkg-perl/trunk/libmoosex-methodattributes-perl/
Vcs-Browser: http://svn.debian.org/viewsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/
Package: libmoosex-methodattributes-perl
Architecture: all
-Depends: ${misc:Depends}, ${perl:Depends}, libmoosex-types-perl (>= 0.06),
+Depends: ${misc:Depends}, ${perl:Depends}, libmoosex-types-perl,
libmoose-perl (>= 0.79), libnamespace-clean-perl
Description: Perl module for code attribute introspection
MooseX::MethodAttributes allows code attributes of methods to be introspected
Modified: trunk/libmoosex-methodattributes-perl/debian/rules
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/debian/rules?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/debian/rules (original)
+++ trunk/libmoosex-methodattributes-perl/debian/rules Sat Sep 19 15:05:43 2009
@@ -1,23 +1,4 @@
#!/usr/bin/make -f
-build: build-stamp
-build-stamp:
- dh build
- touch $@
-
-clean:
+%:
dh $@
-
-install: install-stamp
-install-stamp: build-stamp
- dh install
- touch $@
-
-binary-arch:
-
-binary-indep: install
- dh $@
-
-binary: binary-arch binary-indep
-
-.PHONY: binary binary-arch binary-indep install clean build
Modified: trunk/libmoosex-methodattributes-perl/dist.ini
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/dist.ini?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/dist.ini (original)
+++ trunk/libmoosex-methodattributes-perl/dist.ini Sat Sep 19 15:05:43 2009
@@ -1,5 +1,5 @@
name = MooseX-MethodAttributes
-version = 0.15
+version = 0.16
author = Florian Ragwitz <rafl at debian.org>
author = Tomas Doran <bobtfish at bobtfish.net>
license = Perl_5
@@ -18,4 +18,4 @@
remove = PodVersion
remove = BumpVersion
-[PodWeaver]
+[PodPurler]
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=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes.pm Sat Sep 19 15:05:43 2009
@@ -2,13 +2,14 @@
use warnings;
package MooseX::MethodAttributes;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
# ABSTRACT: code attribute introspection
use Moose ();
use Moose::Exporter;
use Moose::Util::MetaRole;
+use Moose::Util qw/find_meta does_role/;
# Ensure trait is registered
use MooseX::MethodAttributes::Role::Meta::Role ();
@@ -17,30 +18,47 @@
sub init_meta {
my ($class, %options) = @_;
- my $meta = Moose->init_meta(%options);
- Moose::Util::MetaRole::apply_metaclass_roles(
- for_class => $options{for_class},
+
+ my $for_class = $options{for_class};
+ my $meta = find_meta($for_class);
+
+ return $meta if $meta
+ && does_role($meta, 'MooseX::MethodAttributes::Role::Meta::Class')
+ && does_role($meta->method_metaclass, 'MooseX::MethodAttributes::Role::Meta::Method')
+ && does_role($meta->wrapped_method_metaclass, 'MooseX::MethodAttributes::Role::Meta::Method::MaybeWrapped');
+
+ $meta = Moose::Meta::Class->initialize( $for_class )
+ unless $meta;
+
+ $meta = Moose::Util::MetaRole::apply_metaclass_roles(
+ for_class => $for_class,
metaclass_roles => ['MooseX::MethodAttributes::Role::Meta::Class'],
method_metaclass_roles => ['MooseX::MethodAttributes::Role::Meta::Method'],
wrapped_method_metaclass_roles => ['MooseX::MethodAttributes::Role::Meta::Method::MaybeWrapped'],
);
- Moose::Util::MetaRole::apply_base_class_roles(
- for_class => $options{for_class},
+
+ $for_class = $meta->name;
+ Moose::Util::MetaRole::apply_base_class_roles(
+ for_class => $for_class,
roles => ['MooseX::MethodAttributes::Role::AttrContainer'],
);
+
return $meta;
}
1;
__END__
+
+=pod
+
=head1 NAME
MooseX::MethodAttributes - code attribute introspection
=head1 VERSION
-version 0.15
+version 0.16
=head1 SYNOPSIS
@@ -58,15 +76,13 @@
This module allows code attributes of methods to be introspected using Moose
meta method objects.
-=pod
-
=begin Pod::Coverage
init_meta
=end Pod::Coverage
-=cut
+
=head1 AUTHORS
@@ -78,5 +94,8 @@
This software is copyright (c) 2009 by Florian Ragwitz.
This is free software; you can redistribute it and/or modify it under
-the same terms as perl itself.
+the same terms as the Perl 5 programming language system itself.
+=cut
+
+
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=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Inheritable.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Inheritable.pm Sat Sep 19 15:05:43 2009
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Inheritable;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
# ABSTRACT: inheritable code attribute introspection
@@ -17,13 +17,16 @@
__END__
+
+=pod
+
=head1 NAME
MooseX::MethodAttributes::Inheritable - inheritable code attribute introspection
=head1 VERSION
-version 0.15
+version 0.16
=head1 SYNOPSIS
@@ -43,6 +46,8 @@
inheriting from other classes using it don't need to do anything special to get
their code attributes captured.
+
+
=head1 AUTHORS
Florian Ragwitz <rafl at debian.org>
@@ -53,5 +58,8 @@
This software is copyright (c) 2009 by Florian Ragwitz.
This is free software; you can redistribute it and/or modify it under
-the same terms as perl itself.
+the same terms as the Perl 5 programming language system itself.
+=cut
+
+
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=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer.pm Sat Sep 19 15:05:43 2009
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::AttrContainer;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
# ABSTRACT: capture code attributes in the class' metaclass
@@ -18,13 +18,16 @@
1;
__END__
+
+=pod
+
=head1 NAME
MooseX::MethodAttributes::Role::AttrContainer - capture code attributes in the class' metaclass
=head1 VERSION
-version 0.15
+version 0.16
=head1 METHODS
@@ -33,6 +36,8 @@
Accepts a list of attributes for a coderef and stores it the class' metaclass.
See L<attributes>.
+
+
=head1 AUTHORS
@@ -44,5 +49,8 @@
This software is copyright (c) 2009 by Florian Ragwitz.
This is free software; you can redistribute it and/or modify it under
-the same terms as perl itself.
+the same terms as the Perl 5 programming language system itself.
+=cut
+
+
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=44305&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 Sat Sep 19 15:05:43 2009
@@ -1,13 +1,11 @@
package MooseX::MethodAttributes::Role::AttrContainer::Inheritable;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
# ABSTRACT: capture code attributes in the automatically initialized metaclass instance
use Moose::Role;
-use Moose::Meta::Class ();
-use Moose::Util::MetaRole;
-use Moose::Util qw/find_meta does_role/;
+use MooseX::MethodAttributes ();
use namespace::clean -except => 'meta';
@@ -16,40 +14,31 @@
before MODIFY_CODE_ATTRIBUTES => sub {
my ($class, $code, @attrs) = @_;
return unless @attrs;
- my $meta = find_meta($class);
-
- return if $meta
- && does_role($meta, 'MooseX::MethodAttributes::Role::Meta::Class')
- && does_role($meta->method_metaclass, 'MooseX::MethodAttributes::Role::Meta::Method')
- && does_role($meta->wrapped_method_metaclass, 'MooseX::MethodAttributes::Role::Meta::Method::MaybeWrapped');
-
- Moose::Meta::Class->initialize( $class )
- unless $meta;
- Moose::Util::MetaRole::apply_metaclass_roles(
- for_class => $class,
- metaclass_roles => ['MooseX::MethodAttributes::Role::Meta::Class'],
- method_metaclass_roles => ['MooseX::MethodAttributes::Role::Meta::Method'],
- wrapped_method_metaclass_roles => ['MooseX::MethodAttributes::Role::Meta::Method::MaybeWrapped'],
- );
+ MooseX::MethodAttributes->init_meta( for_class => $class );
};
1;
__END__
+
+=pod
+
=head1 NAME
MooseX::MethodAttributes::Role::AttrContainer::Inheritable - capture code attributes in the automatically initialized metaclass instance
=head1 VERSION
-version 0.15
+version 0.16
=head1 DESCRIPTION
This role extends C<MooseX::MethodAttributes::Role::AttrContainer> with the
functionality of automatically initializing a metaclass for the caller and
applying the meta roles relevant for capturing method attributes.
+
+
=head1 AUTHORS
@@ -61,5 +50,8 @@
This software is copyright (c) 2009 by Florian Ragwitz.
This is free software; you can redistribute it and/or modify it under
-the same terms as perl itself.
+the same terms as the Perl 5 programming language system itself.
+=cut
+
+
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=44305&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 Sat Sep 19 15:05:43 2009
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Class;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
# ABSTRACT: metaclass role for storing code attributes
@@ -15,7 +15,7 @@
sub get_method_with_attributes_list {
my ($self) = @_;
- my @methods = values %{ $self->get_method_map };
+ my @methods = map { $self->get_method($_) } $self->get_method_list;
my %order;
{
@@ -70,22 +70,10 @@
my $orig = shift;
my $meta = shift;
my ($method_name) = @_;
-
- unless(
- does_role($meta, 'MooseX::MethodAttributes::Role::Meta::Class')
- && does_role($meta->method_metaclass, 'MooseX::MethodAttributes::Role::Meta::Method')
- && does_role($meta->wrapped_method_metaclass, 'MooseX::MethodAttributes::Role::Meta::Method::MaybeWrapped')
- ) {
-
- Moose::Util::MetaRole::apply_metaclass_roles(
- for_class => $meta->name,
- metaclass_roles => ['MooseX::MethodAttributes::Role::Meta::Class'],
- method_metaclass_roles => ['MooseX::MethodAttributes::Role::Meta::Method'],
- wrapped_method_metaclass_roles => ['MooseX::MethodAttributes::Role::Meta::Method::MaybeWrapped'],
- );
- # Get replaced metaclass..
- $meta = find_meta($meta->name);
- }
+
+ # Ensure the correct metaclass
+ $meta = MooseX::MethodAttributes->init_meta( for_class => $meta->name );
+
my $code = $meta->$orig(@_);
my $method = $meta->get_method($method_name);
if (
@@ -102,13 +90,16 @@
__END__
+
+=pod
+
=head1 NAME
MooseX::MethodAttributes::Role::Meta::Class - metaclass role for storing code attributes
=head1 VERSION
-version 0.15
+version 0.16
=head1 METHODS
@@ -152,6 +143,8 @@
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
Florian Ragwitz <rafl at debian.org>
@@ -162,5 +155,8 @@
This software is copyright (c) 2009 by Florian Ragwitz.
This is free software; you can redistribute it and/or modify it under
-the same terms as perl itself.
+the same terms as the Perl 5 programming language system itself.
+=cut
+
+
Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Map.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Map.pm?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Map.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Map.pm Sat Sep 19 15:05:43 2009
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Map;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
# ABSTRACT: role for storing code attributes
@@ -40,13 +40,16 @@
__END__
+
+=pod
+
=head1 NAME
MooseX::MethodAttributes::Role::Meta::Map - role for storing code attributes
=head1 VERSION
-version 0.15
+version 0.16
=head1 METHODS
@@ -60,6 +63,8 @@
Get a list of attributes associated with a coderef.
+
+
=head1 AUTHORS
Florian Ragwitz <rafl at debian.org>
@@ -70,5 +75,8 @@
This software is copyright (c) 2009 by Florian Ragwitz.
This is free software; you can redistribute it and/or modify it under
-the same terms as perl itself.
+the same terms as the Perl 5 programming language system itself.
+=cut
+
+
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=44305&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 Sat Sep 19 15:05:43 2009
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Method;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
# ABSTRACT: metamethod role allowing code attribute introspection
@@ -28,13 +28,16 @@
1;
__END__
+
+=pod
+
=head1 NAME
MooseX::MethodAttributes::Role::Meta::Method - metamethod role allowing code attribute introspection
=head1 VERSION
-version 0.15
+version 0.16
=head1 ATTRIBUTES
@@ -51,6 +54,8 @@
Builds the value of the C<attributes> attribute based on the attributes
captured in the associated meta class.
+
+
=head1 AUTHORS
Florian Ragwitz <rafl at debian.org>
@@ -61,5 +66,8 @@
This software is copyright (c) 2009 by Florian Ragwitz.
This is free software; you can redistribute it and/or modify it under
-the same terms as perl itself.
+the same terms as the Perl 5 programming language system itself.
+=cut
+
+
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=44305&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 Sat Sep 19 15:05:43 2009
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Method::MaybeWrapped;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
# ABSTRACT: proxy attributes of wrapped methods if their metaclass supports it
@@ -24,13 +24,16 @@
1;
__END__
+
+=pod
+
=head1 NAME
MooseX::MethodAttributes::Role::Meta::Method::MaybeWrapped - proxy attributes of wrapped methods if their metaclass supports it
=head1 VERSION
-version 0.15
+version 0.16
=head1 AUTHORS
@@ -42,5 +45,8 @@
This software is copyright (c) 2009 by Florian Ragwitz.
This is free software; you can redistribute it and/or modify it under
-the same terms as perl itself.
+the same terms as the Perl 5 programming language system itself.
+=cut
+
+
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=44305&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 Sat Sep 19 15:05:43 2009
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Method::Wrapped;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
# ABSTRACT: wrapped metamethod role allowing code attribute introspection
@@ -21,19 +21,24 @@
1;
__END__
+
+=pod
+
=head1 NAME
MooseX::MethodAttributes::Role::Meta::Method::Wrapped - wrapped metamethod role allowing code attribute introspection
=head1 VERSION
-version 0.15
+version 0.16
=head1 METHODS
=head2 attributes
Gets the list of code attributes of the original method this meta method wraps.
+
+
=head1 AUTHORS
@@ -45,5 +50,8 @@
This software is copyright (c) 2009 by Florian Ragwitz.
This is free software; you can redistribute it and/or modify it under
-the same terms as perl itself.
+the same terms as the Perl 5 programming language system itself.
+=cut
+
+
Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Role.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Role.pm?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Role.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Role.pm Sat Sep 19 15:05:43 2009
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Role;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
# ABSTRACT: metarole role for storing code attributes
@@ -91,7 +91,7 @@
$thing = find_meta($thing->name);
}
- my $ret = $self->$orig($thing);
+ my $ret = $self->$orig($thing, %opts);
push @{ $thing->_method_attribute_list }, @{ $self->_method_attribute_list };
@{ $thing->_method_attribute_map }{ (keys(%{ $self->_method_attribute_map }), keys(%{ $thing->_method_attribute_map })) }
@@ -109,13 +109,16 @@
__END__
+
+=pod
+
=head1 NAME
MooseX::MethodAttributes::Role::Meta::Role - metarole role for storing code attributes
=head1 VERSION
-version 0.15
+version 0.16
=head1 SYNOPSIS
@@ -138,18 +141,6 @@
These attributes can then be found later once the methods are composed
into a class.
-=head1 AUTHORS
-
- Florian Ragwitz <rafl at debian.org>
- Tomas Doran <bobtfish at bobtfish.net>
-
-=head1 COPYRIGHT AND LICENSE
-
-This software is copyright (c) 2009 by Florian Ragwitz.
-
-This is free software; you can redistribute it and/or modify it under
-the same terms as perl itself.
-
=head1 CAVEATS
=over
@@ -166,5 +157,22 @@
to work as expected, therefore conflict resolution cannot be taken advantage
of.
-=back
+=back
+
+
+=head1 AUTHORS
+
+ Florian Ragwitz <rafl at debian.org>
+ Tomas Doran <bobtfish at bobtfish.net>
+
+=head1 COPYRIGHT AND LICENSE
+
+This software is copyright (c) 2009 by Florian Ragwitz.
+
+This is free software; you can redistribute it and/or modify it under
+the same terms as the Perl 5 programming language system itself.
+
+=cut
+
+
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=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/BaseClass.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/BaseClass.pm Sat Sep 19 15:05:43 2009
@@ -2,12 +2,12 @@
use warnings;
package BaseClass::Meta::Role;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
use Moose::Role;
package BaseClass;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
use Moose;
Modified: trunk/libmoosex-methodattributes-perl/t/lib/ClassUsingRoleWithAttributes.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/lib/ClassUsingRoleWithAttributes.pm?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/ClassUsingRoleWithAttributes.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/ClassUsingRoleWithAttributes.pm Sat Sep 19 15:05:43 2009
@@ -1,5 +1,5 @@
package ClassUsingRoleWithAttributes;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
use Moose;
# FIXME - This should not have to be here.
Modified: trunk/libmoosex-methodattributes-perl/t/lib/OtherRoleWithAttributes.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/lib/OtherRoleWithAttributes.pm?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/OtherRoleWithAttributes.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/OtherRoleWithAttributes.pm Sat Sep 19 15:05:43 2009
@@ -1,5 +1,5 @@
package OtherRoleWithAttributes;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
use Moose::Role -traits => 'MethodAttributes';
use namespace::clean -except => 'meta';
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=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/OtherSubClass.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/OtherSubClass.pm Sat Sep 19 15:05:43 2009
@@ -2,7 +2,7 @@
use warnings;
package OtherSubClass;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
use base qw/BaseClass/;
Modified: trunk/libmoosex-methodattributes-perl/t/lib/RoleWithAttributes.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/lib/RoleWithAttributes.pm?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/RoleWithAttributes.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/RoleWithAttributes.pm Sat Sep 19 15:05:43 2009
@@ -1,5 +1,5 @@
package RoleWithAttributes;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
use Moose::Role -traits => 'MethodAttributes';
use namespace::clean -except => 'meta';
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=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/SubClass.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/SubClass.pm Sat Sep 19 15:05:43 2009
@@ -2,7 +2,7 @@
use warnings;
package SubClass;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
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=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/SubClassUseBaseAndUseMoose.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/SubClassUseBaseAndUseMoose.pm Sat Sep 19 15:05:43 2009
@@ -2,7 +2,7 @@
use warnings;
package SubClassUseBaseAndUseMoose;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
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=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/SubSubClass.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/SubSubClass.pm Sat Sep 19 15:05:43 2009
@@ -2,7 +2,7 @@
use warnings;
package SubSubClass;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
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=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/TestClass.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/TestClass.pm Sat Sep 19 15:05:43 2009
@@ -1,5 +1,5 @@
package TestClass;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
use Moose;
@@ -12,7 +12,7 @@
after foo => sub {};
package SubClass;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
use Moose;
Modified: trunk/libmoosex-methodattributes-perl/t/lib/UsesMultipleRoles.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/lib/UsesMultipleRoles.pm?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/UsesMultipleRoles.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/UsesMultipleRoles.pm Sat Sep 19 15:05:43 2009
@@ -1,5 +1,5 @@
package UsesMultipleRoles;
-our $VERSION = '0.15';
+our $VERSION = '0.16';
use Moose;
use namespace::clean -except => 'meta';
Modified: trunk/libmoosex-methodattributes-perl/t/role_with_anon_class.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/role_with_anon_class.t?rev=44305&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/role_with_anon_class.t (original)
+++ trunk/libmoosex-methodattributes-perl/t/role_with_anon_class.t Sat Sep 19 15:05:43 2009
@@ -5,6 +5,7 @@
use MooseX::MethodAttributes ();
use Test::More tests => 9;
use MRO::Compat;
+use Data::Dumper;
{
package My::Role;
@@ -36,8 +37,8 @@
isa_ok $classname->new, 'My::SuperClass';
isa_ok $classname->new, 'Moose::Object';
my @mro = @{ mro::get_linear_isa($classname) };
-is $mro[1], 'My::SuperClass';
-is $mro[2], 'Moose::Object';
+is $mro[1], 'My::SuperClass' or warn Dumper(\@mro);
+is $mro[2], 'Moose::Object' or warn Dumper(\@mro);
ok $classname->can('foo');
ok $classname->can('new');
ok $classname->can('bar');
More information about the Pkg-perl-cvs-commits
mailing list