X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=Changes;h=676e56c79581e8a54d1a44cf315e9ec8cce929fc;hb=3969267d0fc012967332aa36a2a013ca7c869a6b;hp=9ed102a05b56b6040c4bee9189f54d57e8c1d572;hpb=01a8e22110c10d12be132e272b52f8f2b2ba0a0c;p=gitmo%2FMoose.git diff --git a/Changes b/Changes index 9ed102a..676e56c 100644 --- a/Changes +++ b/Changes @@ -1,12 +1,323 @@ Revision history for Perl extension Moose -0.09_04 - ++ DEVELOPER RELEASE ++ + * Moose::Util::TypeConstraints + - fix for prototype undecl issue when type constraint utils loaded + before consumers (e.g. Moose::Meta::Attribute) by predeclaring + prototypes in TC utils + +0.22 + * Moose::Meta::Method::Accessor + - coerce and lazy now work together correctly, thanks to + merlyn for finding this bug + - tests added for this + - fix reader presedence bug in Moose::Meta::Attribute + tests + +0.21 Thursday, May 2nd, 2007 + * Moose + - added SUPER_SLOT and INNER_SLOT class hashes to support unimport + - modified unimport to remove super and inner along with the rest + - altered unimport tests to handle this + + * Moose::Role + - altered super export to populate SUPER_SLOT + + * Moose::Meta::Class + - altered augment and override modifier application to use *_SLOT + - modified tests for these to unimport one test class each to test + + * Moose::Meta::Role + - fixed issue where custom attribute metaclasses + where not handled correctly in roles + - added tests for this + + * Moose::Meta::Class + - fixed issue where extending metaclasses with + roles would blow up. Thanks to Aankhen`` for + finding this insidious error, and it's solution. + + ~~ lots of spelling and grammer fixes in the docs, + many many thanks to rlb3 and Aankhen for these :) + +0.20 Friday, April 6th, 2007 + >> I messed up the SKIP logic in one test + so this release is just to fix that. + + * Moose + - 'has' now also accepts an ARRAY ref + to create multiple attrs (see docs) + (thanks to konobi for this) + - added tests and docs + +0.19 Thurs. April 5th, 2007 + ~~ More documentation updates ~~ + + * Moose::Util::TypeConstraints + - 'type' now supports messages as well + thanks to phaylon for finding this + - added tests for this + - added &list_all_type_constraints and + &list_all_builtin_type_constraints + functions to facilitate introspection. + + * Moose::Meta::Attribute + - fixed regexp 'handles' declarations + to build the list of delegated methods + correctly (and not override important + things like &new) thanks to ashleyb + for finding this + - added tests and docs for this + - added the 'documentation' attributes + so that you can actually document your + attributes and inspect them through the + meta-object. + - added tests and docs for this + + * Moose::Meta::Class + - when loading custom attribute metaclasses + it will first look in for the class in the + Moose::Meta::Attribute::Custom::$name, and + then default to just loading $name. + - added tests and docs for this + + * Moose::Meta::TypeConstraint + - type constraints now stringify to their names. + - added test for this + + * misc. + - added tests to assure we work with Module::Refresh + - added stricter test skip logic in the Moose POOP + test, ask Rob Kinyon why. + - *cough* DBM::Deep 1.0 backwards compatability sucks *cough* ;) + +0.18 Sat. March 10, 2007 + ~~ Many, many documentation updates ~~ + + * misc. + - We now use Class::MOP::load_class to + load all classes. + - added tests to show types and subtypes + working with Declare::Constraints::Simple + and Test::Deep as constraint engines. + +0.18_001 + !! You must have Class::MOP 0.37_001 !! + !! for this developer release to work !! + + This release was primarily adding the immutable + feature to Moose. An immutable class is one which + you promise not to alter. When you set the class + as immutable it will perform various bits of + memoization and inline certain part of the code + (constructors, destructors and accessors). This + minimizes (and in some cases totally eliminates) + one of Moose's biggest performance hits. This + feature is not on by default, and is 100% optional. + It has several configurable bits as well, so you + can pick and choose to your specific needs. + + The changes involved in this were fairly wide and + highly specific, but 100% backwards compatible, so + I am not going to enumerate them here. If you are + truely interested in what was changed, please do + a diff :) + +0.17 Tues. Nov. 14, 2006 + * Moose::Meta::Method::Accessor + - bugfix for read-only accessors which + are have a type constraint and lazy. + Thanks to chansen for finding it. + +0.16 Tues. Nov. 14, 2006 + ++ NOTE ++ + There are some speed improvements in this release, + but they are only the begining, so stay tuned. + + * Moose::Object + - BUILDALL and DEMOLISHALL no longer get + called unless they actually need to be. + This gave us a signifigant speed boost + for the cases when there is no BUILD or + DEMOLISH method present. + + * Moose::Util::TypeConstraints + * Moose::Meta::TypeConstraint + - added an 'optimize_as' option to the + type constraint, which allows for a + hand optimized version of the type + constraint to be used when possible. + - Any internally created type constraints + now provide an optimized version as well. + +0.15 Sun. Nov. 5, 2006 + ++ NOTE ++ + This version of Moose *must* have Class::MOP 0.36 in order + to work correctly. A number of small internal tweaks have + been made in order to be compatible with that release. + + * Moose::Util::TypeConstraints + - added &unimport so that you can clean out + your class namespace of these exported + keywords + + * Moose::Meta::Class + - fixed minor issue which occasionally + comes up during global destruction + (thanks omega) + - moved Moose::Meta::Method::Overriden into + its own file. + + * Moose::Meta::Role + - moved Moose::Meta::Role::Method into + its own file. + + * Moose::Meta::Attribute + - changed how we do type checks so that + we reduce the overall cost, but still + retain correctness. + *** API CHANGE *** + - moved accessor generation methods to + Moose::Meta::Method::Accessor to + conform to the API changes from + Class::MOP 0.36 + + * Moose::Meta::TypeConstraint + - changed how constraints are compiled + so that we do less recursion and more + iteration. This makes the type check + faster :) + - moved Moose::Meta::TypeConstraint::Union + into its own file + + * Moose::Meta::Method::Accessor + - created this from methods formerly found in + Moose::Meta::Attribute + + * Moose::Meta::Role::Method + - moved this from Moose::Meta::Role + + * Moose::Meta::Method::Overriden + - moved this from Moose::Meta::Class + + * Moose::Meta::TypeConstraint::Union + - moved this from Moose::Meta::TypeConstraint + +0.14 Mon. Oct. 9, 2006 + + * Moose::Meta::Attribute + - fixed lazy attributes which were not getting + checked with the type constraint (thanks ashley) + - added tests for this + - removed the over-enthusiastic DWIMery of the + automatic ArrayRef and HashRef defaults, it + broke predicates in an ugly way. + - removed tests for this + +0.13 Sat. Sept. 30, 2006 + ++ NOTE ++ + This version of Moose *must* have Class::MOP 0.35 in order + to work correctly. A number of small internal tweaks have + been made in order to be compatible with that release. + + * Moose + - Removed the use of UNIVERSAL::require to be a better + symbol table citizen and remove a dependency + (thanks Adam Kennedy) + + **~~ removed experimental & undocumented feature ~~** + - commented out the 'method' and 'self' keywords, see the + comments for more info. + + * Moose::Cookbook + - added a FAQ and WTF files to document frequently + asked questions and common problems + + * Moose::Util::TypeConstraints + - added GlobRef and FileHandle type constraint + - added tests for this + + * Moose::Meta::Attribute + - if your attribute 'isa' ArrayRef of HashRef, and you have + not explicitly set a default, then make the default DWIM. + This will also work for subtypes of ArrayRef and HashRef + as well. + - you can now auto-deref subtypes of ArrayRef or HashRef too. + - new test added for this (thanks to ashley) + + * Moose::Meta::Role + - added basic support for runtime role composition + but this is still *highly experimental*, so feedback + is much appreciated :) + - added tests for this + + * Moose::Meta::TypeConstraint + - the type constraint now handles the coercion process + through delegation, this is to support the coercion + of unions + + * Moose::Meta::TypeConstraint::Union + - it is now possible for coercions to be performed + on a type union + - added tests for this (thanks to konobi) + + * Moose::Meta::TypeCoercion + - properly capturing error when type constraint + is not found + + * Build.PL + - Scalar::Util 1.18 is bad on Win32, so temporarily + only require version 1.17 for Win32 and cygwin. + (thanks Adam Kennedy) + +0.12 Sat. Sept. 1, 2006 + * Moose::Cookbook + - Recipe5 (subtypes & coercion) has been written + + * Moose + - fixed "bad meta" error message to be more descriptive + - fixed &unimport to not remove the &inner and &super + keywords because we need to localize them. + - fixed number of spelling/grammer issues, thanks Theory :) + + **~~ experimental & undocumented feature ~~** + - added the method and self keywords, they are basically + just sugar, and they may not stay around. + + * Moose::Object + - added &dump method to easily Data::Dumper + an object + + * Moose::Meta::TypeConstraint + - added the &is_a_type_of method to check both the current + and the subtype of a method (similar to &isa with classes) + + * Moose::Meta::Role + - this is now a subclass of Class::MOP::Module, and no longer + creates the _role_meta ugliness of before. + - fixed tests to reflect this change + +0.11 Wed. July 12, 2006 + * Moose + - added an &unimport method to remove all the keywords + that Moose will import, simply add 'no Moose' to the + bottom of your class file. + + * t/ + - fixed some test failures caused by a forgotten test + dependency. + +0.10 Thurs. July 6, 2006 * Moose - improved error message when loading modules so it is less confusing when you load a role. - -0.09_03 + - added &calculate_all_roles method to + Moose::Meta::Class and Moose::Meta::Role + + NOTE: + This module has been tested against Class::MOP 0.30 + but it does not yet utilize the optimizations + it makes available. Stay tuned for that ;) + +0.09_03 Fri. June 23, 2006 ++ DEVELOPER RELEASE ++ * Moose - 'use strict' and 'use warnings' are no longer @@ -315,4 +626,4 @@ Revision history for Perl extension Moose full fledges meta-objects 0.01 Wed. March 15, 2006 - - Moooooooooooooooooose!!! \ No newline at end of file + - Moooooooooooooooooose!!!