@@ -1,3 +1,8 @@
+0.20 Wed, 10 Feb 2010 00:46:11 +0000
+ * Remove horrible code and epic comment working around Moose bugs
+ with reinitializing anon classes now that the bug is fixed upstream
+ in Moose (commit cf600c83).
+
0.19 Sat, 09 Jan 2010 17:29:00 +0000
* Adapt to changes in in composition_class roles
in new Moose releases (>= 0.93_01)
@@ -3,17 +3,18 @@ abstract: 'code attribute introspection'
author:
- 'Florian Ragwitz <rafl@debian.org>'
- 'Tomas Doran <bobtfish@bobtfish.net>'
-generated_by: 'Dist::Zilla version 1.093400'
+generated_by: 'Dist::Zilla version 1.100160'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: 1.4
name: MooseX-MethodAttributes
requires:
- Moose: 0.90
+ ExtUtils::MakeMaker: 6.11
+ Moose: 0.97
MooseX::Types: 0.20
Test::Exception: 0
Test::More: 0.88
namespace::autoclean: 0
namespace::clean: 0.10
-version: 0.19
+version: 0.20
@@ -4,24 +4,37 @@ use warnings;
-use ExtUtils::MakeMaker;
-
-WriteMakefile(
- DISTNAME => 'MooseX-MethodAttributes',
- NAME => 'MooseX::MethodAttributes',
- AUTHOR => "Florian\ Ragwitz\ \<rafl\@debian\.org\>\,\ Tomas\ Doran\ \<bobtfish\@bobtfish\.net\>",
- ABSTRACT => "code\ attribute\ introspection",
- VERSION => '0.19',
- EXE_FILES => [ qw() ],
- (eval { ExtUtils::MakeMaker->VERSION(6.31) } ? (LICENSE => 'perl') : ()),
- PREREQ_PM => {
- "namespace::clean" => '0.10',
- "Test::More" => '0.88',
- "namespace::autoclean" => '0',
- "Test::Exception" => '0',
- "MooseX::Types" => '0.20',
- "Moose" => '0.90',
- },
- test => {TESTS => 't/*.t'}
-);
+use ExtUtils::MakeMaker 6.11;
+
+
+
+my %WriteMakefileArgs = (
+ 'test' => {
+ 'TESTS' => 't/*.t'
+ },
+ 'NAME' => 'MooseX::MethodAttributes',
+ 'DISTNAME' => 'MooseX-MethodAttributes',
+ 'AUTHOR' => 'Florian Ragwitz <rafl@debian.org>, Tomas Doran <bobtfish@bobtfish.net>',
+ 'ABSTRACT' => 'code attribute introspection',
+ 'EXE_FILES' => [],
+ 'VERSION' => '0.20',
+ 'LICENSE' => 'perl',
+ 'PREREQ_PM' => {
+ 'namespace::clean' => '0.10',
+ 'Test::More' => '0.88',
+ 'namespace::autoclean' => '0',
+ 'Test::Exception' => '0',
+ 'MooseX::Types' => '0.20',
+ 'ExtUtils::MakeMaker' => '6.11',
+ 'Moose' => '0.97'
+ }
+ );
+
+
+delete $WriteMakefileArgs{LICENSE}
+ unless eval { ExtUtils::MakeMaker->VERSION(6.31) };
+
+WriteMakefile(%WriteMakefileArgs);
+
+
@@ -1,7 +1,7 @@
This archive contains the distribution MooseX-MethodAttributes, version
-0.19:
+0.20:
code attribute introspection
@@ -1,12 +1,12 @@
name = MooseX-MethodAttributes
-version = 0.19
+version = 0.20
author = Florian Ragwitz <rafl@debian.org>
author = Tomas Doran <bobtfish@bobtfish.net>
license = Perl_5
copyright_holder = Florian Ragwitz
[Prereq]
-Moose = 0.90
+Moose = 0.97
namespace::clean = 0.10
namespace::autoclean = 0
MooseX::Types = 0.20
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Inheritable;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
# ABSTRACT: inheritable code attribute introspection
@@ -25,7 +25,7 @@ MooseX::MethodAttributes::Inheritable - inheritable code attribute introspection
=head1 VERSION
-version 0.19
+version 0.20
=head1 SYNOPSIS
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::AttrContainer::Inheritable;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
# ABSTRACT: capture code attributes in the automatically initialized metaclass instance
@@ -29,7 +29,7 @@ MooseX::MethodAttributes::Role::AttrContainer::Inheritable - capture code attrib
=head1 VERSION
-version 0.19
+version 0.20
=head1 DESCRIPTION
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::AttrContainer;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
# ABSTRACT: capture code attributes in the class' metaclass
use Moose::Role;
@@ -26,7 +26,7 @@ MooseX::MethodAttributes::Role::AttrContainer - capture code attributes in the c
=head1 VERSION
-version 0.19
+version 0.20
=head1 METHODS
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Class;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
# ABSTRACT: metaclass role for storing code attributes
use Moose::Role;
@@ -98,7 +98,7 @@ MooseX::MethodAttributes::Role::Meta::Class - metaclass role for storing code at
=head1 VERSION
-version 0.19
+version 0.20
=head1 METHODS
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Map;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
# ABSTRACT: generic role for storing code attributes used by classes and roles with attributes
use Moose::Role;
@@ -48,7 +48,7 @@ MooseX::MethodAttributes::Role::Meta::Map - generic role for storing code attrib
=head1 VERSION
-version 0.19
+version 0.20
=head1 METHODS
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Method::MaybeWrapped;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
# ABSTRACT: proxy attributes of wrapped methods if their metaclass supports it
use Moose::Role;
@@ -32,7 +32,7 @@ MooseX::MethodAttributes::Role::Meta::Method::MaybeWrapped - proxy attributes of
=head1 VERSION
-version 0.19
+version 0.20
=head1 AUTHORS
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Method::Wrapped;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
# ABSTRACT: wrapped metamethod role allowing code attribute introspection
use Moose::Role;
@@ -29,7 +29,7 @@ MooseX::MethodAttributes::Role::Meta::Method::Wrapped - wrapped metamethod role
=head1 VERSION
-version 0.19
+version 0.20
=head1 METHODS
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Method;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
# ABSTRACT: metamethod role allowing code attribute introspection
use Moose::Role;
@@ -36,7 +36,7 @@ MooseX::MethodAttributes::Role::Meta::Method - metamethod role allowing code att
=head1 VERSION
-version 0.19
+version 0.20
=head1 ATTRIBUTES
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Role::Application::Summation;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
# ABSTRACT: Role applied to the class responsible for role summation which ensures method attributes propagate from the roles being summed onto the combined role.
use Moose::Role;
@@ -28,7 +28,7 @@ MooseX::MethodAttributes::Role::Meta::Role::Application::Summation - Role applie
=head1 VERSION
-version 0.19
+version 0.20
=head1 AUTHORS
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Role::Application;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
# ABSTRACT: generic role for applying a role with method attributes to something
use Moose::Role;
@@ -41,25 +41,7 @@ sub _apply_metaclasses {
# into lies by the metatrait role application process, so we explicitly
# re-fetch it here.
- # Alternatively, for epic shits and giggles, the meta trait application
- # process (onto $thing) may have applied roles to our metaclass, but (if
- # $thing is an anon class, not correctly replaced it in the metaclass cache.
- # This results in the DESTROY method in Class::MOP::Class r(eap|ape)ing the
- # package, which is unfortunate, as it removes all your methods and superclasses.
- # Therefore, we avoid that by ramming the metaclass we've just been handed into
- # the cache without weakening it.
-
- # I'm fairly sure the 2nd part of that is a Moose bug, and should go away..
- # Unfortunately, the implication of that is that whenever you apply roles to a class,
- # the metaclass instance can change, and so needs to be re-retrieved or handed back
- # to the caller :/
- if ($thing->can('is_anon_class') and $thing->is_anon_class) {
- Class::MOP::store_metaclass_by_name($thing->name, $thing);
- }
- else {
- return find_meta($thing->name);
- }
- return $thing;
+ return find_meta($thing->name);
}
1;
@@ -74,7 +56,7 @@ MooseX::MethodAttributes::Role::Meta::Role::Application - generic role for apply
=head1 VERSION
-version 0.19
+version 0.20
=head1 METHODS
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Role;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
# ABSTRACT: metarole role for storing code attributes
use Moose ();
@@ -65,7 +65,7 @@ sub _copy_attributes {
# is now only present for backwards compatibility reasons.
package # Hide from PAUSE
Moose::Meta::Role::Custom::Trait::MethodAttributes;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
sub register_implementation { 'MooseX::MethodAttributes::Role::Meta::Role' }
@@ -82,7 +82,7 @@ MooseX::MethodAttributes::Role::Meta::Role - metarole role for storing code attr
=head1 VERSION
-version 0.19
+version 0.20
=head1 SYNOPSIS
@@ -2,7 +2,7 @@ use strict;
use warnings;
package MooseX::MethodAttributes::Role;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
# ABSTRACT: code attribute introspection
use Moose ();
@@ -51,7 +51,7 @@ MooseX::MethodAttributes::Role - code attribute introspection
=head1 VERSION
-version 0.19
+version 0.20
=head1 SYNOPSIS
@@ -2,7 +2,7 @@ use strict;
use warnings;
package MooseX::MethodAttributes;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
# ABSTRACT: code attribute introspection
use Moose ();
@@ -57,7 +57,7 @@ MooseX::MethodAttributes - code attribute introspection
=head1 VERSION
-version 0.19
+version 0.20
=head1 SYNOPSIS
@@ -2,11 +2,11 @@ use strict;
use warnings;
package BaseClass::Meta::Role;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
use Moose::Role;
package BaseClass;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
use Moose;
use Moose::Util::MetaRole;
@@ -1,5 +1,5 @@
package ClassUsingRoleWithAttributes;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
use Moose;
# FIXME - This should not have to be here.
use MooseX::MethodAttributes;
@@ -1,5 +1,5 @@
package OtherRoleWithAttributes;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
use MooseX::MethodAttributes::Role;
use namespace::clean -except => 'meta';
@@ -2,7 +2,7 @@ use strict;
use warnings;
package OtherSubClass;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
use base qw/BaseClass/;
# Must stay empty so that neither this class,
@@ -1,5 +1,5 @@
package RoleWithAttributes;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
use MooseX::MethodAttributes::Role;
use namespace::clean -except => 'meta';
@@ -2,7 +2,7 @@ use strict;
use warnings;
package SubClass;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
use Moose;
BEGIN { extends 'BaseClass'; }
@@ -2,7 +2,7 @@ use strict;
use warnings;
package SubClassUseBaseAndUseMoose;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
use base qw/BaseClass/;
@@ -2,7 +2,7 @@ use strict;
use warnings;
package SubSubClass;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
use base qw/OtherSubClass/;
@@ -1,5 +1,5 @@
package TestClass;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
use Moose;
use MooseX::MethodAttributes;
@@ -11,7 +11,7 @@ sub bar : SomeAttribute {}
after foo => sub {};
package SubClass;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
use Moose;
use MooseX::MethodAttributes;
@@ -1,5 +1,5 @@
package UsesMultipleRoles;
-our $VERSION = '0.19';
+our $VERSION = '0.20';
use Moose;
use namespace::clean -except => 'meta';