Revision history for Perl extension Class-MOP.
-0.04
- - some documentation suggestions from #perl6
+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