1 Revision history for Perl extension Class-MOP.
5 - added create_anon_class for creating anonymous classes
7 - added get_all_metaclasses, get_all_metaclass_names
8 and get_all_metaclass_instances method to allow
9 access to all the cached metaclass objects.
11 0.24 Tues. April 11, 2006
13 - cleaned up how the before/after/around method
14 modifiers get named with Sub::Name
16 0.23 Thurs. March 30, 2006
18 - fixed the way attribute defaults are handled
19 during instance construction (bug found by chansen)
21 * Class::MOP::Attribute
22 - read-only accessors ('reader') will now die if
23 passed more than one argument (attempting to write
25 - added tests for this
26 - adjusted all /example files to comply
28 0.22 Mon. March 20, 2006
30 - localized $@ in the *_package_variable functions
31 because otherwise, it does ugly things in Moose.
32 - added test case for this
34 0.21 Wed. March 15, 2006
36 - fixed issue where metaclasses are reaped from
37 our cache in global destruction, and so are not
38 available in DESTORY calls
40 0.20 Thurs. March 2, 2006
41 - removed the dependency for Clone since
42 we no longer to deep-cloning by default.
45 - added &package_name, &name and
46 &fully_qualified_name methods, some of
47 which were formerly private subs in
50 * Class::MOP::Method::Wrapped
51 - allows for a method to be wrapped with
52 before, after and around modifiers
53 - added tests and docs for this feature
56 - improved &get_package_variable
57 - &version and &superclasses now use it
58 - methods are now blessed into Class::MOP::Method
60 - added methods to install CLOS-style method modifiers
61 - &add_before_method_modifier
62 - &add_after_method_modifier
63 - &add_around_method_modifier
64 - added tests and docs for these
65 - added &find_next_method_by_name which finds the
66 equivalent of SUPER::method_name
68 0.12 Thurs. Feb 23, 2006
69 - reduced the dependency on B, no need to always
73 - added docs to the C3 method dispatch order test
74 - fixed missing Algorithm::C3 dependency by making
75 the test skip if it is not installed
77 0.11 Mon Feb. 20, 2006
79 - added example of changing method dispatch order to C3
82 - changed how clone_instance behaves, it now only does a
83 shallow clone (see docs for more details)
84 - added docs and tests
86 0.10 Tues Feb. 14, 2006
87 ** This release was mostly about writing more tests and
88 cleaning out old and dusty code, the MOP should now
89 be considered "ready to use".
91 - adding more tests to get coverage up a little higher,
92 mostly testing errors and edge cases.
93 - test coverage is now at 99%
96 - no longer optionally exports to UNIVERSAL::meta or
97 creates a custom metaclass generator, use the
98 metaclass pragma instead.
101 - fixed a number of minor issues which came up in the
102 error/edge-case tests
104 * Class::MOP::Attribute
105 - fixed a number of minor issues which came up in the
106 error/edge-case tests
109 - fixing the AttributesWithHistory example, it was broken.
111 0.06 Thurs Feb. 9, 2006
113 - adding new metaclass pragma to make setting up the
114 metaclass a little more straightforward
117 - clean up bootstrapping to include more complete
118 attribute definitions for Class::MOP::Class and
119 Class::MOP::Attribute (accessors, readers, writers,
120 etc.) ... it is redundant, but is useful meta-info
124 - fixing minor meta-circularity issue with &meta, it
125 is now more useful for subclasses
126 - added &get_attribute_map as an accessor for the
127 hash of attribute meta objects
128 - &compute_all_applicable_attributes now just returns
129 the attribute meta-object, rather than the HASH ref
130 since all the same info can be gotten from the
131 attribute meta-object itself
132 - updated docs & tests to reflect
133 - added &clone_instance method which does a deep clone
134 of the instance structure created by &construct_instance
135 - added docs & tests for this
136 - added Clone as a dependency
137 - added &new_object and &clone_object convience methods to
138 return blessed new or cloned instances
139 - they handle Class::MOP::Class singletons correctly too
140 - added docs & tests for this
141 - cleaned up the &constuct_class_instance so that it behaves
142 more like &construct_instance (and managed the singletons too)
143 - added the &check_metaclass_compatibility method to make sure
144 that metaclasses are upward and downward compatible.
145 - added tests and docs for this
148 - adjusting code to use the &Class::MOP::Class::meta
150 - adjusting code to use the metaclass pragma
152 0.05 Sat Feb. 4, 2006
154 - added the &attribute_metaclass and &method_metaclass
155 attributes which contain a metaclass name to use for
156 attributes/methods respectively
159 - bootstrap additional attributes for Class::MOP::Class
162 - adjusted the example code and tests to use the new
163 &attribute_metaclass feature of Class::MOP::Class
167 0.04 Fri Feb. 3, 2006
169 - some documentation suggestions from #perl6
171 * Class::MOP::Attribute
172 - improved error messages
175 - added new examples:
176 - AttributesWithHistory
177 - ClassEncapsultedAttributes
179 0.03 Fri Feb. 3, 2006
180 - converted to Module::Build instead of EU::MM
182 * Class::MOP::Attribute
183 - refactored method generation code
184 - attributes are now associated with class directly
187 - refactored the InsideOut example to take advantage
188 of the Class::MOP::Attribute refactoring
189 - changed example files to .pod files and hide thier
190 package names from PAUSE (I don't want to own these
191 namespaces really, they are just examples)
193 0.02 Thurs Feb. 2, 2006
194 - moving examples from t/lib/* to examples/*
195 - adding POD documentation to the examples
197 0.01 Thurs Feb. 2, 2006