use namespace::clean in Class::MOP:: classes
Yuval Kogman [Thu, 17 Sep 2009 21:06:59 +0000 (00:06 +0300)]
16 files changed:
Makefile.PL
lib/Class/MOP/Attribute.pm
lib/Class/MOP/Class.pm
lib/Class/MOP/Deprecated.pm
lib/Class/MOP/Instance.pm
lib/Class/MOP/Method.pm
lib/Class/MOP/Method/Accessor.pm
lib/Class/MOP/Method/Constructor.pm
lib/Class/MOP/Method/Generated.pm
lib/Class/MOP/Method/Inlined.pm
lib/Class/MOP/Method/Wrapped.pm
lib/Class/MOP/Module.pm
lib/Class/MOP/Object.pm
lib/Class/MOP/Package.pm
lib/metaclass.pm
t/005_attributes.t

index 7edc92e..56da3ca 100644 (file)
@@ -19,9 +19,10 @@ if ( -d '.git' || $ENV{MAINTAINER_MODE} ) {
 
 requires 'Carp';
 requires 'Devel::GlobalDestruction';
-requires 'MRO::Compat'  => '0.05';
-requires 'Scalar::Util' => '1.18';
-requires 'Sub::Name'    => '0.04';
+requires 'MRO::Compat'      => '0.05';
+requires 'Scalar::Util'     => '1.18';
+requires 'Sub::Name'        => '0.04';
+requires 'namespace::clean' => '0.11';
 requires 'Task::Weaken';
 
 test_requires 'File::Spec';
index 6b26e95..b9e66dc 100644 (file)
@@ -9,6 +9,8 @@ use Class::MOP::Method::Accessor;
 use Carp         'confess';
 use Scalar::Util 'blessed', 'weaken';
 
+use namespace::clean;
+
 our $VERSION   = '0.93';
 $VERSION = eval $VERSION;
 our $AUTHORITY = 'cpan:STEVAN';
index 7d7561a..9fd58db 100644 (file)
@@ -14,6 +14,8 @@ use Scalar::Util 'blessed', 'reftype', 'weaken';
 use Sub::Name    'subname';
 use Devel::GlobalDestruction 'in_global_destruction';
 
+use namespace::clean;
+
 our $VERSION   = '0.93';
 $VERSION = eval $VERSION;
 our $AUTHORITY = 'cpan:STEVAN';
index ed0f81b..bce8902 100644 (file)
@@ -6,6 +6,12 @@ use warnings;
 use Carp qw( cluck );
 use Scalar::Util qw( blessed );
 
+use namespace::clean;
+
+# force loading of everything to prevent namespace::clean in the patched
+# packages from deleting our symbols
+use Class::MOP;
+
 our $VERSION = '0.93';
 $VERSION = eval $VERSION;
 our $AUTHORITY = 'cpan:STEVAN';
@@ -125,7 +131,7 @@ sub get_method_map {
     my $map = $self->_full_method_map;
 
     $map->{$_} = $self->get_method($_)
-        for grep { !blessed( $map->{$_} ) } keys %{$map};
+        for grep { !Scalar::Util::blessed( $map->{$_} ) } keys %{$map};
 
     return $map;
 }
index 1482554..19fdd5f 100644 (file)
@@ -6,6 +6,8 @@ use warnings;
 
 use Scalar::Util 'weaken', 'blessed';
 
+use namespace::clean;
+
 our $VERSION   = '0.93';
 $VERSION = eval $VERSION;
 our $AUTHORITY = 'cpan:STEVAN';
index ee4b12b..7bd9b7a 100644 (file)
@@ -7,6 +7,8 @@ use warnings;
 use Carp         'confess';
 use Scalar::Util 'weaken', 'reftype', 'blessed';
 
+use namespace::clean;
+
 our $VERSION   = '0.93';
 $VERSION = eval $VERSION;
 our $AUTHORITY = 'cpan:STEVAN';
index 5380f67..db1a160 100644 (file)
@@ -7,6 +7,8 @@ use warnings;
 use Carp         'confess';
 use Scalar::Util 'blessed', 'weaken';
 
+use namespace::clean;
+
 our $VERSION   = '0.93';
 $VERSION = eval $VERSION;
 our $AUTHORITY = 'cpan:STEVAN';
index 23d4f41..faa7d42 100644 (file)
@@ -7,6 +7,8 @@ use warnings;
 use Carp         'confess';
 use Scalar::Util 'blessed', 'weaken', 'looks_like_number';
 
+use namespace::clean;
+
 our $VERSION   = '0.93';
 $VERSION = eval $VERSION;
 our $AUTHORITY = 'cpan:STEVAN';
index d80f704..0e84716 100644 (file)
@@ -6,6 +6,8 @@ use warnings;
 
 use Carp 'confess';
 
+use namespace::clean;
+
 our $VERSION   = '0.93';
 $VERSION = eval $VERSION;
 our $AUTHORITY = 'cpan:STEVAN';
index 9fa9335..5d9cbdf 100644 (file)
@@ -6,6 +6,8 @@ use warnings;
 use Carp         'confess';
 use Scalar::Util 'blessed', 'weaken', 'looks_like_number', 'refaddr';
 
+use namespace::clean;
+
 our $VERSION   = '0.93';
 $VERSION = eval $VERSION;
 our $AUTHORITY = 'cpan:STEVAN';
index e9b1d16..99bd934 100644 (file)
@@ -7,6 +7,9 @@ use warnings;
 use Carp         'confess';
 use Scalar::Util 'blessed';
 
+use namespace::clean;
+
+
 our $VERSION   = '0.93';
 $VERSION = eval $VERSION;
 our $AUTHORITY = 'cpan:STEVAN';
index 5e0c116..955ab1b 100644 (file)
@@ -7,6 +7,8 @@ use warnings;
 use Carp         'confess';
 use Scalar::Util 'blessed';
 
+use namespace::clean;
+
 our $VERSION   = '0.93';
 $VERSION = eval $VERSION;
 our $AUTHORITY = 'cpan:STEVAN';
index 00e8a8f..515d7b1 100644 (file)
@@ -6,6 +6,8 @@ use warnings;
 
 use Scalar::Util 'blessed';
 
+use namespace::clean;
+
 our $VERSION   = '0.93';
 $VERSION = eval $VERSION;
 our $AUTHORITY = 'cpan:STEVAN';
index 441f8c9..2705bd8 100644 (file)
@@ -8,6 +8,8 @@ use Scalar::Util 'blessed', 'reftype';
 use Carp         'confess';
 use Sub::Name    'subname';
 
+use namespace::clean;
+
 our $VERSION   = '0.93';
 $VERSION = eval $VERSION;
 our $AUTHORITY = 'cpan:STEVAN';
index fba0874..c1e836d 100644 (file)
@@ -7,6 +7,8 @@ use warnings;
 use Carp         'confess';
 use Scalar::Util 'blessed';
 
+use namespace::clean;
+
 our $VERSION   = '0.93';
 $VERSION = eval $VERSION;
 our $AUTHORITY = 'cpan:STEVAN';
index b7a545b..b738e89 100644 (file)
@@ -190,6 +190,8 @@ is($BAZ_ATTR->name, '$baz', '... got the attributes name correctly');
     use metaclass;
     use Scalar::Util qw/blessed/;
 
+    use namespace::clean -except => "meta";
+
     my $meta = Buzz->meta;
     ::lives_ok {
         $meta->add_attribute($FOO_ATTR_2);