Pod fixes and move mention of Native Code to Next version
[gitmo/Moose.git] / lib / Moose / Manual / Delta.pod
index fd01b66..6c12b9c 100644 (file)
@@ -16,12 +16,53 @@ feature.  If you encounter a problem and have a solution but don't see
 it documented here, or think we missed an important feature, please
 send us a patch.
 
+=head1 Next
+
+=over 4
+
+=item Added Native delegation for Code refs
+
+See L<Moose::Meta::Attribute::Native::Trait::Code> for details.
+
+=back
+
+=head1 Version 0.89_02
+
+=over 4
+
+=item New Native delegation methods from L<List::Util> and L<List::MoreUtils>
+
+In particular, we now have C<reduce>, C<shuffle>, C<uniq>, and C<natatime>.
+
+=item The Moose::Exporter with_caller feature is now deprecated
+
+Use C<with_meta> instead. The C<with_caller> option will start warning in a
+future release.
+
+=item Moose now warns if you call C<make_immutable> for a class with mutable ancestors
+
+This is dangerous because modifying a class after a subclass has been
+immutabilized will lead to incorrect results in the subclass, due to inlining,
+caching, etc. This occasionally happens accidentally, when a class loads one
+of its subclasses in the middle of its class definition, so pointing out that
+this may cause issues should be helpful. Metaclasses (classes that inherit
+from L<Class::MOP::Object>) are currently exempt from this check, since at the
+moment we aren't very consistent about which metaclasses we immutabilize.
+Anonymous classes are also exempt, since they are often created automatically,
+and the user is never given a choice about whether or not to make them
+immutable. If you're sure you know what you're doing, you also can pass the
+C<allow_mutable_ancestors> option to make_immutable to silence the warning
+(but be aware that modifying those mutable ancestors can still lead to
+incorrect behavior in your subclass).
+
+=back
+
 =head1 Version 0.89_01
 
 L<Moose::Meta::Attribute::Native> has been moved into the Moose core from
 L<MooseX::AttributeHelpers>.  Major changes include:
 
-=over
+=over 4
 
 =item C<traits>, not C<metaclass>
 
@@ -62,9 +103,13 @@ Helpers that take a coderef of two or more arguments remain using the argument
 list (there are technical limitations to using C<$a> and C<$b> like C<sort>
 does).
 
+See L<Moose::Meta::Attribute::Native> for the new documentation.
+
 =back
 
-See L<Moose::Meta::Attribute::Native> for the new documentation.
+The C<alias> and C<excludes> role parameters have been renamed to C<-alias>
+and C<-excludes>. The old names still work, but new code should use the new
+names, and eventually the old ones will be deprecated and removed.
 
 =head1 Version 0.89
 
@@ -80,10 +125,6 @@ a wrapper around the old
 
 way of doing this.
 
-The C<alias> and C<excludes> role parameters have been renamed to C<-alias>
-and C<-excludes>. The old names still work, but new code should use the new
-names, and eventually the old ones will be deprecated and removed.
-
 =head1 Version 0.84
 
 When an attribute generates I<no> accessors, we now warn. This is to help