Fix pod spelling nit
[gitmo/Moose.git] / lib / Moose / Manual / Delta.pod
index 0dc8c6b..72e21ab 100644 (file)
@@ -16,11 +16,44 @@ 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 Version 0.89_02
+=head1 0.93
 
 =over 4
 
-=over
+=item Calling $object->new() is no longer deprecated
+
+We decided to undeprecate this. Now it just works.
+
+=back
+
+=head1 0.90
+
+=over 4
+
+=item Added Native delegation for Code refs
+
+See L<Moose::Meta::Attribute::Native::Trait::Code> for details.
+
+=item Calling $object->new() is deprecated
+
+Moose has long supported this, but it's never really been documented, and we
+don't think this is a good practice. If you want to construct an object from
+an existing object, you should provide some sort of alternate constructor like
+C<< $object->clone >>.
+
+Calling C<< $object->new >> now issues a warning, and will be an error in a
+future release.
+
+=item Moose no longer warns if you call C<make_immutable> for a class with mutable ancestors
+
+While in theory this is a good thing to warn about, we found so many
+exceptions to this that doing this properly became quite problematic.
+
+=back
+
+=head1 Version 0.89_02
+
+=over 4
 
 =item New Native delegation methods from L<List::Util> and L<List::MoreUtils>
 
@@ -40,20 +73,22 @@ 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).
 
-=item Added Native delegation for Code refs
+=item C<enum> and C<duck_type> now take arrayrefs for all forms
 
-See L<Moose::Meta::Attribute::Native::Trait::Code> for details.
+Previously, calling these functions with a list would take the first element of
+the list as the type constraint name, and use the remainder as the enum values
+or method names. This makes the interface inconsistent with the anon-type forms
+of these functions (which must take an arrayref), and a free-form list where
+the first value is sometimes special is hard to validate (and harder to give
+reasonable error messages for). These functions have been changed to take
+arrayrefs in all their forms - so, C<< enum 'My::Type' => [qw(foo bar)] >> is
+now the preferred way to create an enum type constraint. The old syntax still
+works for now, but it will hopefully be deprecated and removed in a future
+release.
 
 =back
 
-
 =head1 Version 0.89_01
 
 L<Moose::Meta::Attribute::Native> has been moved into the Moose core from