Commit | Line | Data |
c3398f5b |
1 | Revision history for Mouse |
927982b4 |
2 | |
7cfe5d54 |
3 | 0.38 |
4 | SUMMARY from 0.37 to 0.38 |
5 | |
6 | * Import a number of tests from Moose |
7 | |
8 | |
6f16d3ce |
9 | 0.37_05 Fri Oct 9 15:21:43 2009 |
9c72aa8c |
10 | * Mouse::Exporter |
11 | - Add build_import_methods() (gfx) |
12 | |
13 | * Mouse::Spec |
b644ef5d |
14 | - Add notes about Moose::Cookbook (gfx) |
1639e480 |
15 | |
16 | * Fix some minor bugs (gfx) |
17 | |
1dc1f3f1 |
18 | 0.37_04 Thu Oct 8 20:49:11 2009 |
c38b841a |
19 | * Mouse::Meta::Role::Composite |
20 | - Fix and improve role composition mechanism (gfx) |
21 | |
1dc1f3f1 |
22 | * Import a number of tests from Moose, and fix various bugs (gfx) |
c38b841a |
23 | |
b1a89a06 |
24 | * Mouse::Tiny is always generated in Makefile.PL (gfx) |
25 | |
edd20f48 |
26 | 0.37_03 Wed Oct 7 21:10:05 2009 |
af8f95f4 |
27 | * Mouse::Exporter |
28 | - Add Mouse::Exporter (gfx) |
29 | * Mouse::Meta::Method::Constructor |
30 | - Optimize generated constructors (gfx) |
1f0c967a |
31 | * Mouse::Meta::Role |
32 | - Implement role application to instances (gfx) |
62cb9505 |
33 | |
f5511684 |
34 | 0.37_02 Sun Oct 4 17:29:15 2009 |
53a7a312 |
35 | * Mouse |
36 | - Implement the argument/inner keywords |
4f90d9ae |
37 | * Mouse::Meta::Attribute |
2e202fdb |
38 | - Add get_read_method_ref() and get_write_method_ref() (gfx) |
53a7a312 |
39 | - Add find_attribute_by_name() (gfx) |
2e202fdb |
40 | - Fix clone_and_inherit_options() to deal with 'traits' (gfx) |
41 | * Mouse::Util |
42 | - Fix meta() method, which was not tested (gfx) |
53a7a312 |
43 | * Tests |
44 | - Port t/010_basics/*.t from Moose |
4f90d9ae |
45 | |
327475b7 |
46 | 0.37_01 Thu Oct 1 15:32:58 2009 |
2e202fdb |
47 | * Type coercions are stored to type constraints (gfx) |
2929db0a |
48 | |
2e202fdb |
49 | * Refactor the type parser to parse 'ArrayRef[Object|Int]' (gfx) |
2929db0a |
50 | |
2e202fdb |
51 | * Remove Class::MOP specific subroutines from Mouse::Meta::Module (gfx) |
327475b7 |
52 | (this change might be reverted in the release version) |
b61e0c46 |
53 | - version, authority, identifier, |
54 | get_all_metaclasses, store_metaclass_by_name, |
55 | weaken_metaclass, does_metaclass_exist, remove_metaclass_by_name |
56 | |
2e202fdb |
57 | * Add new public utilities to Mouse::Util (gfx) |
b61e0c46 |
58 | - class_of, the counterpart for Class::MOP::class_of |
59 | - get_metaclass_by_name for Class::MOP::get_metaclass_by_name |
60 | |
61 | |
31920032 |
62 | 0.37 Mon Sep 28 10:48:27 2009 |
0a46aaa0 |
63 | * Ensure backward compatibility by author/test-externa.pl (gfx) |
64 | |
65 | * Change the algorithm of has_method() for backward compatibility (gfx) |
66 | |
31920032 |
67 | * $ENV{MOUSE_VERBOSE}=1 for Moose-compatible warnings (gfx) |
0a46aaa0 |
68 | |
04493075 |
69 | 0.36 Sun Sep 27 16:53:06 2009 |
70 | * Fix an issue that breaks backward compatibility (gfx) |
71 | - MouseX::Attribute does work, although make tests doesn't pass |
72 | |
81625179 |
73 | 0.35 Sat Sep 26 12:38:27 2009 |
74 | * Work around Test::Exception 0.27_0x by including authorized ver. (gfx) |
75 | |
a573851d |
76 | 0.34 Fri Sep 25 21:55:48 2009 |
32a0f864 |
77 | * Make sure to work on 5.6.2 (gfx) |
eb88905f |
78 | |
32a0f864 |
79 | * Remove Class::Method::Modifiers dependency (gfx) |
7ca5c5fb |
80 | |
32a0f864 |
81 | * Remove testing modules from inc/ (gfx) |
82 | |
83 | * Put t/019-handles.t on ice (gfx) |
7a1781ae |
84 | |
639f39ef |
85 | 0.33_01 Thu Sep 24 16:16:57 2009 |
121acb8a |
86 | * Implement traits => [...] in has() (gfx) |
87 | |
88 | 0.33 Wed Sep 23 15:06:40 2009 |
39f9498f |
89 | * Fix RT #49902: 0.32 fails tests reported by GRUBER (gfx) |
90 | |
47a8794f |
91 | * Add some tests |
92 | |
b2a583f8 |
93 | 0.32 Tue Sep 22 16:44:57 2009 |
94 | * Add many tests copied from Moose (gfx) |
7a50b450 |
95 | |
b2a583f8 |
96 | * Fix Mouse::Util::find_meta() and Mouse::Util::does_role() (gfx) |
7a50b450 |
97 | |
53c495ce |
98 | * Fix the timing triggers are invoked (gfx) |
99 | |
b2a583f8 |
100 | * Implement confliction checks in roles |
101 | |
102 | * work around create() and create_anon() in Mouse::Meta::Role |
3c429663 |
103 | |
b2a583f8 |
104 | 0.31 Tue Sep 22 11:08:12 2009 |
7b133c92 |
105 | * Add find_meta() and does_role() to Mouse::Util (gfx) |
106 | |
809fc2c7 |
107 | * Fix tests using Class::Method::Modifiers to be skipped correctly (gfx) |
108 | |
109 | * Remove Test::Mouse, which was accidentally included (gfx) |
110 | |
9c6ff002 |
111 | 0.30 Mon Sep 21 16:43:05 2009 |
7b133c92 |
112 | * Implement RT #46930 (accessor/reader/writer in has()) (gfx) |
3c429663 |
113 | |
9c6ff002 |
114 | * Work around anonymous classes as mortal classes (gfx) |
ad022aac |
115 | |
116 | * Implement with $role => -exlucdes => [...] (gfx) |
117 | |
118 | * Implement get_method() in M::Meta::Class and M::Meta::Role (gfx) |
119 | |
eb05b8be |
120 | * Make get_method_list() compatible with Moose's (gfx) |
5f6a73cb |
121 | |
eb05b8be |
122 | * Make unimport() not to remove non-Mouse functions (blessed and confess) (gfx) |
5f6a73cb |
123 | |
eb05b8be |
124 | * Remove a lot of duplication code (gfx) |
5f6a73cb |
125 | |
324d3602 |
126 | * Support is => 'bare', and you must pass and 'is' option to has() (gfx) |
9c85e9dc |
127 | |
15b4faa9 |
128 | 0.29 Thu Sep 17 11:49:49 2009 |
93ac97dd |
129 | |
15b4faa9 |
130 | * role class has ->meta in method_list, because it does in Moose since 0.9 |
93ac97dd |
131 | 0.28 Wed Sep 8 20:00:06 2009 |
e650ba5b |
132 | * Alter Makefile.PL so in author mode we generate lib/Mouse/Tiny.pm on |
133 | every run so that 'make dist' actually does what it's meant to (mst) |
2bcb073f |
134 | |
e0541d44 |
135 | * Only unlink Mouse::Tiny if it exists, otherwise autodie pitches |
136 | a fit (miyagawa) |
26b84079 |
137 | |
138 | * Make auto_deref also handles isa not only ArrayRef and HashRef, but also |
139 | ArrayRef[Foo::Bar] and HashRef[Foo::Bar] |
e0541d44 |
140 | |
9f917442 |
141 | 0.27 Thu Jul 2 15:17:37 2009 |
142 | * Doc updates (Sartak) |
143 | |
144 | * Include missing Mouse::Tiny |
fc352e2d |
145 | |
f81e2ecb |
146 | 0.26 Wed Jul 1 13:39:30 2009 |
9cc87fff |
147 | * Fix failing tests by requiring a newer Moose in that test (t0m) |
48bf3a6a |
148 | |
b79fc28f |
149 | 0.25 Fri Jun 19 12:05:42 2009 |
150 | * Fix SIGNATURE (reported by daxim) ... by removing it :) |
efeb6d0c |
151 | |
34a90485 |
152 | 0.24 Mon Jun 15 14:47:18 2009 |
153 | * Moose's construct_instance is deprecated, use new_object (tokuhirom) |
154 | |
155 | * Improve Mouse::Tiny generation (tokuhirom) |
156 | |
157 | * Inlining destructor fixes (tokuhirom) |
158 | |
159 | * Add Mouse->init_meta (tokuhirom) |
160 | |
161 | * Fix failing tests by requiring a newer Moose in that test (Sartak) |
eb6f4444 |
162 | |
b03fda9f |
163 | * Don't warn in tests about Squirrel deprecations (Sartak) |
164 | |
25db76ef |
165 | 0.23 Wed May 27 16:52:28 2009 |
dad3c1af |
166 | * Take the mro::linearized_isa DEMOLISHALL fix from Moose |
167 | (originally by doy) |
168 | |
169 | * Mouse::class_of to mirror Class::MOP::class_of |
d5b41c02 |
170 | |
6d86b341 |
171 | 0.22 Tue Apr 21 03:26:43 2009 |
172 | * Regenerate broken signature (Sartak) |
dad3c1af |
173 | reported by Michael Gray [rt.cpan.org #45167] |
6d86b341 |
174 | |
175 | * does_role now checks parent classes (tokuhirom) |
176 | |
177 | * Fix for $_ not being available type constraint messages (Sartak) |
124fa027 |
178 | |
240454c2 |
179 | 0.21 Sat Apr 11 13:52:11 2009 |
7a96b336 |
180 | * clone_instance has been made private, like in Moose (tokuhirom) |
6b646f93 |
181 | |
7a96b336 |
182 | * Fix method modifiers applying to the wrong class (gfuji) |
183 | reported by Heikki Lehvaslaiho in [rt.cpan.org #42992] |
d9b661d3 |
184 | |
7a96b336 |
185 | * Fix test failures when user does not have C::Method::Modifiers(::Fast) |
186 | installed (Joel Bernstein) |
187 | |
188 | * use get_all_attributes instead of |
189 | compute_all_applicable_attributes (tokuhirom) |
190 | |
191 | * fixed pod bug (tokuhirom) |
192 | reported by Ryan52 in [rt.cpan.org #44928] |
193 | |
194 | * Parameterized type constraints can now have messages (tokuhirom) |
6b646f93 |
195 | |
5893ee36 |
196 | * Added documentation about type constraints (Mark Stosberg) |
6b646f93 |
197 | |
198 | 0.20 Thu Apr 9 20:22:33 2009 |
2df74b3a |
199 | * Squirrel is now deprecated. Use Any::Moose instead (Sartak) |
200 | |
cf33c3d9 |
201 | * To improve Moose compat, the third argument to trigger |
202 | (the attribute metaobject) has been removed (Sartak) |
203 | |
204 | * To improve Moose compat, a single undef passed to new |
205 | is now disallowed (Sartak) |
c3398f5b |
206 | |
31a5ba2c |
207 | * Implemented Mouse::Object->does (wu-lee) |
208 | |
209 | * Implemented override and super functions for Mouse::Role. |
210 | (wu-lee) |
927982b4 |
211 | |
31a5ba2c |
212 | * Implemented stub augment and inner functions for Mouse::Role, |
213 | which merely throw an exception as in Moose::Role. (wu-lee) |
927982b4 |
214 | |
31a5ba2c |
215 | * Stole more tests from Moose (020_roles/*). Not all these pass |
216 | yet; the rest have been moved to 020_roles/failing for later |
217 | examination. (wu-lee) |
927982b4 |
218 | |
31a5ba2c |
219 | * Implemented Mouse::Role->does_role. This does not yet quite |
220 | seem to pass all the tests it should. (wu-lee) |
927982b4 |
221 | |
31a5ba2c |
222 | * Fixed bug in Mouse::Meta::Role->apply and ->combine_apply, so that |
223 | 030_roles/002_role.t tests pass. (wu-lee) |
927982b4 |
224 | |
31a5ba2c |
225 | * Implemented ->version, ->authority and ->identifier methods in |
226 | Mouse::Meta::Role and Mouse::Meta::Class (mainly to make more |
227 | Moose tests pass). (wu-lee) |
228 | |
bf1b613a |
229 | * Implemented emulations of Class::MOP's metaclass accessors |
230 | (get_metaclass_by_name etc.) in Mouse::Meta::Class. |
231 | |
31a5ba2c |
232 | * Mouse attribute property 'isa' now accepts Role names. (wu-lee) |
233 | |
234 | * Fixed bug: typecoercion application order was reversed. (wu-lee) |
235 | |
236 | * Fixed bug: inlined constructor was invoking BUILD methods in |
237 | wrong order. (wu-lee) |
65715de3 |
238 | |
239 | * Fixed bug: immutable constructor now redispatches correctly to |
240 | Mouse::Object::new when used in derived classes (wu-lee). |
c9aefe26 |
241 | |
927982b4 |
242 | * Maybe parameterized type constraint (lestrrat) |
243 | |
244 | * Performance improvements! (tokuhirom) |
245 | |
246 | * Improve Moose compat of class_type (lestrrat) |
247 | |
248 | * Many type-constraint fixes (tokuhirom and lestrrat) |
249 | |
250 | * Mouse::Meta::Class->has_method and ->get_attribute_list (tokuhirom) |
251 | |
252 | * Add get_all_attributes, use it internally instead of |
253 | compute_all_applicable_attributes (nothingmuch) |
254 | |
df9e57e8 |
255 | 0.19 Sun Mar 8 04:38:01 2009 |
f96bd2aa |
256 | * Parameterized type constraints for ArrayRef and HashRef (lestrrat) |
257 | |
258 | * Allow extensible attribute metaclass in traits too(tokuhirom) |
259 | |
260 | * Don't use method modifiers in a test since they may not be |
261 | available (Sartak) |
c4ec7642 |
262 | |
423b9699 |
263 | 0.18 Fri Mar 6 19:09:33 2009 |
264 | * Fix the issue preventing Mouse usage on Perl 5.6 - a bug in older |
265 | Scalar::Util! (tokuhirom) |
266 | |
267 | * Allow extensible attribute metaclass (tokuhirom) |
268 | |
269 | * Optimization for method modifiers (tokuhirom) |
270 | |
271 | * Implement Mouse->import({into_level => 1}) (tokuhirom) |
272 | |
273 | * Support for Class->meta->add_attribute($name => %options) (tokuhirom) |
274 | |
275 | * Throw a more useful error message when trying to use a parameterized |
276 | type (Sartak) |
c3a83939 |
277 | |
949738a8 |
278 | 0.17 Tue Feb 17 20:10:29 2009 |
388b8ebd |
279 | * Load mro directly if Perl is recent enough (Nicholas Clark) |
280 | |
df963a63 |
281 | * Add dump method from Moose::Object into Mouse::Object (perigrin) |
282 | |
949738a8 |
283 | * Add role-role composition (tokuhirom) |
284 | |
d8edb5a0 |
285 | 0.16 Mon Feb 9 20:56:27 2009 |
60cfc6ad |
286 | * Implement get_all_method_names |
67fb42e0 |
287 | |
01904723 |
288 | * Support for anonymous enums: enum [elements] |
289 | |
d8edb5a0 |
290 | * Moose's make_immutable returns true allowing calling code to skip |
291 | setting an explicit true value at the end of a source file. (obra) |
292 | |
4d33522c |
293 | 0.15 Thu Feb 5 11:44:05 2009 |
7daedfff |
294 | * Don't export Mouse's sugar into the package 'main' |
8aeec00e |
295 | |
3b46bd49 |
296 | * Rename Mouse::TypeRegistry to Mouse::Util::TypeConstraints |
297 | |
0d9fea22 |
298 | * "type" sugar for when you're not subtyping anything |
299 | |
7dbebb1b |
300 | * Keep track of the source package of each type |
301 | |
96dbfdb7 |
302 | * Moose lets you redefine a type within the same package, so we now do too |
303 | |
304 | * Borrow more of Moose's meta API |
a5fc1e9a |
305 | |
96dbfdb7 |
306 | * Mouse::Util::TypeConstraints now uses Exporter so you can select which |
307 | sugar you want |
308 | |
309 | * class_type shouldn't load the class (Moose compat; no easy fix :/) |
4859d490 |
310 | |
96dbfdb7 |
311 | * suppress warnings when we use "around" and "has '+...'" (dann) |
4859d490 |
312 | |
96dbfdb7 |
313 | * use Data::Util to make method modifiers fast if it's available (dann) |
47b5feb9 |
314 | |
a22b1fed |
315 | * Implement "enum" type constraints |
316 | |
317 | * Implement "override" and "super" |
318 | |
4786262b |
319 | * MouseX::Types is now in its own dist |
320 | |
1595b996 |
321 | 0.14 Sat Dec 20 16:53:05 2008 |
322 | * POD fix |
323 | |
324 | * Document what changes tokuhirom and Yappo made (see below) |
4216fc14 |
325 | |
25b08198 |
326 | 0.13 Tue Dec 16 02:01:40 2008 |
a9d1cb9d |
327 | * Pass in the instance to the default sub in the constructor (reported with |
328 | failing tests by rjbs) |
fccd2261 |
329 | |
1595b996 |
330 | * Tons of new features implemented by tokuhirom++ and Yappo++: |
331 | - method API in classes and roles! |
332 | - "requires" and "with" for Mouse::Role |
333 | - Type coercion |
334 | - Inject a constructor after make_immutable. Huge speedup! |
335 | - class_type and role_type |
336 | - Inject a destructor for more speedup |
337 | - MouseX::Types (may move into its own dist) |
338 | - create_anon_class |
339 | - union type constraints (eg 'Str | Undef') |
340 | - subtypes and sugar for them |
de51e718 |
341 | |
44231509 |
342 | 0.12 Thu Dec 4 19:23:10 2008 |
826828bf |
343 | * Provide Test::Exception function unless it's version 0.27 - RT #41254 |
344 | |
826828bf |
345 | * Mouse::Util now provides dies_ok |
346 | |
44231509 |
347 | * Make class-like types behave more like Moose; subclasses OK! (rjbs) |
348 | |
349 | * Steal more tests from Moose |
826828bf |
350 | |
e4b38f45 |
351 | 0.11 Sun Nov 2 11:35:04 2008 |
352 | * Throw an error if accessor/predicate/clearer/handles code eval fails |
353 | |
354 | * Optimizations for generated methods, they should now be on par with Moose |
6430d968 |
355 | |
2498d94c |
356 | 0.10 Tue Oct 28 19:23:07 2008 |
357 | * Require a recent Moose (which has the bugfix) for |
358 | t/500_moose_extends_mouse.t |
359 | |
360 | * ouse.pm for perl -Mouse one-liners (thanks rjbs) |
361 | |
362 | * Doc for init_arg => undef (thanks rjbs) |
7a024324 |
363 | |
274aea60 |
364 | 0.09 Sun Sep 28 22:37:13 2008 |
365 | * Initial version of Mouse::Tiny, a one-file concatenation of the Mouse |
366 | classes for easy embedding |
367 | |
368 | * Fixes caused by test failures (Carp not being loaded, Moose being |
369 | required in a test) |
370 | |
5dbc65ee |
371 | 0.08 Sun Sep 28 12:46:07 2008 |
372 | * ALL dependencies have been removed! |
373 | |
374 | * Fixes for Class::Method::Modifiers being required for testing |
eab013b2 |
375 | |
f38ce2d0 |
376 | 0.07 Sun Sep 28 00:19:07 2008 |
465af41f |
377 | * All runtime dependencies have been removed! The only change in |
378 | functionality (hopefully) is that the Sub::Exporter features can no |
379 | longer be used (we've backed down to regular Exporter). Scalar::Util is |
380 | required for "weaken" support, and Class::Method::Modifiers is required |
381 | for method modifier support, but only if you use these features! |
382 | Having Scalar::Util and MRO::Compat installed will provide only |
383 | performance increases. |
384 | |
385 | * Tests and fixes for extending a Mouse class with Moose (nothingmuch) |
386 | |
387 | * Support for adding method modifiers to a role, and composing them into |
388 | classes (we'll get true methods some day) |
389 | |
390 | * Method modifiers now go through the metaclass instead of invoking |
391 | Class::Method::Modifiers directly |
392 | |
393 | * Remove the deprecated before/after/around triggers |
394 | |
395 | * Roles keywords 'requires' and 'excludes' now throw errors instead of |
396 | silently doing nothing (they aren't implemented yet) |
5c557f4f |
397 | |
844fa049 |
398 | 0.06 Thu Jul 23 02:10:07 2008 |
399 | * Deprecating before/after/around triggers! Switch back to coderef + |
400 | whatever you used to do. Moose is have it implemented it as an extension |
401 | trait. |
402 | |
e2a1372d |
403 | * Mouse |
404 | - updated trigger doc (thanks perigrin) |
844fa049 |
405 | - which will not see CPAN :( sorry perigrin! |
ed00ef38 |
406 | |
60e2164a |
407 | * Mouse::Meta::Class |
408 | - add a make_immutable method which does nothing(!), for even more |
409 | Moose compat (nothingmuch's idea) |
410 | |
ed00ef38 |
411 | 0.05 Thu Jul 17 01:53:20 2008 |
6681e09c |
412 | * Mouse::Role |
413 | Mouse::Meta::Role |
414 | Mouse |
80be11ca |
415 | Squirrel::Role |
416 | - Begin adding roles! Attributes are mostly there. Still experimental. |
417 | |
418 | * Mouse::Meta::Class |
419 | Mouse::Object |
420 | - Add clone_object and clone_instance (nothingmuch) |
421 | |
422 | * Mouse::Object |
423 | - Add BUILDARGS (nothingmuch) |
424 | |
425 | * Mouse::Meta::Attribute |
426 | Mouse::Object |
427 | - Add "before" and "around" triggers. Moose doesn't even have them yet! :) |
6681e09c |
428 | |
c5cbafa4 |
429 | * Everywhere |
430 | - Improvements to the MOP (e.g. Class->add_method) |
431 | |
a7f212f1 |
432 | * (build) |
433 | - Excise dependency on Test::Warn, we only used it in one simple test |
434 | |
a3525e9f |
435 | 0.04 Tue Jun 17 04:56:36 2008 |
1bfebf5f |
436 | * Mouse |
437 | Mouse::Meta::Attribute |
438 | - Add support for has '+name' |
80be11ca |
439 | - Add lazy_build (nothingmuch) |
66efb1c8 |
440 | |
74be9978 |
441 | 0.03 Thu Jun 12 21:54:07 2008 |
1bfebf5f |
442 | * Mouse |
443 | - Add before/after/around, courtesy of Class::Method::Modifiers |
b7a74822 |
444 | |
1bfebf5f |
445 | * Mouse::Object |
446 | - Add support for ->new({...}) |
447 | - Use compute_all_applicable_attributes in the constructor to get the |
448 | attributes of superclasses |
449 | - Add better support for undef init_arg |
ad67865f |
450 | |
1bfebf5f |
451 | * Mouse::Meta::Class |
452 | - More methods: compute_all_applicable_attributes, has_attribute |
66eea168 |
453 | |
454 | 0.02 Wed Jun 11 01:56:44 2008 |
1bfebf5f |
455 | * Squirrel |
456 | - Add Squirrel which acts as Moose if it's already loaded, otherwise |
457 | Mouse (thanks nothingmuch) |
66eea168 |
458 | |
1bfebf5f |
459 | * Mouse::Meta::Object |
460 | - Fix the order in which BUILD methods are called (thanks Robert |
461 | Boone) |
66eea168 |
462 | |
463 | 0.01 Tue Jun 10 02:13:21 2008 |
1bfebf5f |
464 | * Initial release. |
c3398f5b |
465 | |