1 Revision history for Perl extension Moose
3 0.10 Thurs. July 6, 2006
5 - improved error message when loading modules so
6 it is less confusing when you load a role.
7 - added &calculate_all_roles method to
8 Moose::Meta::Class and Moose::Meta::Role
11 This module has been tested against Class::MOP 0.30
12 but it does not yet utilize the optimizations
13 it makes available. Stay tuned for that ;)
16 0.09_03 Fri. June 23, 2006
17 ++ DEVELOPER RELEASE ++
19 - 'use strict' and 'use warnings' are no longer
20 needed in Moose classes, Moose itself will
22 - added tests for this
23 - moved code from exported subs to private methods
27 - as with Moose, strict and warnings are
28 automatically turned on for you.
29 - added tests for this
32 - now handles an edge case for override errors
33 - added tests for this
34 - added some more edge case tests
36 0.09_02 Tues. May 16, 2006
37 ++ DEVELOPER RELEASE ++
39 - added prototypes to the exported subs
43 - added prototypes to the exported subs
46 * Moose::Util::TypeConstraints
47 - cleaned up prototypes for the subs
50 0.09_01 Fri. May 12, 2006
51 ++ DEVELOPER RELEASE ++
52 - This release works in combination with
53 Class::MOP 0.29_01, it is a developer
54 release because it uses the a new
55 instance sub-protocol and a fairly
56 complete Role implementation. It has
57 not yet been optimized, so it slower
58 the the previous CPAN version. This
59 release also lacks good updated docs,
60 the official release will have updated docs.
63 - refactored the keyword exports
64 - 'with' now checks Role validaity and
65 accepts more than one Role at a time
66 - 'extends' makes metaclass adjustments as
67 needed to ensure metaclass compatability
70 - refactored the keyword exports
71 - 'with' now checks Role validaity and
72 accepts more than one Role at a time
74 * Moose::Util::TypeConstraints
75 - added the 'enum' keyword for simple
76 string enumerations which can be used as
78 - see example of usage in t/202_example.t
81 - more careful checking of params to new()
84 - much work done on the role composition
85 - many new tests for conflict detection
86 and composition edge cases
87 - not enough documentation, I suggest
90 * Moose::Meta::Instance
91 - added new Instance metaclass to support
92 the new Class::MOP instance protocol
95 - some small changes to support the new
97 - some small additions to support Roles
99 * Moose::Meta::Attribute
100 - some improvements to the accessor generation code
102 - some small changes to support the new
104 - (still somewhat) experimental delegation support
105 with the 'handles' option
106 - added several tests for this
107 - no docs for this yet
109 0.05 Thurs. April 27, 2006
111 - keywords are now exported with Sub::Exporter
112 thanks to chansen for this commit
113 - has keyword now takes a 'metaclass' option
114 to support custom attribute meta-classes
115 on a per-attribute basis
116 - added tests for this
117 - the 'has' keyword not accepts inherited slot
118 specifications (has '+foo'). This is still an
119 experimental feature and probably not finished
120 see t/038_attribute_inherited_slot_specs.t for
121 more details, or ask about it on #moose
122 - added tests for this
125 - keywords are now exported with Sub::Exporter
127 * Moose::Utils::TypeConstraints
128 - reorganized the type constraint hierarchy, thanks
129 to nothingmuch and chansen for his help and advice
131 - added some tests for this
132 - keywords are now exported with Sub::Exporter
133 thanks to chansen for this commit
136 - due to changes in Class::MOP, we had to change
137 construct_instance (for the better)
139 * Moose::Meta::Attribute
140 - due to changes in Class::MOP, we had to add the
141 initialize_instance_slot method (it's a good thing)
143 * Moose::Meta::TypeConstraint
144 - added type constraint unions
145 - added tests for this
146 - added the is_subtype_of predicate method
147 - added tests for this
149 0.04 Sun. April 16th, 2006
151 - Roles can now consume other roles
152 - added tests for this
153 - Roles can specify required methods now with
154 the requires() keyword
155 - added tests for this
158 - ripped out much of it's guts ,.. much cleaner now
159 - added required methods and correct handling of
160 them in apply() for both classes and roles
161 - added tests for this
162 - no longer adds a does() method to consuming classes
163 it relys on the one in Moose::Object
164 - added roles attribute and some methods to support
165 roles consuming roles
167 * Moose::Meta::Attribute
168 - added support for triggers on attributes
169 - added tests for this
170 - added support for does option on an attribute
171 - added tests for this
174 - added support for attribute triggers in the
176 - added tests for this
179 - Moose no longer creates a subtype for your class
180 if a subtype of the same name already exists, this
181 should DWIM in 99.9999% of all cases
183 * Moose::Util::TypeConstraints
184 - fixed bug where incorrect subtype conflicts were
186 - added test for this
189 - this class can now be extended with 'use base' if
190 you need it, it properly loads the metaclass class now
191 - added test for this
193 0.03_02 Wed. April 12, 2006
195 - you must now explictly use Moose::Util::TypeConstraints
196 it no longer gets exported for you automatically
199 - new() now accepts hash-refs as well as key/value lists
200 - added does() method to check for Roles
201 - added tests for this
204 - added roles attribute along with the add_role() and
206 - added tests for this
209 - now adds a does() method to consuming classes
210 which tests the class's hierarchy for roles
211 - added tests for this
213 0.03_01 Mon. April 10, 2006
215 - added new Role recipe (no content yet, only code)
218 - added 'with' keyword for Role support
219 - added test and docs for this
220 - fixed subtype quoting bug
221 - added test for this
225 - added test and docs
227 * Moose::Util::TypeConstraints
228 - added the message keyword to add custom
229 error messages to type constraints
232 - the meta role to support Moose::Role
233 - added tests and docs
236 - moved a number of things from Moose.pm
237 to here, they should have been here
240 * Moose::Meta::Attribute
241 - moved the attribute option macros here
242 instead of putting them in Moose.pm
244 * Moose::Meta::TypeConstraint
245 - added the message attributes and the
247 - added tests and docs for this
249 0.03 Thurs. March 30, 2006
251 - added the Moose::Cookbook with 5 recipes,
252 describing all the stuff Moose can do.
255 - fixed an issue with &extends super class loading
256 it now captures errors and deals with inline
257 packages correctly (bug found by mst, solution
259 - added super/override & inner/augment features
260 - added tests and docs for these
263 - BUILDALL now takes a reference of the %params
264 that are passed to &new, and passes that to
267 * Moose::Util::TypeConstraints
268 - Type constraints now survive runtime reloading
269 - added test for this
272 - fixed the way attribute defaults are handled
273 during instance construction (bug found by chansen)
275 * Moose::Meta::Attribute
276 - read-only attributes now actually enforce their
277 read-only-ness (this corrected in Class::MOP as
280 0.02 Tues. March 21, 2006
282 - many more tests, fixing some bugs and
284 - &extends now loads the base module with
286 - added UNIVERSAL::require to the
289 - each new Moose class will also create
290 and register a subtype of Object which
291 correspond to the new Moose class.
292 - the 'isa' option in &has now only
293 accepts strings, and will DWIM in
296 * Moose::Util::TypeConstraints
297 - added type coercion features
298 - added tests for this
299 - added support for this in attributes
300 and instance construction
302 - type construction no longer creates a
303 function, it registers the type instead.
304 - added several functions to get the
308 - BUILDALL and DEMOLISHALL were broken
309 because of a mis-named hash key, Whoops :)
311 * Moose::Meta::Attribute
312 - adding support for coercion in the
313 autogenerated accessors
316 - adding support for coercion in the
317 instance construction
319 * Moose::Meta::TypeConstraint
320 * Moose::Meta::TypeCoercion
321 - type constraints and coercions are now
322 full fledges meta-objects
324 0.01 Wed. March 15, 2006
325 - Moooooooooooooooooose!!!