nuke Sub::Uplevel
[gitmo/MooseX-Types.git] / lib / MooseX / Types.pm
index 18e1134..c93591f 100644 (file)
@@ -9,7 +9,6 @@ MooseX::Types - Organise your Moose types in libraries
 #use warnings;
 #use strict;
 
-use Sub::Uplevel;
 use Moose::Util::TypeConstraints;
 use MooseX::Types::Base             ();
 use MooseX::Types::Util             qw( filter_tags );
@@ -20,7 +19,7 @@ use Moose;
 
 use namespace::clean -except => [qw( meta )];
 
-our $VERSION = 0.04;
+our $VERSION = 0.05;
 
 my $UndefMsg = q{Action for type '%s' not yet defined in library '%s'};
 
@@ -29,7 +28,6 @@ my $UndefMsg = q{Action for type '%s' not yet defined in library '%s'};
 =head2 Library Definition
 
   package MyLibrary;
-  use strict;
 
   # predeclare our own types
   use MooseX::Types 
@@ -149,6 +147,9 @@ export a L</to_$type> coercion helper for it.
 Note that you currently cannot define types containing C<::>, since 
 exporting would be a problem.
 
+You also don't need to use C<warnings> and C<strict>, since the
+definition of a library automatically exports those.
+
 =head1 LIBRARY USAGE
 
 You can import the L<"type helpers"|/"TYPE HANDLER FUNCTIONS"> of a
@@ -253,6 +254,10 @@ sub import {
     my ($class, %args) = @_;
     my  $callee = caller;
 
+    # everyone should want this
+    strict->import;
+    warnings->import;
+
     # inject base class into new library
     {   no strict 'refs';
         unshift @{ $callee . '::ISA' }, 'MooseX::Types::Base';