X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=Changes;h=8d5e5a810fad6612d634b27a8a2f1cb94a73f8d3;hb=cdfaa4cca87ac5ce7c5ede548cbf92e665ca2277;hp=d7acd8e4f2302363629a356030fb448075565b89;hpb=94b190693902e4be4f4f180065ce25b982829630;p=gitmo%2FClass-MOP.git diff --git a/Changes b/Changes index d7acd8e..8d5e5a8 100644 --- a/Changes +++ b/Changes @@ -1 +1,262 @@ -Changes for Class::MOP \ No newline at end of file +Revision history for Perl extension Class-MOP. + +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 + available in DESTORY calls + +0.20 Thurs. March 2, 2006 + - removed the dependency for Clone since + we no longer to deep-cloning by default. + + * Class::MOP::Method + - added &package_name, &name and + &fully_qualified_name methods, some of + which were formerly private subs in + Class::MOP::Class + + * Class::MOP::Method::Wrapped + - allows for a method to be wrapped with + before, after and around modifiers + - added tests and docs for this feature + + * Class::MOP::Class + - improved &get_package_variable + - &version and &superclasses now use it + - methods are now blessed into Class::MOP::Method + whenever possible + - added methods to install CLOS-style method modifiers + - &add_before_method_modifier + - &add_after_method_modifier + - &add_around_method_modifier + - added tests and docs for these + - added &find_next_method_by_name which finds the + equivalent of SUPER::method_name + +0.12 Thurs. Feb 23, 2006 + - reduced the dependency on B, no need to always + have the latest + + * examples/ + - added docs to the C3 method dispatch order test + - fixed missing Algorithm::C3 dependency by making + the test skip if it is not installed + +0.11 Mon Feb. 20, 2006 + * examples/ + - added example of changing method dispatch order to C3 + + * Class::MOP::Class + - changed how clone_instance behaves, it now only does a + shallow clone (see docs for more details) + - added docs and tests + +0.10 Tues Feb. 14, 2006 + ** This release was mostly about writing more tests and + cleaning out old and dusty code, the MOP should now + be considered "ready to use". + + - adding more tests to get coverage up a little higher, + mostly testing errors and edge cases. + - test coverage is now at 99% + + * Class::MOP + - no longer optionally exports to UNIVERSAL::meta or + creates a custom metaclass generator, use the + metaclass pragma instead. + + * Class::MOP::Class + - fixed a number of minor issues which came up in the + error/edge-case tests + + * Class::MOP::Attribute + - fixed a number of minor issues which came up in the + error/edge-case tests + + * examples/ + - fixing the AttributesWithHistory example, it was broken. + +0.06 Thurs Feb. 9, 2006 + * metaclass + - adding new metaclass pragma to make setting up the + metaclass a little more straightforward + + * Class::MOP + - clean up bootstrapping to include more complete + attribute definitions for Class::MOP::Class and + Class::MOP::Attribute (accessors, readers, writers, + etc.) ... it is redundant, but is useful meta-info + to have around. + + * Class::MOP::Class + - fixing minor meta-circularity issue with &meta, it + is now more useful for subclasses + - added &get_attribute_map as an accessor for the + hash of attribute meta objects + - &compute_all_applicable_attributes now just returns + the attribute meta-object, rather than the HASH ref + since all the same info can be gotten from the + attribute meta-object itself + - updated docs & tests to reflect + - added &clone_instance method which does a deep clone + of the instance structure created by &construct_instance + - added docs & tests for this + - added Clone as a dependency + - added &new_object and &clone_object convience methods to + return blessed new or cloned instances + - they handle Class::MOP::Class singletons correctly too + - added docs & tests for this + - cleaned up the &constuct_class_instance so that it behaves + more like &construct_instance (and managed the singletons too) + - added the &check_metaclass_compatibility method to make sure + that metaclasses are upward and downward compatible. + - added tests and docs for this + + * examples/ + - adjusting code to use the &Class::MOP::Class::meta + fix detailed above + - adjusting code to use the metaclass pragma + +0.05 Sat Feb. 4, 2006 + * Class::MOP::Class + - added the &attribute_metaclass and &method_metaclass + attributes which contain a metaclass name to use for + attributes/methods respectively + + * Class::MOP + - bootstrap additional attributes for Class::MOP::Class + + * examples/ + - adjusted the example code and tests to use the new + &attribute_metaclass feature of Class::MOP::Class + - added new example: + - LazyClass + +0.04 Fri Feb. 3, 2006 + * Class::MOP::Class + - some documentation suggestions from #perl6 + + * Class::MOP::Attribute + - improved error messages + + * examples/ + - added new examples: + - AttributesWithHistory + - ClassEncapsultedAttributes + +0.03 Fri Feb. 3, 2006 + - converted to Module::Build instead of EU::MM + + * Class::MOP::Attribute + - refactored method generation code + - attributes are now associated with class directly + + * examples/ + - refactored the InsideOut example to take advantage + of the Class::MOP::Attribute refactoring + - changed example files to .pod files and hide thier + package names from PAUSE (I don't want to own these + namespaces really, they are just examples) + +0.02 Thurs Feb. 2, 2006 + - moving examples from t/lib/* to examples/* + - adding POD documentation to the examples + +0.01 Thurs Feb. 2, 2006 + - Initial release \ No newline at end of file