X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=Changes;h=2c661b344803122fc7a935b05c04fbeb1a75eda6;hb=373a16aed9249f13e466532ef9a840b92a61f173;hp=e77a86819e1d034a5f2773135d929aed8719f2ae;hpb=2f6d5412dbdef036fe72a0ec7093ff9bff79b188;p=gitmo%2FClass-MOP.git diff --git a/Changes b/Changes index e77a868..2c661b3 100644 --- a/Changes +++ b/Changes @@ -1,6 +1,135 @@ Revision history for Perl extension Class-MOP. -0.21 +0.30 Wed. July 5, 2006 + --------------------------------------- + This is the first version of Class::MOP + to introduce the immutable features which + will be used for optimizating the MOP. + This support should still be considered + experimental, but moving towards stability. + --------------------------------------- + + * Created Class::MOP::Class::Immutable + + * Created the Class::MOP::Package and + Class::MOP::Module classes to more + closely conform to Perl 6's meta-model + + * Class::MOP::Class + - now inherits from Class::MOP::Module + - several methods moved to ::Module and + ::Package and now inherited + - added tests for this + + * Class::MOP::Instance + - added an is_inlinable method to allow other + classes to check before they attempt to optimize. + - added an inline_create_instance to inline + instance creation (of course) + + ** API CHANGE ** + - the Class::MOP::Class::*_package_variable + methods are all now methods of Class::MOP::Package + and called *_package_symbol instead. This is + because they are now more general purpose symbol + table manipulation methods. + +0.29_02 Thurs. June 22, 2006 + ++ DEVELOPER RELEASE ++ + * Class::MOP::Class + - small change in &create so that it behaves + properly when inherited + - small fix to &clone_instance + +0.29_01 Fri. May 12, 2006 + ++ DEVELOPER RELEASE ++ + - This release works in combination with + Moose 0.09_01, it is a developer release + because it introduces a new instance + sub-protocol and has not yet been + optimized. + + * Class::MOP::Class + - anon-classes are now properly garbage collected + - added tests for this + - improved method modifier wrapping + + * Class::MOP::Instance + - added new instance protocol + - added tests for this + - changed all relevant modules and examples + - Class::MOP::Class + - Class::MOP::Attribute + - examples/* + + * metaclass + - you no longer need to specify the metaclass + itself, if it is not there, Class::MOP::Class + is just assumed + - updated tests for this + + * examples/ + - added ArrayBasedStorage example to show + instance storage using ARRAY refs instead of + HASH refs. + - added tests for this + - InsideOutClass is totally revised using the + new instance protocol + - added more tests for this + +0.26 Mon. April 24, 2006 + * Class::MOP::Class + - added find_attribute_by_name method + - added tests and docs for this + - some small optimizations + + * Class::MOP::Attribute + - some small optimizations + +0.25 Thurs. April 20, 2006 + * Class::MOP::Class + - added create_anon_class for creating anonymous classes + - added tests for this + - added get_all_metaclasses, get_all_metaclass_names + and get_all_metaclass_instances method to allow + access to all the cached metaclass objects. + - attribute slot initialization is now the responsibility + of the attribute itself, and construct_instance now + delegates appropriately + + * Class::MOP::Attribute + - attribute slot initialization is now the responsibility + of the attribute itself, so we added a method for it + called initialize_instance_slot + + * examples/ + - adjusted all the examples to use the new attribute + initialize_instance_slot method + +0.24 Tues. April 11, 2006 + * Class::MOP::Class + - cleaned up how the before/after/around method + modifiers get named with Sub::Name + +0.23 Thurs. March 30, 2006 + * Class::MOP::Class + - fixed the way attribute defaults are handled + during instance construction (bug found by chansen) + + * Class::MOP::Attribute + - read-only accessors ('reader') will now die if + passed more than one argument (attempting to write + to them basically) + - added tests for this + - adjusted all /example files to comply + +0.22 Mon. March 20, 2006 + * Class::MOP::Class + - localized $@ in the *_package_variable functions + because otherwise, it does ugly things in Moose. + - added test case for this + +0.21 Wed. March 15, 2006 * Class::MOP::Class - fixed issue where metaclasses are reaped from our cache in global destruction, and so are not @@ -22,7 +151,7 @@ Revision history for Perl extension Class-MOP. - added tests and docs for this feature * Class::MOP::Class - - improved &get_package_variable + - improved &get_package_symbol - &version and &superclasses now use it - methods are now blessed into Class::MOP::Method whenever possible