This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Update experimental to CPAN version 0.011
authorChris 'BinGOs' Williams <chris@bingosnet.co.uk>
Mon, 29 Sep 2014 11:09:38 +0000 (12:09 +0100)
committerChris 'BinGOs' Williams <chris@bingosnet.co.uk>
Mon, 29 Sep 2014 11:09:38 +0000 (12:09 +0100)
  [DELTA]

0.011     2014-09-27 14:08:47+02:00 Europe/Amsterdam
          Clarified which order to apply pragmas [Grant McLean]

Porting/Maintainers.pl
cpan/experimental/lib/experimental.pm

index efc45a6..500484d 100755 (executable)
@@ -413,7 +413,7 @@ use File::Glob qw(:case);
     },
 
     'experimental' => {
-        'DISTRIBUTION' => 'LEONT/experimental-0.010.tar.gz',
+        'DISTRIBUTION' => 'LEONT/experimental-0.011.tar.gz',
         'FILES'        => q[cpan/experimental],
         'EXCLUDED'     => [
           qr{^t/release-.*\.t},
index 10a6a10..b91ac7d 100644 (file)
@@ -1,5 +1,5 @@
 package experimental;
-$experimental::VERSION = '0.010';
+$experimental::VERSION = '0.011';
 use strict;
 use warnings;
 use version ();
@@ -112,7 +112,7 @@ experimental - Experimental features made easy
 
 =head1 VERSION
 
-version 0.010
+version 0.011
 
 =head1 SYNOPSIS
 
@@ -153,6 +153,26 @@ The supported features, documented further below, are:
        smartmatch    - allow the use of ~~
        switch        - allow the use of ~~, given, and when
 
+=head2 Ordering matters
+
+Using this pragma to 'enable an experimental feature' is another way of saying
+that this pragma will disable the warnings which would result from using that
+feature.  Therefore, the order in which pragmas are applied is important.  In
+particular, you probably want to enable experimental features I<after> you
+enable warnings:
+
+  use warnings;
+  use experimental 'smartmatch';
+
+You also need to take care with modules that enable warnings for you.  A common
+example being Moose.  In this example, warnings for the 'smartmatch' feature are
+first turned on by the warnings pragma, off by the experimental pragma and back
+on again by the Moose module (fix is to switch the last two lines):
+
+  use warnings;
+  use experimental 'smartmatch';
+  use Moose;
+
 =head2 Disclaimer
 
 Because of the nature of the features it enables, forward compatibility can not