getting close to a 0.07 release
[gitmo/Class-MOP.git] / Changes
1 Revision history for Perl extension Class-MOP.
2
3 0.07
4     - adding more tests
5         - test for compatability with Class::C3
6     - added SUPER as a dependency (because we need runtime
7       dispatching of SUPER calls for mixins)
8       
9     * Class::MOP
10       - no longer optionally exports to UNIVERSAL::meta or
11         creates a custom metaclass generator, use the 
12         metaclass pragma instead.
13       
14     * Class::MOP::Class
15       - adding in &mixin method to do Scala style mixins
16
17 0.06 Thurs Feb. 9, 2006
18     * metaclass
19       - adding new metaclass pragma to make setting up the 
20         metaclass a little more straightforward
21         
22     * Class::MOP
23       - clean up bootstrapping to include more complete 
24         attribute definitions for Class::MOP::Class and 
25         Class::MOP::Attribute (accessors, readers, writers, 
26         etc.) ... it is redundant, but is useful meta-info
27         to have around.
28
29     * Class::MOP::Class
30       - fixing minor meta-circularity issue with &meta, it 
31         is now more useful for subclasses
32       - added &get_attribute_map as an accessor for the 
33         hash of attribute meta objects
34       - &compute_all_applicable_attributes now just returns
35         the attribute meta-object, rather than the HASH ref
36         since all the same info can be gotten from the 
37         attribute meta-object itself
38           - updated docs & tests to reflect
39       - added &clone_instance method which does a deep clone
40         of the instance structure created by &construct_instance
41           - added docs & tests for this
42           - added Clone as a dependency
43       - added &new_object and &clone_object convience methods to
44         return blessed new or cloned instances
45           - they handle Class::MOP::Class singletons correctly too
46           - added docs & tests for this
47       - cleaned up the &constuct_class_instance so that it behaves
48         more like &construct_instance (and managed the singletons too)
49       - added the &check_metaclass_compatibility method to make sure
50         that metaclasses are upward and downward compatible.
51           - added tests and docs for this
52           
53     * examples/
54       - adjusting code to use the &Class::MOP::Class::meta
55         fix detailed above
56       - adjusting code to use the metaclass pragma
57       
58 0.05 Sat Feb. 4, 2006
59     * Class::MOP::Class
60       - added the &attribute_metaclass and &method_metaclass
61         attributes which contain a metaclass name to use for 
62         attributes/methods respectively
63     
64     * Class::MOP
65       - bootstrap additional attributes for Class::MOP::Class 
66         
67     * examples/
68       - adjusted the example code and tests to use the new
69         &attribute_metaclass feature of Class::MOP::Class
70       - added new example:
71         - LazyClass
72
73 0.04 Fri Feb. 3, 2006
74     * Class::MOP::Class
75       - some documentation suggestions from #perl6
76     
77     * Class::MOP::Attribute
78       - improved error messages    
79     
80     * examples/
81       - added new examples:
82         - AttributesWithHistory
83         - ClassEncapsultedAttributes
84
85 0.03 Fri Feb. 3, 2006
86     - converted to Module::Build instead of EU::MM
87     
88     * Class::MOP::Attribute
89       - refactored method generation code
90       - attributes are now associated with class directly
91     
92     * examples/
93       - refactored the InsideOut example to take advantage 
94         of the Class::MOP::Attribute refactoring
95       - changed example files to .pod files and hide thier
96         package names from PAUSE (I don't want to own these
97         namespaces really, they are just examples)
98
99 0.02 Thurs Feb. 2, 2006
100     - moving examples from t/lib/* to examples/*
101         - adding POD documentation to the examples
102
103 0.01 Thurs Feb. 2, 2006
104     - Initial release