0_04
[gitmo/Moose.git] / Changes
1 Revision history for Perl extension Moose
2
3 0.04 Sun. April 16th, 2006
4     * Moose::Role
5       - Roles can now consume other roles
6         - added tests for this
7       - Roles can specify required methods now with 
8         the requires() keyword
9         - added tests for this
10
11     * Moose::Meta::Role
12       - ripped out much of it's guts ,.. much cleaner now
13       - added required methods and correct handling of 
14         them in apply() for both classes and roles
15         - added tests for this
16       - no longer adds a does() method to consuming classes 
17         it relys on the one in Moose::Object
18       - added roles attribute and some methods to support 
19         roles consuming roles
20
21     * Moose::Meta::Attribute
22       - added support for triggers on attributes
23         - added tests for this
24       - added support for does option on an attribute 
25         - added tests for this
26         
27     * Moose::Meta::Class
28       - added support for attribute triggers in the 
29         object construction
30         - added tests for this
31     
32     * Moose
33       - Moose no longer creates a subtype for your class 
34         if a subtype of the same name already exists, this 
35         should DWIM in 99.9999% of all cases
36         
37     * Moose::Util::TypeConstraints
38       - fixed bug where incorrect subtype conflicts were 
39         being reported
40         - added test for this
41         
42     * Moose::Object
43       - this class can now be extended with 'use base' if
44         you need it, it properly loads the metaclass class now
45         - added test for this
46
47 0.03_02 Wed. April 12, 2006
48     * Moose
49       - you must now explictly use Moose::Util::TypeConstraints
50         it no longer gets exported for you automatically
51         
52     * Moose::Object
53       - new() now accepts hash-refs as well as key/value lists
54       - added does() method to check for Roles
55         - added tests for this
56
57     * Moose::Meta::Class
58       - added roles attribute along with the add_role() and 
59         does_role() methods
60         - added tests for this 
61
62     * Moose::Meta::Role
63       - now adds a does() method to consuming classes 
64         which tests the class's hierarchy for roles
65         - added tests for this
66
67 0.03_01 Mon. April 10, 2006
68     * Moose::Cookbook
69       - added new Role recipe (no content yet, only code)
70       
71     * Moose
72       - added 'with' keyword for Role support
73         - added test and docs for this
74       - fixed subtype quoting bug
75         - added test for this 
76
77     * Moose::Role
78       - Roles for Moose
79         - added test and docs
80
81     * Moose::Util::TypeConstraints
82       - added the message keyword to add custom
83         error messages to type constraints        
84       
85     * Moose::Meta::Role
86       - the meta role to support Moose::Role
87         - added tests and docs
88         
89     * Moose::Meta::Class
90       - moved a number of things from Moose.pm 
91         to here, they should have been here 
92         in the first place
93
94     * Moose::Meta::Attribute
95       - moved the attribute option macros here
96         instead of putting them in Moose.pm
97
98     * Moose::Meta::TypeConstraint
99       - added the message attributes and the 
100         validate method
101         - added tests and docs for this
102
103 0.03 Thurs. March 30, 2006
104     * Moose::Cookbook
105       - added the Moose::Cookbook with 5 recipes, 
106         describing all the stuff Moose can do.
107
108     * Moose
109       - fixed an issue with &extends super class loading
110         it now captures errors and deals with inline 
111         packages correctly (bug found by mst, solution 
112         stolen from alias)
113       - added super/override & inner/augment features
114         - added tests and docs for these
115     
116     * Moose::Object
117       - BUILDALL now takes a reference of the %params 
118         that are passed to &new, and passes that to 
119         each BUILD as well.
120         
121     * Moose::Util::TypeConstraints
122       - Type constraints now survive runtime reloading
123         - added test for this
124
125         * Moose::Meta::Class
126           - fixed the way attribute defaults are handled 
127             during instance construction (bug found by chansen)
128
129     * Moose::Meta::Attribute
130       - read-only attributes now actually enforce their
131         read-only-ness (this corrected in Class::MOP as 
132         well)
133
134 0.02 Tues. March 21, 2006
135     * Moose
136       - many more tests, fixing some bugs and  
137         edge cases
138       - &extends now loads the base module with
139         UNIVERSAL::require 
140         - added UNIVERSAL::require to the 
141           dependencies list
142       ** API CHANGES **
143       - each new Moose class will also create 
144         and register a subtype of Object which 
145         correspond to the new Moose class.      
146       - the 'isa' option in &has now only 
147         accepts strings, and will DWIM in 
148         almost all cases
149     
150     * Moose::Util::TypeConstraints
151       - added type coercion features
152         - added tests for this
153         - added support for this in attributes 
154           and instance construction
155       ** API CHANGES **
156       - type construction no longer creates a 
157         function, it registers the type instead.
158         - added several functions to get the 
159           registered types 
160
161     * Moose::Object
162       - BUILDALL and DEMOLISHALL were broken 
163         because of a mis-named hash key, Whoops :)
164     
165     * Moose::Meta::Attribute
166       - adding support for coercion in the
167         autogenerated accessors
168         
169     * Moose::Meta::Class
170       - adding support for coercion in the
171         instance construction  
172
173     * Moose::Meta::TypeConstraint
174     * Moose::Meta::TypeCoercion
175           - type constraints and coercions are now 
176             full fledges meta-objects
177
178 0.01 Wed. March 15, 2006
179     - Moooooooooooooooooose!!!