Yes! Many sites with household names are using Moose to build
high-traffic services. Countless others are using Moose in production.
-See L<http://www.iinteractive.com/moose/about.html#organizations> for
+See L<http://moose.iinteractive.com/about.html#organizations> for
a partial list.
As of this writing, Moose is a dependency of several hundred CPAN
-modules. L<http://cpants.perl.org/dist/used_by/Moose>
+modules. L<https://metacpan.org/requires/module/Moose>
=head3 Is Moose's API stable?
pairs or a hash reference. You can override it to take positional
args, or any other format
-To change the handling of individual parameters, there are
-I<coercions> (See the L<Moose::Cookbook::Basics::Recipe5> for a
-complete example and explanation of coercions). With coercions it is
-possible to morph argument values into the correct expected
-types. This approach is the most flexible and robust, but does have a
-slightly higher learning curve.
+To change the handling of individual parameters, there are I<coercions> (See
+the L<Moose::Cookbook::Basics::HTTP_SubtypesAndCoercion> for a complete
+example and explanation of coercions). With coercions it is possible to morph
+argument values into the correct expected types. This approach is the most
+flexible and robust, but does have a slightly higher learning curve.
=head3 How do I make non-Moose constructors work with Moose?
route.
That said, if you really need to inherit from a non-Moose class, see
-L<Moose::Cookbook::Basics::Recipe11> for an example of how to do it,
+L<Moose::Cookbook::Basics::DateTime_ExtendingNonMooseParent> for an example of how to do it,
or take a look at L<Moose::Manual::MooseX/"MooseX::NonMoose">.
=head2 Accessors
other classes which are built with Moose. You can still save on typing
by defining a new C<MyApp::Moose> that exports Moose's sugar and then
turns on L<MooseX::FollowPBP>. See
-L<Moose::Cookbook::Extending::Recipe4>.
+L<Moose::Cookbook::Extending::Mooseish_MooseSugar>.
=head3 How can I inflate/deflate values in accessors?
in the C<via> block.
For a more comprehensive example of using coercions, see the
-L<Moose::Cookbook::Basics::Recipe5>.
+L<Moose::Cookbook::Basics::HTTP_SubtypesAndCoercion>.
If you need to deflate your attribute's value, the current best
practice is to add an C<around> modifier to your accessor:
=head3 Can I turn off type constraint checking?
-Not yet. This option may come in a future release.
+There's no support for it in the core of Moose yet. This option may
+come in a future release.
+
+Meanwhile there's a L<MooseX
+extension|MooseX::Attribute::TypeConstraint::CustomizeFatal> that
+allows you to do this on a per-attribute basis, and if it doesn't do
+what you it's easy to write one that fits your use case.
=head3 My coercions stopped working with recent Moose, why did you break it?
=item *
Using a combination of lazy and default in your attributes to defer
-initialization (see the Binary Tree example in the cookbook for a good
-example of lazy/default usage L<Moose::Cookbook::Basics::Recipe3>)
+initialization (see the Binary Tree example in the cookbook for a good example
+of lazy/default usage
+L<Moose::Cookbook::Basics::BinaryTree_AttributeFeatures>)
=item *