foo
[gitmo/Moose.git] / Changes
CommitLineData
e522431d 1Revision history for Perl extension Moose
2
35c8b8f2 30.05 Thurs. April 27, 2006
2d562421 4 * Moose
5 - keywords are now exported with Sub::Exporter
6 thanks to chansen for this commit
590868a3 7 - has keyword now takes a 'metaclass' option
8 to support custom attribute meta-classes
9 on a per-attribute basis
daea75c9 10 - added tests for this
11 - the 'has' keyword not accepts inherited slot
12 specifications (has '+foo'). This is still an
13 experimental feature and probably not finished
14 see t/038_attribute_inherited_slot_specs.t for
15 more details, or ask about it on #moose
fcb7afc2 16 - added tests for this
2d562421 17
18 * Moose::Role
19 - keywords are now exported with Sub::Exporter
20
5204cd52 21 * Moose::Utils::TypeConstraints
cce8198b 22 - reorganized the type constraint hierarchy, thanks
23 to nothingmuch and chansen for his help and advice
24 on this
25 - added some tests for this
7eaef7ad 26 - keywords are now exported with Sub::Exporter
35c8b8f2 27 thanks to chansen for this commit
5204cd52 28
d500266f 29 * Moose::Meta::Class
30 - due to changes in Class::MOP, we had to change
31 construct_instance (for the better)
32
33 * Moose::Meta::Attribute
34 - due to changes in Class::MOP, we had to add the
35 initialize_instance_slot method (it's a good thing)
c07af9d2 36
cce8198b 37 * Moose::Meta::TypeConstraint
c07af9d2 38 - added type constraint unions
39 - added tests for this
cce8198b 40 - added the is_subtype_of predicate method
41 - added tests for this
d500266f 42
02a0fb52 430.04 Sun. April 16th, 2006
1331430a 44 * Moose::Role
45 - Roles can now consume other roles
46 - added tests for this
47 - Roles can specify required methods now with
48 the requires() keyword
49 - added tests for this
50
bdabd620 51 * Moose::Meta::Role
52 - ripped out much of it's guts ,.. much cleaner now
1331430a 53 - added required methods and correct handling of
fa1be058 54 them in apply() for both classes and roles
55 - added tests for this
1331430a 56 - no longer adds a does() method to consuming classes
57 it relys on the one in Moose::Object
58 - added roles attribute and some methods to support
59 roles consuming roles
8c9d74e7 60
61 * Moose::Meta::Attribute
62 - added support for triggers on attributes
63 - added tests for this
02a0fb52 64 - added support for does option on an attribute
65 - added tests for this
8c9d74e7 66
67 * Moose::Meta::Class
68 - added support for attribute triggers in the
69 object construction
70 - added tests for this
256903b6 71
72 * Moose
73 - Moose no longer creates a subtype for your class
74 if a subtype of the same name already exists, this
75 should DWIM in 99.9999% of all cases
76
77 * Moose::Util::TypeConstraints
78 - fixed bug where incorrect subtype conflicts were
79 being reported
8c9d74e7 80 - added test for this
81
82 * Moose::Object
83 - this class can now be extended with 'use base' if
84 you need it, it properly loads the metaclass class now
85 - added test for this
bdabd620 86
0677220d 870.03_02 Wed. April 12, 2006
05d9eaf6 88 * Moose
89 - you must now explictly use Moose::Util::TypeConstraints
90 it no longer gets exported for you automatically
91
92 * Moose::Object
93 - new() now accepts hash-refs as well as key/value lists
0677220d 94 - added does() method to check for Roles
95 - added tests for this
05d9eaf6 96
0677220d 97 * Moose::Meta::Class
98 - added roles attribute along with the add_role() and
99 does_role() methods
100 - added tests for this
101
102 * Moose::Meta::Role
103 - now adds a does() method to consuming classes
104 which tests the class's hierarchy for roles
105 - added tests for this
106
1070.03_01 Mon. April 10, 2006
e9ec68d6 108 * Moose::Cookbook
76d37e5a 109 - added new Role recipe (no content yet, only code)
e9ec68d6 110
111 * Moose
112 - added 'with' keyword for Role support
113 - added test and docs for this
114 - fixed subtype quoting bug
115 - added test for this
116
117 * Moose::Role
118 - Roles for Moose
119 - added test and docs
76d37e5a 120
121 * Moose::Util::TypeConstraints
122 - added the message keyword to add custom
123 error messages to type constraints
e9ec68d6 124
125 * Moose::Meta::Role
126 - the meta role to support Moose::Role
127 - added tests and docs
128
129 * Moose::Meta::Class
130 - moved a number of things from Moose.pm
131 to here, they should have been here
132 in the first place
133
134 * Moose::Meta::Attribute
135 - moved the attribute option macros here
136 instead of putting them in Moose.pm
e185c027 137
76d37e5a 138 * Moose::Meta::TypeConstraint
139 - added the message attributes and the
140 validate method
141 - added tests and docs for this
142
0ac928d2 1430.03 Thurs. March 30, 2006
e9bb8a31 144 * Moose::Cookbook
145 - added the Moose::Cookbook with 5 recipes,
146 describing all the stuff Moose can do.
147
d7f17ebb 148 * Moose
149 - fixed an issue with &extends super class loading
150 it now captures errors and deals with inline
151 packages correctly (bug found by mst, solution
152 stolen from alias)
159da176 153 - added super/override & inner/augment features
154 - added tests and docs for these
d7f17ebb 155
156 * Moose::Object
157 - BUILDALL now takes a reference of the %params
158 that are passed to &new, and passes that to
159 each BUILD as well.
471c4f09 160
161 * Moose::Util::TypeConstraints
162 - Type constraints now survive runtime reloading
163 - added test for this
d7f17ebb 164
8339fae2 165 * Moose::Meta::Class
166 - fixed the way attribute defaults are handled
167 during instance construction (bug found by chansen)
168
d7f17ebb 169 * Moose::Meta::Attribute
170 - read-only attributes now actually enforce their
9deed647 171 read-only-ness (this corrected in Class::MOP as
172 well)
d7f17ebb 173
076c81ed 1740.02 Tues. March 21, 2006
fc5609d2 175 * Moose
b841b2a3 176 - many more tests, fixing some bugs and
177 edge cases
b841b2a3 178 - &extends now loads the base module with
179 UNIVERSAL::require
180 - added UNIVERSAL::require to the
181 dependencies list
6ba6d68c 182 ** API CHANGES **
b841b2a3 183 - each new Moose class will also create
184 and register a subtype of Object which
185 correspond to the new Moose class.
b841b2a3 186 - the 'isa' option in &has now only
187 accepts strings, and will DWIM in
188 almost all cases
189
190 * Moose::Util::TypeConstraints
191 - added type coercion features
192 - added tests for this
193 - added support for this in attributes
194 and instance construction
6ba6d68c 195 ** API CHANGES **
b841b2a3 196 - type construction no longer creates a
197 function, it registers the type instead.
198 - added several functions to get the
199 registered types
6ba6d68c 200
201 * Moose::Object
202 - BUILDALL and DEMOLISHALL were broken
203 because of a mis-named hash key, Whoops :)
b841b2a3 204
205 * Moose::Meta::Attribute
206 - adding support for coercion in the
207 autogenerated accessors
208
209 * Moose::Meta::Class
210 - adding support for coercion in the
6ba6d68c 211 instance construction
212
213 * Moose::Meta::TypeConstraint
214 * Moose::Meta::TypeCoercion
215 - type constraints and coercions are now
216 full fledges meta-objects
fc5609d2 217
e522431d 2180.01 Wed. March 15, 2006
219 - Moooooooooooooooooose!!!