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