buncha crap
[gitmo/Class-MOP.git] / Changes
CommitLineData
7c90a1a8 1Revision history for Perl extension Class-MOP.
2
a4258ffd 30.20
d3cb0d4a 4 - removed the dependency for Clone since
5 we no longer to deep-cloning by default.
a4258ffd 6 - added dependency for SUPER to support the
7 method modifier code.
8
9 * Class::MOP::Method
10 - added &package_name and &name methods
11 which were formerly private subs in
12 Class::MOP::Class
13
14 * Class::MOP::Method::Wrapped
15 - allows for a method to be wrapped with
16 before, after and around modifiers
17 - added tests and docs for this feature
d3cb0d4a 18
19 * Class::MOP::Class
20 - improved &get_package_variable
a4258ffd 21 - methods are now blessed into Class::MOP::Method
22 whenever possible
23 - &has_method now uses new method introspection
24 from Class::MOP::Method to determine where the
25 sub comes from
26 - added methods to install CLOS-style method modifiers
27 - &add_before_method_modifier
28 - &add_after_method_modifier
29 - &add_around_method_modifier
30 - added tests and docs for these
d3cb0d4a 31
1c020571 320.12 Thurs. Feb 23, 2006
d89c0fad 33 - reduced the dependency on B, no need to always
34 have the latest
35
1c020571 36 * examples/
37 - added docs to the C3 method dispatch order test
38 - fixed missing Algorithm::C3 dependency by making
39 the test skip if it is not installed
40
0dea7280 410.11 Mon Feb. 20, 2006
f3f5bd34 42 * examples/
43 - added example of changing method dispatch order to C3
a27ae83f 44
45 * Class::MOP::Class
19d4b5b8 46 - changed how clone_instance behaves, it now only does a
47 shallow clone (see docs for more details)
a27ae83f 48 - added docs and tests
f3f5bd34 49
3bf7644b 500.10 Tues Feb. 14, 2006
51 ** This release was mostly about writing more tests and
52 cleaning out old and dusty code, the MOP should now
53 be considered "ready to use".
54
22286063 55 - adding more tests to get coverage up a little higher,
56 mostly testing errors and edge cases.
57 - test coverage is now at 99%
aa448b16 58
59 * Class::MOP
60 - no longer optionally exports to UNIVERSAL::meta or
61 creates a custom metaclass generator, use the
62 metaclass pragma instead.
22286063 63
64 * Class::MOP::Class
65 - fixed a number of minor issues which came up in the
66 error/edge-case tests
67
68 * Class::MOP::Attribute
69 - fixed a number of minor issues which came up in the
70 error/edge-case tests
71
0b8eb325 72 * examples/
ea263060 73 - fixing the AttributesWithHistory example, it was broken.
663f8198 74
550d56db 750.06 Thurs Feb. 9, 2006
677eb158 76 * metaclass
550d56db 77 - adding new metaclass pragma to make setting up the
677eb158 78 metaclass a little more straightforward
7b31baf4 79
80 * Class::MOP
81 - clean up bootstrapping to include more complete
82 attribute definitions for Class::MOP::Class and
83 Class::MOP::Attribute (accessors, readers, writers,
84 etc.) ... it is redundant, but is useful meta-info
85 to have around.
677eb158 86
99e5b7e8 87 * Class::MOP::Class
88 - fixing minor meta-circularity issue with &meta, it
89 is now more useful for subclasses
7b31baf4 90 - added &get_attribute_map as an accessor for the
91 hash of attribute meta objects
c9e77dbb 92 - &compute_all_applicable_attributes now just returns
93 the attribute meta-object, rather than the HASH ref
94 since all the same info can be gotten from the
95 attribute meta-object itself
96 - updated docs & tests to reflect
5f3c057a 97 - added &clone_instance method which does a deep clone
98 of the instance structure created by &construct_instance
99 - added docs & tests for this
550d56db 100 - added Clone as a dependency
5f3c057a 101 - added &new_object and &clone_object convience methods to
102 return blessed new or cloned instances
2a7575a6 103 - they handle Class::MOP::Class singletons correctly too
5f3c057a 104 - added docs & tests for this
2a7575a6 105 - cleaned up the &constuct_class_instance so that it behaves
106 more like &construct_instance (and managed the singletons too)
550d56db 107 - added the &check_metaclass_compatibility method to make sure
108 that metaclasses are upward and downward compatible.
109 - added tests and docs for this
5f3c057a 110
99e5b7e8 111 * examples/
112 - adjusting code to use the &Class::MOP::Class::meta
113 fix detailed above
677eb158 114 - adjusting code to use the metaclass pragma
99e5b7e8 115
aa9c883e 1160.05 Sat Feb. 4, 2006
2e41896e 117 * Class::MOP::Class
118 - added the &attribute_metaclass and &method_metaclass
351bd7d4 119 attributes which contain a metaclass name to use for
2e41896e 120 attributes/methods respectively
351bd7d4 121
122 * Class::MOP
123 - bootstrap additional attributes for Class::MOP::Class
2e41896e 124
125 * examples/
126 - adjusted the example code and tests to use the new
127 &attribute_metaclass feature of Class::MOP::Class
aa9c883e 128 - added new example:
129 - LazyClass
2e41896e 130
d7c2cbe3 1310.04 Fri Feb. 3, 2006
d6fbcd05 132 * Class::MOP::Class
133 - some documentation suggestions from #perl6
134
135 * Class::MOP::Attribute
136 - improved error messages
137
138 * examples/
139 - added new examples:
140 - AttributesWithHistory
d7c2cbe3 141 - ClassEncapsultedAttributes
343203ee 142
9ec169fe 1430.03 Fri Feb. 3, 2006
144 - converted to Module::Build instead of EU::MM
145
146 * Class::MOP::Attribute
147 - refactored method generation code
148 - attributes are now associated with class directly
149
f71f4295 150 * examples/
9ec169fe 151 - refactored the InsideOut example to take advantage
152 of the Class::MOP::Attribute refactoring
f71f4295 153 - changed example files to .pod files and hide thier
154 package names from PAUSE (I don't want to own these
155 namespaces really, they are just examples)
9ec169fe 156
a57c7fa2 1570.02 Thurs Feb. 2, 2006
158 - moving examples from t/lib/* to examples/*
159 - adding POD documentation to the examples
160
a2e85e6c 1610.01 Thurs Feb. 2, 2006
7c90a1a8 162 - Initial release