Revision history for Perl extension Moose
-0.37
+0.41 Mon. April 28, 2008
+ ~~ numerous documentation updates ~~
+
+ - Changed all usage of die to Carp::croak for better
+ error reporting (initial patch by Tod Hagan)
+
+ ** IMPORTANT NOTE **
+ - the make_immutable keyword is now deprecated, don't
+ use it in any new code and please fix your old code
+ as well. There will be 2 releases, and then it will
+ be removed.
+
+ * Moose
+ Moose::Role
+ Moose::Meta::Class
+ - refactored the way inner and super work to avoid
+ any method/@ISA cache penalty (nothingmuch)
+
+ * Moose::Meta::Class
+ - fixing &new_object to make sure trigger gets the
+ coerced value (spotted by Charles Alderman on the
+ mailing list)
+ - added test for this
+
+ * Moose::Meta::Method::Constructor
+ - immutable classes which had non-lazy attributes were calling
+ the default generating sub twice in the constructor. (bug
+ found by Jesse Luehrs, fixed by Dave Rolsky)
+ - added tests for this (Dave Rolsky)
+ - fix typo in initialize_body method (nothingmuch)
+
+ * Moose::Meta::Method::Destructor
+ - fix typo in initialize_body method (nothingmuch)
+
+ * Moose::Meta::Method::Overriden
+ Moose::Meta::Method::Augmented
+ - moved the logic for these into their own
+ classes (nothingmuch)
+
+ * Moose::Meta::Attribute
+ - inherited attributes may now be extended without
+ restriction on the type ('isa', 'does') (Sartak)
+ - added tests for this (Sartak)
+ - when an attribute property is malformed (such as lazy without
+ a default), give the name of the attribute in the error
+ message (Sartak)
+ - added the &applied_traits and &has_applied_traits methods
+ to allow introspection of traits
+ - added tests for this
+ - moved 'trait' and 'metaclass' argument handling to here from
+ Moose::Meta::Class
+ - clone_and_inherit_options now handles 'trait' and 'metaclass' (has
+ '+foo' syntax) (nothingmuch)
+ - added tests for this (t0m)
+
+ * Moose::Object
+ - localize $@ inside DEMOLISHALL to avoid it
+ eating $@ (found by Ernesto)
+ - added test for this (thanks to Ernesto)
+
+ * Moose::Util::TypeConstraints
+ - &find_type_constraint now DWIMs when given an
+ type constraint object or name (nothingmuch)
+ - &find_or_create_type_constraint superseded with a number of more
+ specific functions:
+ - find_or_create_{isa,does}_type_constraint
+ - find_or_parse_type_constraint
+
+ * Moose::Meta::TypeConstraint
+ Moose::Meta::TypeConstraint::Class
+ Moose::Meta::TypeConstraint::Role
+ Moose::Meta::TypeConstraint::Enum
+ Moose::Meta::TypeConstraint::Union
+ Moose::Meta::TypeConstraint::Parameterized
+ - added the &equals method for comparing two type
+ constraints (nothingmuch)
+ - added tests for this (nothingmuch)
+
+ * Moose::Meta::TypeConstraint
+ - add the &parents method, which is just an alias to &parent.
+ Useful for polymorphism with TC::{Class,Role,Union} (nothingmuch)
+
+ * Moose::Meta::TypeConstraint::Class
+ - added the class attribute for introspection purposes
+ (nothingmuch)
+ - added tests for this
+
+ * Moose::Meta::TypeConstraint::Enum
+ Moose::Meta::TypeConstraint::Role
+ - broke these out into their own classes (nothingmuch)
+
+ * Moose::Cookbook::Recipe*
+ - fixed references to test file locations in the POD
+ and updated up some text for new Moose features
+ (Sartak)
+
+ * Moose::Util
+ - Added &resolve_metaclass_alias, a helper function for finding an actual
+ class for a short name (e.g. in the traits list)
+
+0.40 Fri. March 14, 2008
+ - I hate Pod::Coverage
+
+0.39 Fri. March 14, 2008
+ * Moose
+ - documenting the use of '+name' with attributes
+ that come from recently composed roles. It makes
+ sense, people are using it, and so why not just
+ officially support it.
+ - fixing the 'extends' keyword so that it will not
+ trigger Ovid's bug (http://use.perl.org/~Ovid/journal/35763)
+
+ * oose
+ - added the perl -Moose=+Class::Name feature to allow
+ monkeypatching of classes in one liners
+
+ * Moose::Util
+ - fixing the 'apply_all_roles' keyword so that it will not
+ trigger Ovid's bug (http://use.perl.org/~Ovid/journal/35763)
+
+ * Moose::Meta::Class
+ - added ->create method which now supports roles (thanks to jrockway)
+ - added tests for this
+ - added ->create_anon_class which now supports roles and caching of
+ the results (thanks to jrockway)
+ - added tests for this
+ - made ->does_role a little more forgiving when it is
+ checking a Class::MOP era metaclasses.
+
+ * Moose::Meta::Role::Application::ToInstance
+ - it is now possible to pass extra params to be used when
+ a role is applied to an the instance (rebless_params)
+ - added tests for this
+
+ * Moose::Util::TypeConstraints
+ - class_type now accepts an optional second argument for a
+ custom message. POD anotated accordingly (groditi)
+ - added tests for this
+ - it is now possible to make anon-enums by passing 'enum' an
+ ARRAY ref instead of the $name => @values. Everything else
+ works as before.
+ - added tests for this
+
+ * t/
+ - making test for using '+name' on attributes consumed
+ from a role, it works and makes sense too.
+
+ * Moose::Meta::Attribute
+ - fix handles so that it doesn't return nothing
+ when the method cannot be found, not sure why
+ it ever did this originally, this means we now
+ have slightly better support for AUTOLOADed
+ objects
+ - added more delegation tests
+ - adding ->does method to this so as to better
+ support traits and their introspection.
+ - added tests for this
+
+ * Moose::Object
+ - localizing the Data::Dumper configurations so
+ that it does not pollute others (RT #33509)
+ - made ->does a little more forgiving when it is
+ passed Class::MOP era metaclasses.
+
+0.38 Fri. Feb. 15, 2008
+ * Moose::Meta::Attribute
+ - fixed initializer to correctly do
+ type checking and coercion in the
+ callback
+ - added tests for this
+
+ * t/
+ - fixed some finicky tests (thanks to konobi)
+
+0.37 Thurs. Feb. 14, 2008
* Moose
- fixed some details in Moose::init_meta
and its superclass handling (thanks thepler)
- 'has' now dies if you don't pass in name
value pairs
- added the 'make_immutable' keyword as a shortcut
- to __PACKAGE__->meta->make_immutable
+ to make_immutable
* Moose::Meta::Class
Moose::Meta::Method::Constructor
Moose::Meta::Attribute
- making (init_arg => undef) work here too
(thanks to nothingmuch)
+
+ * Moose::Meta::Attribute
+ Moose::Meta::Method::Constructor
+ Moose::Meta::Method::Accessor
- make lazy attributes respect attr initializers (rjbs)
+ - added tests for this
* Moose::Util::TypeConstraints
Moose::Util::TypeConstraints::OptimizedConstraints
+ Moose::Meta::TypeConstraints
Moose::Meta::Attribute
Moose::Meta::Method::Constructor
Moose::Meta::Method::Accessor
- making sure DESTROY gets inlined properly
with successive DEMOLISH calls (thanks to manito)
+ * Moose::Meta::Attribute
+ Moose::Meta::Method::Accessor
+ - fixed handling of undef with type constraints
+ (thanks to Ernesto)
+ - added tests for this
+
+ * Moose::Util
+ - added &get_all_init_args and &get_all_attribute_values
+ (thanks to Sartak and nothingmuch)
+
0.36 Sat. Jan. 26, 2008
* Moose::Role
Moose::Meta::Attribute