summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFather Chrysostomos <sprout@cpan.org>2011-10-27 18:25:01 -0700
committerFather Chrysostomos <sprout@cpan.org>2011-10-27 18:25:01 -0700
commit6d9e773fa83b824dd302669a87212a81f22f941e (patch)
tree6b6eaa17a384143f748cc2097828afea071cfbfd
parente2c923fe9968fd09f5b04fac7e3550d0606aab7d (diff)
downloadperl-sprout/featurebundles.tar.gz
Document the implicit disabling of featuressprout/featurebundles
-rw-r--r--lib/feature.pm9
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/feature.pm b/lib/feature.pm
index caaa3cd968..e20285d595 100644
--- a/lib/feature.pm
+++ b/lib/feature.pm
@@ -132,18 +132,23 @@ It's possible to load a whole slew of features in one go, using
a I<feature bundle>. The name of a feature bundle is prefixed with
a colon, to distinguish it from an actual feature. At present, the
only feature bundles correspond to Perl releases, e.g. C<use feature
-":5.10"> which is equivalent to C<use feature qw(switch say state)>.
+":5.10"> which is equivalent to
+C<no feature; use feature qw(switch say state)>.
By convention, the feature bundle for any given Perl release includes
the features of previous releases, down to and including 5.10, the
first official release to provide this facility. Since Perl 5.12
only provides one new feature, C<unicode_strings>, and Perl 5.14
-provides none, C<use feature ":5.14"> is equivalent to C<use feature
+provides none, C<use feature ":5.14"> is
+equivalent to C<no feature; use feature
qw(switch say state unicode_strings)>.
Specifying sub-versions such as the C<0> in C<5.14.0> in feature bundles has
no effect: feature bundles are guaranteed to be the same for all sub-versions.
+The implicit C<no feature> was added in Perl 5.16. Previously, saying C<use
+feature ":5.10"> I<after> C<use feature ":5.12"> had no effect.
+
Note that instead of using release-based feature bundles it is usually
better, and shorter, to use implicit loading as described below.