Checking in changes prior to tagging of version 0.81.
[gitmo/Mouse.git] / Changes
CommitLineData
c3398f5b 1Revision history for Mouse
927982b4 2
ce1cb320 30.81 2010-10-28 21:49:40
4 [BUG FIXES]
5 * Roles which attributes has no methods could affect cache invalidation
6
b11787bf 70.80 Wed Oct 6 00:15:49 2010
8 [BUG FIXES]
9 * Resolve RT #61906 (Syohei Yoshida): A single 'accessor' did
10 not define the method for the attribute
11
c6a03cb1 120.79 Tue Oct 5 19:26:11 2010
13 [BUG FIXES]
14 * Fix a mis-use of aTHX_/pTHX_ in XS (Vincent Pit)
15
6a7756cc 160.78 Tue Oct 5 15:27:13 2010
17 [BUG FIXES]
18 * Resolve RT #61852 (Vincent Pit): Parametrized type constraints didn't
19 call their "where" clause anymore.
20 * Mouse::Object::DESTROY could fail to call DEMOLISHes in some cases
21 (reported by @typester).
22
26f0aa17 230.77 Wed Sep 29 21:35:11 2010
dc542496 24 [BUG FIXES]
26f0aa17 25 * Fix tests failed against 5.6.2
dc542496 26 * Combination of 'isa' and 'does' for has() sugar was incorrectly
0b54ae38 27 proccessed in Mouse::PurePerl.
28 * Fix foreign class checking routines. Please update MouseX::Foreign.
dc542496 29
a7e3b78e 300.76 Tue Sep 28 16:10:31 2010
31 [BUG FIXES]
32 * Workaround 5.6.problems
33 * Fix edge cases of handles => sub { ... }
34 * Aoid warnigs on attribute cloning
35
32ec255c 360.75 Mon Sep 27 15:07:03 2010
ad2193e8 37 [BUG FIXES]
38 * Diamond inheritanc without C3 mro cauld cause problems in Mouse::XS
39
825f7cda 400.74 Sun Sep 26 11:46:29 2010
41 [BUG FIXES]
42 * Workaround Test::Builder2 problem again.
43 Loading Mouse before loading Test::Builder 2.00_01 could causes SEGV,
44 so I ensure to load Test::Builder first.
45 * Fix some compatibility issues on perl 5.6.2
46
b0d52f03 470.73 Sat Sep 25 21:49:30 2010
48 [BUG FIXES]
49 * Resolve RT #61613 (Brett)
50
01d4f728 510.72 Sat Sep 25 20:47:51 2010
c511de8e 52 [BUG FIXES]
01d4f728 53 * Internal refatoring has removed a number of incompatibilities
54 in Mouse::PurePerl.
55 * Error messages from duck types are now compatible with Moose.
c511de8e 56
43c1bb1a 570.71 Fri Sep 24 19:51:04 2010
ea2bc86c 58 [CHANGES]
59 * Inheritance from non-Mouse classes now produces warnings.
60 Use MouseX::Foreign if you want this type of inheritance.
2866c945 61 * A new module Mouse::Meta::Role::Application has been added.
62 It doesn not affect public APIs, but internals are radically
63 changed. For users, using Mouse without roles should consume
64 less memory.
ea2bc86c 65
66 [BUG FIXES]
67 * Meta class reinitialization caused by Mouse::Util::MetaRole
68 did not work correctly
69
86eb0b5e 700.70 Fri Sep 17 19:07:02 2010
71 [BUG FIXES]
72 * Delegations ignored method modifiers
73
aa36910f 740.69 Mon Sep 13 14:04:41 2010
75 [BUG FIXES]
76 * Workaround a problem with Test::Builder 2.00_01, which could cause
77 SEGV (the HEAD in the repository of tb2 is okay)
78
d5888732 790.68 Sat Sep 11 16:24:42 2010
80 [CHANGES]
81 * Remove an optional depenency, Data::Util.
82 This is used to make method modifiers faster, but the effect
83 is limited to 'before' and 'after' modifiers. Rather,
84 D::U's modifiers are slightly different from the standalone version,
85 and sometimes the difference caused problems.
86
12f4a95a 870.67 Fri Sep 10 13:56:38 2010
88 [BUG FIXES]
89 * Oops! Fix a mistake of removing neccesary denepdencies
90
c06ab429 910.66 Fri Sep 10 13:30:41 2010
92 [BUG FIXES]
93 * Workaround older perl's bug that caused segv in throwing errors
94 * Fix looks_like_number portability
95
960.65 Thu Sep 9 13:30:33 2010
e8faa787 97 [CHANGES]
98 * An attribute in a subclass can now override the value of "is"
99 (Moose 1.07 feature)
ab2ab070 100 * Remove long deprecated methods:
1038bfa9 101 _create_args(), compute_all_applicable_attributes(),
102 and clone_instance()
103
104 [BUG FIXES]
105 * Fix tests that misused test functions. This problem was revealed
106 by Test::Builder2
107 * Improve C++ compatibility in Mouse::XS
e8faa787 108
d88885bd 1090.64 Mon Jul 26 20:48:13 2010
2fbd7523 110 [BUG FIXES]
111 * Build failure on 5.13.3
112
113 [CHANGES]
114 * Illegal inheritance options for clone_and_inherit_options()
115 is now a black list, not a white list (Moose 1.09 feature)
116 * Remove long deprecated methods in Mouse::Meta::Attribute:
117 clone_parent, get_parent_args, canonicalize_args, create
118
7e0e6837 1190.63 Tue Jul 20 19:26:30 2010
01f38ab1 120 [CHANGES]
121 * Resolve RT#59460: Test::Requires is not a required prerequisite unless
122 release-testing... (Curtis Jewell)
123 See also https://rt.cpan.org/Public/Bug/Display.html?id=59460
124
7e0e6837 125 [FEATURES]
126 * Add Mouse::Util::TypeConstraints::register_type_constraint()
127 (Vincent Pit)
128 See also https://rt.cpan.org/Public/Bug/Display.html?id=59539
129
0a3d3fdb 1300.62 Tue Jul 6 20:18:58 2010
131 [FEATURES]
132 * Support MouseX::StrictConstructor (gfx)
133
913b5964 1340.61 Sat Jun 19 15:35:48 2010
135 [BUG FIXES]
136 * Workaround the Perl_call_sv() problem again (gfx)
137 * Update Module::Install to 0.99 for older versions of perls (gfx)
138
17ae5974 1390.60 Wed Jun 9 19:43:55 2010
140 [CHANGES]
141 * BUILDALL is now called by Mouse::Meta::Class::new_object, rather than
142 by Mouse::Object::new. (Moose 1.05)
143
144 [BUG FIXES]
145 * Fix type constraint validation messages to not include the string
146 'failed' twice in the same sentence. (Moose 1.05)
147 * Resolve RT #57975: The prefix "Exception caught" is no longer added
148 to exceptions Mouse catches. (gfx)
149
150 [OTHERS]
151 * A difficult test (t/900_mouse_bugs/006_RT69939.t) will be skipped on
152 some platforms. (gfx)
153
8f0a0704 1540.59 Tue May 18 16:29:57 2010
155 [CHANGES]
156 * Improve error messages on $class->accessor() (gfx)
157
af4995e2 1580.58 Sat May 8 11:18:17 2010
159 [BUG FIX]
160 * Compliant with 5.12.0+
161
1d7d294f 1620.57 Fri May 7 14:27:00 2010
163 [BUG FIX]
164 * Resolve RT #57144: Fix problems in Perl_call_sv() again (gfx)
165
f15e8041 1660.56 Thu Apr 29 11:15:45 2010
167 [BUG FIX]
168 * Resolve RT#56837: Role application to instance with init_arg'd
169 attributes caused problems (Sanko Robinson)
170
ca980dc4 1710.55 Wed Apr 21 13:27:13 2010
f15e8041 172 [BUG FIX]
ca980dc4 173 * Fix a bug that traits could cause panic/SEGV on threads (gfx)
174
1759509c 1750.54 Sat Apr 17 17:15:54 2010
176 [BUG FIX]
177 * Resolve RT#56523: has with reader, writer, lazy and builder
178 could not create a write-only accessor (Michael G Schwern)
179
6cd9dfb6 1800.53 Sun Apr 11 11:39:03 2010
181 [BUG FIX]
182 * Mouse::Meta::Class could not clone objects with "required" attrs (gfx)
183
fdef448e 1840.52 Sat Mar 27 15:38:52 2010
185 * Workaround Perl-RT#69939 (eval "use $module" in Perl_call_sv()
186 may cause segmentation faults,
187 http://rt.perl.org/rt3/Public/Bug/Display.html?id=69939)
188
1f6046f0 1890.51 Mon Mar 15 15:25:58 2010
190 SUMMARY
191
192 [BUG FIXES]
193 * Mouse::Object::DESTROY could cause SEGVs
194 * Attribute triggers could cause panics
0a3d3fdb 195 * Integers > 2**32 were not groked as Int
1f6046f0 196 * Incorrect types, e.g. "Array[Int", was accepted
197 * Metaclass compatibility was sometimes ignored
198
199 [MOOSE COMPATIBILITY]
200 * before/around/after accept regular expressions
201 * has() becomes strict
202 * the global destruction flag is passed to DEMOLISH methods
203 * Delegations can be curried
204 * Built-in type constraints have the same hierarchy as Moose's
205
206
2070.50_09 Mon Mar 15 12:02:28 2010
123fd4f8 208 * (re)fix RT #55048 to grok 2**46+0.5 as Int, but
209 accept 2**46 as Int even on 32 bit environments;
210 note that an Int is exactly what is matched to /^[+-]?[0-9]+$/,
211 so 10e100 will not be groked as Int (gfx)
212
78a4b129 2130.50_08 Thu Mar 11 19:28:58 2010
214 * Makefile.PL
215 - Resolved #55419: Add Devel::PPPort to build_requires (gfx)
8a3fa349 216 * Mouse::Exporter
217 - Turns on warnings FATAL => 'recursion' by default (gfx)
d18ffd12 218 * Mouse::Util::TypeConstraints
219 - Change the type parser to check syntax (gfx)
220 (Now it throws erros to "ArrayRef[]", "ArrayRef[Int", etc.)
221
80680661 2220.50_07 Sun Mar 7 19:59:37 2010
223 * Mouse::Meta::Attribute
224 - Fix a possible panic, caused by triggers, reported by
225 Nobuo Danjou (gfx)
226
6e1e5b31 2270.50_06 Tue Mar 2 18:35:12 2010
228 * Mouse::PurePerl
229 - Fix an issue on metaclass compatibility again (gfx)
230 - Fix more-than-32-bit-int progrem again (gfx)
231
98a8fd12 2320.50_05 Mon Mar 1 11:18:26 2010
233 * Mouse::Util::TypeConstraints
234 - Mouse used an incorrect cast at the C-level which meant that
1f1ccccd 235 its idea of numbers was different from that of Perl's (and
98a8fd12 236 Mouse's). Notably > 2**32 Integers on 32 bit systems didn't
123fd4f8 237 work, RT #55048 (AEvar).
98a8fd12 238 * Mouse::Meta::Classs
239 - Fix an issue on metaclass compatibility (gfx)
1f1ccccd 240
c2168931 2410.50_04 Fri Feb 26 18:57:24 2010
242 * All
243 - Warnings are less noisy, as shown by example/warns.pl (gfx)
244 - Various optimization and refactoring (gfx)
245
4bc73e47 2460.50_03 Mon Feb 22 17:56:47 2010
d503a4f3 247 * Mouse::Meta::Attribute
248 - Catch up about Moose 0.84 about warnings (gfx)
249 - If an attribute generates no accessors, it will be warned
250 - If both 'isa' and 'does' are specified and 'isa' does not do
251 'does', then it will be warned
70425827 252 * Mouse::Object
253 - Fix a possible segv which is caused by destructors (gfx)
df448257 254 * Mouse::Util::TypeConstraints
255 - Implement the built-in type hierarchy (gfx)
256
d990f791 2570.50_02 Sat Feb 20 14:37:16 2010
c28783ef 258 * Mouse::Meta::Attribute
259 - Implement argument currying for delegation (gfx)
06c067b9 260 * Mouse::Meta::Method::Constructor
d990f791 261 - Implement strict constructors experimentally, which will warn
262 unkown constructor arguments (gfx)
c28783ef 263
05a12aa4 2640.50_01 Sat Feb 13 16:39:48 2010
3bf1e61f 265 * Mouse
c28783ef 266 - before/around/after now accept regexps (gfx)
1fc94910 267 * Mouse::Object
268 - Support the global destruction flag in DEMOLISH (gfx)
0d5a1d74 269 * Mouse::Meta::Attribute
270 - Attribute constructors now warn very noisily about unknown (or
271 misspelled) arguments (gfx)
272
1fc94910 273
e9148d13 2740.50 Mon Feb 8 13:43:19 2010
275 * Mouse::Tiny
276 - Allow "use Mouse::Tiny VERSION" with a patch contributed by
277 chocolateboy, RT #54383 (gfx)
6e96640e 278 * Mouse::Util::MetaRole
279 - Add Mouse::Util::MetaRole::apply_metaroles
280 to catch up the latest Moose API for metaroles (gfx)
281
01e830f7 2820.49 Tue Feb 2 12:58:45 2010
283 * MouseAccessor.xs
284 - Fix RT #54203 that writers might return undef in setting values
285 reported by chocolateboy (gfx)
286
ede063cc 2870.48 Sun Jan 31 17:53:31 2010
01e830f7 288 * MouseTypeConstraints.xs
289 - Fix magic handling in type constraints reported by sunnavy (gfx)
ede063cc 290
bd76a699 2910.47 Fri Jan 15 15:07:21 2010
292 * Makefile.PL
293 - Shipped with M::I::XSUtil 0.21 (gfx)
ede063cc 294 - Fix an issue that gcc 4.0 don't support -Wc++-compat (gfx)
bd76a699 295 * Mouse
296 - Add a caveat on XS callbacks to the pod (gfx)
297
8c235ea7 2980.46 Sat Jan 9 17:54:30 2010
939c3d87 299 * Mouse::Meta::Attribute
300 - Add support for code references for handles
301 patched by Frank Cuny (gfx)
302 * Mouse::Util::TypeConstraints
303 - Fix Str and ScalarRef for typeglobs, lvalues, and etc. (gfx)
304 * oose.pm
305 - Add Moose::Util::TypeConstraints exports to allow easier testing
306 of TypeConsraints from the command line (gfx)
307
267711f7 3080.4501 Tue Dec 22 16:02:15 2009
309 * Fix an issue on circular dependencies (RT #52939, thanks to t0m)
310 - (see also http://rt.cpan.org/Public/Bug/Display.html?id=52939 )
311
81fd550d 3120.45 Sat Dec 19 17:22:46 2009
e6996029 313 * Fix filename portability issue (RT #52828, thanks to Peter Edwards)
314
f178e757 315 * Fix an issue that definitions of anonymous types could fail (gfx)
316
63d3339b 317 * Mouse::Meta::Attributes
318 - Add set_value/get_value/has_value/clear_value (gfx)
81fd550d 319 (Note that thsese methods are depend on the accessors)
63d3339b 320
321 * Test::Mouse
322 - Add with_immutable (gfx)
323
58e41d63 3240.44 Wed Dec 9 21:43:21 2009
276dbb23 325 * Shipped with Module::Install::XSUtil 0.19 (gfx)
326
58e41d63 327 * Test::Mouse
276dbb23 328 - Added (gfx)
58e41d63 329
330 * Mouse::Util::TypeConstraints
276dbb23 331 - Add duck_type (gfx)
ec0ef258 332
c565ffb3 3330.43 Mon Dec 7 14:21:59 2009
334 * Improve documents
335
336 * Mouse::Meta::Module
337 - Remove undocumented has_package_symbol and get_package_symbol (gfx)
e83a2ae7 338 (They are introduced in 0.41, but seem useless in Mouse)
c565ffb3 339
5176a3e4 3400.42 Sat Dec 5 16:05:06 2009
341 * Fix a PAUSE indexing issue (gfx)
342
4c0fe06f 3430.41 Sat Dec 5 15:00:33 2009
21276ee2 344 * This is the first stable version of Mouse::XS
4c0fe06f 345 - Mouse::XS is about 2 times faster than Mouse::PurePerl
21276ee2 346
4c0fe06f 347 * SUMMARY
21276ee2 348 - Many stuff are now in XS
4c0fe06f 349 - Support "use Mouse -traits => ..." subdirective
350
351 * INCOMPATIBILITY CHANGES (but compatible with Moose)
352 - The type of default value is constrained correctly
353 - The default values is weakend correctly
354 - BUILDALL/DEMOLISHALL are no longer called
21276ee2 355
506fb74d 3560.40_09 Thu Dec 3 13:42:17 2009
00822cc3 357 * Mouse
358 - Remove @Mouse::EXPORT, which was no longer used (gfx)
359
360 * Mouse::Role
361 - Remove @Mouse::Role::EXPORT, which was no longer used (gfx)
362
363 * Mouse::Util
364 - Fix a bug which caused segv on 5.6.2 (gfx)
365
366 * Mouse::Meta::Module
367 - Add has_package_symbol and get_package_symbol (gfx)
368
369
3700.40_08 Thu Nov 26 21:36:49 2009
e0b77af5 371 * Mouse::Exporter
372 - Add the "-traits => ..." subdirective (gfx)
373
374 * Mouse::Meta::Class
375 - Add metaclass incompatibility resolution (gfx)
376
8aba926d 3770.40_07 Tue Nov 17 18:28:57 2009
378 * Mouse::Util::MetaRole
379 - Implemented, but there are many to be done (gfx)
380
381 * Mouse::Meta::Method::Accessor
382 * Mouse::Meta::Method::Constructor
383 - Fix a bug that default values are not weaken()ed (gfx)
384
3850.40_06 Mon Nov 16 17:21:10 2009
1e582397 386 * Shipped with Module::Install::XSUtil 0.17 (gfx)
22e52758 387 * Mouse::Object
0d615023 388 - BUILDALL and DMELISHALL are no longer called by the default ctr/dtr,
1e582397 389 because generated ctrs/dtrs have never call them anyway (gfx)
390 - new and DESTROY are now in XS (gfx)
391
aee75235 3920.40_05 Mon Nov 2 11:59:01 2009
75c9081b 393 * Shipped with Module::Install::XSUtil 0.16 (gfx)
aee75235 394
3950.40_04 Tue Nov 1 11:58:27 2009
75c9081b 396 * Implement type constraint generators in XS (gfx)
6a97bbda 397
766af1c2 3980.40_03 Fri Oct 30 12:03:58 2009
75c9081b 399 * Update Module::Install::XSUtil to 0.15 (gfx)
766af1c2 400
3feac481 4010.40_02 Tue Oct 27 15:04:10 2009
75c9081b 402 * Add the Mouse::XS documentation (gfx)
9a5d1ed3 403
404 * Mouse::Meta::Method::Accessor
75c9081b 405 - Apply type constraints to default values as Moose does (gfx)
4ab8bb8f 406
56ccf870 4070.40_01 Mon Oct 26 17:31:23 2009
75c9081b 408 * Add an optional XS implementation (gfx)
b06ce1f5 409
1f817abe 4100.40 Mon Oct 19 18:30:32 2009
411 * Mouse::Meta::TypeConstraint
75c9081b 412 - Fix a subtyping issue (Thanks miyagawa san) (gfx)
1f817abe 413 * Mouse/Mouse::Role
75c9081b 414 - Now export their sugars to the "main" package (gfx)
1f817abe 415
4353bfe1 4160.39 Tue Oct 13 16:42:31 2009
417 * Fix RT #50421 (Thanks Michael G Schwern)
418 * Fix RT #50422 (Thanks Michael G Schwern)
419
4200.38 Tue Oct 13 15:40:39 2009
6106ed03 421 * No code changes from 0.37_06
518b3489 422
6106ed03 423 * SUMMARY from 0.37 to 0.38
424 - Add documents about compatiblity and incompatibility to Mouse::Spec
6106ed03 425 - Refactor type constraints and type coercions
426 - Now ArrayRef[Foo | Bar] is parsed correctly
427 - Type coercions are stored in type constraint objects
6106ed03 428 - Add Mouse::Exporter for import/unimport methods
6106ed03 429 - Make roles applicable to instances
6106ed03 430 - Implement inner/augment keywords
6106ed03 431 - Port a lot of Moose's tests
6106ed03 432 - Fix a lot of bugs
83fd4df5 433
434
455994cf 4350.37_06 Mon Oct 12 16:34:18 2009
b3ae10c7 436 * Mouse::Meta::Attribute
437 - Support handles => qr/pattern/ in has() (gfx)
438
439 * Mouse::Meta::Method::Destructor
440 - Locallize $@ and $? in DESTROY as Moose does (gfx)
441
455994cf 442 * Mouse::Meta::Role
443 - Fix role application to instances (gfx)
444
b3ae10c7 445 * Tests
446 - Move t/*.t to t/001_moose/
7cfe5d54 447
6f16d3ce 4480.37_05 Fri Oct 9 15:21:43 2009
9c72aa8c 449 * Mouse::Exporter
450 - Add build_import_methods() (gfx)
451
452 * Mouse::Spec
b644ef5d 453 - Add notes about Moose::Cookbook (gfx)
1639e480 454
455 * Fix some minor bugs (gfx)
456
1dc1f3f1 4570.37_04 Thu Oct 8 20:49:11 2009
c38b841a 458 * Mouse::Meta::Role::Composite
459 - Fix and improve role composition mechanism (gfx)
460
1dc1f3f1 461 * Import a number of tests from Moose, and fix various bugs (gfx)
c38b841a 462
b1a89a06 463 * Mouse::Tiny is always generated in Makefile.PL (gfx)
464
edd20f48 4650.37_03 Wed Oct 7 21:10:05 2009
af8f95f4 466 * Mouse::Exporter
467 - Add Mouse::Exporter (gfx)
468 * Mouse::Meta::Method::Constructor
469 - Optimize generated constructors (gfx)
1f0c967a 470 * Mouse::Meta::Role
471 - Implement role application to instances (gfx)
62cb9505 472
f5511684 4730.37_02 Sun Oct 4 17:29:15 2009
53a7a312 474 * Mouse
475 - Implement the argument/inner keywords
4f90d9ae 476 * Mouse::Meta::Attribute
2e202fdb 477 - Add get_read_method_ref() and get_write_method_ref() (gfx)
53a7a312 478 - Add find_attribute_by_name() (gfx)
2e202fdb 479 - Fix clone_and_inherit_options() to deal with 'traits' (gfx)
480 * Mouse::Util
481 - Fix meta() method, which was not tested (gfx)
53a7a312 482 * Tests
483 - Port t/010_basics/*.t from Moose
4f90d9ae 484
327475b7 4850.37_01 Thu Oct 1 15:32:58 2009
2e202fdb 486 * Type coercions are stored to type constraints (gfx)
2929db0a 487
2e202fdb 488 * Refactor the type parser to parse 'ArrayRef[Object|Int]' (gfx)
2929db0a 489
2e202fdb 490 * Remove Class::MOP specific subroutines from Mouse::Meta::Module (gfx)
327475b7 491 (this change might be reverted in the release version)
b61e0c46 492 - version, authority, identifier,
493 get_all_metaclasses, store_metaclass_by_name,
494 weaken_metaclass, does_metaclass_exist, remove_metaclass_by_name
495
2e202fdb 496 * Add new public utilities to Mouse::Util (gfx)
b61e0c46 497 - class_of, the counterpart for Class::MOP::class_of
498 - get_metaclass_by_name for Class::MOP::get_metaclass_by_name
499
500
31920032 5010.37 Mon Sep 28 10:48:27 2009
0a46aaa0 502 * Ensure backward compatibility by author/test-externa.pl (gfx)
503
504 * Change the algorithm of has_method() for backward compatibility (gfx)
505
31920032 506 * $ENV{MOUSE_VERBOSE}=1 for Moose-compatible warnings (gfx)
0a46aaa0 507
04493075 5080.36 Sun Sep 27 16:53:06 2009
509 * Fix an issue that breaks backward compatibility (gfx)
510 - MouseX::Attribute does work, although make tests doesn't pass
511
81625179 5120.35 Sat Sep 26 12:38:27 2009
513 * Work around Test::Exception 0.27_0x by including authorized ver. (gfx)
514
a573851d 5150.34 Fri Sep 25 21:55:48 2009
32a0f864 516 * Make sure to work on 5.6.2 (gfx)
eb88905f 517
32a0f864 518 * Remove Class::Method::Modifiers dependency (gfx)
7ca5c5fb 519
32a0f864 520 * Remove testing modules from inc/ (gfx)
521
522 * Put t/019-handles.t on ice (gfx)
7a1781ae 523
639f39ef 5240.33_01 Thu Sep 24 16:16:57 2009
121acb8a 525 * Implement traits => [...] in has() (gfx)
526
5270.33 Wed Sep 23 15:06:40 2009
39f9498f 528 * Fix RT #49902: 0.32 fails tests reported by GRUBER (gfx)
529
47a8794f 530 * Add some tests
531
b2a583f8 5320.32 Tue Sep 22 16:44:57 2009
533 * Add many tests copied from Moose (gfx)
7a50b450 534
b2a583f8 535 * Fix Mouse::Util::find_meta() and Mouse::Util::does_role() (gfx)
7a50b450 536
53c495ce 537 * Fix the timing triggers are invoked (gfx)
538
b2a583f8 539 * Implement confliction checks in roles
540
541 * work around create() and create_anon() in Mouse::Meta::Role
3c429663 542
b2a583f8 5430.31 Tue Sep 22 11:08:12 2009
7b133c92 544 * Add find_meta() and does_role() to Mouse::Util (gfx)
545
809fc2c7 546 * Fix tests using Class::Method::Modifiers to be skipped correctly (gfx)
547
548 * Remove Test::Mouse, which was accidentally included (gfx)
549
9c6ff002 5500.30 Mon Sep 21 16:43:05 2009
7b133c92 551 * Implement RT #46930 (accessor/reader/writer in has()) (gfx)
3c429663 552
9c6ff002 553 * Work around anonymous classes as mortal classes (gfx)
ad022aac 554
555 * Implement with $role => -exlucdes => [...] (gfx)
556
557 * Implement get_method() in M::Meta::Class and M::Meta::Role (gfx)
558
eb05b8be 559 * Make get_method_list() compatible with Moose's (gfx)
5f6a73cb 560
eb05b8be 561 * Make unimport() not to remove non-Mouse functions (blessed and confess) (gfx)
5f6a73cb 562
eb05b8be 563 * Remove a lot of duplication code (gfx)
5f6a73cb 564
324d3602 565 * Support is => 'bare', and you must pass and 'is' option to has() (gfx)
9c85e9dc 566
15b4faa9 5670.29 Thu Sep 17 11:49:49 2009
93ac97dd 568
15b4faa9 569 * role class has ->meta in method_list, because it does in Moose since 0.9
93ac97dd 5700.28 Wed Sep 8 20:00:06 2009
e650ba5b 571 * Alter Makefile.PL so in author mode we generate lib/Mouse/Tiny.pm on
572 every run so that 'make dist' actually does what it's meant to (mst)
2bcb073f 573
e0541d44 574 * Only unlink Mouse::Tiny if it exists, otherwise autodie pitches
575 a fit (miyagawa)
26b84079 576
577 * Make auto_deref also handles isa not only ArrayRef and HashRef, but also
578 ArrayRef[Foo::Bar] and HashRef[Foo::Bar]
e0541d44 579
9f917442 5800.27 Thu Jul 2 15:17:37 2009
581 * Doc updates (Sartak)
582
583 * Include missing Mouse::Tiny
fc352e2d 584
f81e2ecb 5850.26 Wed Jul 1 13:39:30 2009
9cc87fff 586 * Fix failing tests by requiring a newer Moose in that test (t0m)
48bf3a6a 587
b79fc28f 5880.25 Fri Jun 19 12:05:42 2009
589 * Fix SIGNATURE (reported by daxim) ... by removing it :)
efeb6d0c 590
34a90485 5910.24 Mon Jun 15 14:47:18 2009
592 * Moose's construct_instance is deprecated, use new_object (tokuhirom)
593
594 * Improve Mouse::Tiny generation (tokuhirom)
595
596 * Inlining destructor fixes (tokuhirom)
597
598 * Add Mouse->init_meta (tokuhirom)
599
600 * Fix failing tests by requiring a newer Moose in that test (Sartak)
eb6f4444 601
b03fda9f 602 * Don't warn in tests about Squirrel deprecations (Sartak)
603
25db76ef 6040.23 Wed May 27 16:52:28 2009
dad3c1af 605 * Take the mro::linearized_isa DEMOLISHALL fix from Moose
606 (originally by doy)
607
608 * Mouse::class_of to mirror Class::MOP::class_of
d5b41c02 609
6d86b341 6100.22 Tue Apr 21 03:26:43 2009
611 * Regenerate broken signature (Sartak)
dad3c1af 612 reported by Michael Gray [rt.cpan.org #45167]
6d86b341 613
614 * does_role now checks parent classes (tokuhirom)
615
616 * Fix for $_ not being available type constraint messages (Sartak)
124fa027 617
240454c2 6180.21 Sat Apr 11 13:52:11 2009
7a96b336 619 * clone_instance has been made private, like in Moose (tokuhirom)
6b646f93 620
7a96b336 621 * Fix method modifiers applying to the wrong class (gfuji)
622 reported by Heikki Lehvaslaiho in [rt.cpan.org #42992]
d9b661d3 623
7a96b336 624 * Fix test failures when user does not have C::Method::Modifiers(::Fast)
625 installed (Joel Bernstein)
626
627 * use get_all_attributes instead of
628 compute_all_applicable_attributes (tokuhirom)
629
630 * fixed pod bug (tokuhirom)
631 reported by Ryan52 in [rt.cpan.org #44928]
632
633 * Parameterized type constraints can now have messages (tokuhirom)
6b646f93 634
5893ee36 635 * Added documentation about type constraints (Mark Stosberg)
6b646f93 636
6370.20 Thu Apr 9 20:22:33 2009
2df74b3a 638 * Squirrel is now deprecated. Use Any::Moose instead (Sartak)
639
cf33c3d9 640 * To improve Moose compat, the third argument to trigger
641 (the attribute metaobject) has been removed (Sartak)
642
643 * To improve Moose compat, a single undef passed to new
644 is now disallowed (Sartak)
c3398f5b 645
31a5ba2c 646 * Implemented Mouse::Object->does (wu-lee)
647
648 * Implemented override and super functions for Mouse::Role.
649 (wu-lee)
927982b4 650
31a5ba2c 651 * Implemented stub augment and inner functions for Mouse::Role,
652 which merely throw an exception as in Moose::Role. (wu-lee)
927982b4 653
31a5ba2c 654 * Stole more tests from Moose (020_roles/*). Not all these pass
655 yet; the rest have been moved to 020_roles/failing for later
656 examination. (wu-lee)
927982b4 657
31a5ba2c 658 * Implemented Mouse::Role->does_role. This does not yet quite
659 seem to pass all the tests it should. (wu-lee)
927982b4 660
31a5ba2c 661 * Fixed bug in Mouse::Meta::Role->apply and ->combine_apply, so that
662 030_roles/002_role.t tests pass. (wu-lee)
927982b4 663
31a5ba2c 664 * Implemented ->version, ->authority and ->identifier methods in
665 Mouse::Meta::Role and Mouse::Meta::Class (mainly to make more
666 Moose tests pass). (wu-lee)
667
bf1b613a 668 * Implemented emulations of Class::MOP's metaclass accessors
669 (get_metaclass_by_name etc.) in Mouse::Meta::Class.
670
31a5ba2c 671 * Mouse attribute property 'isa' now accepts Role names. (wu-lee)
672
673 * Fixed bug: typecoercion application order was reversed. (wu-lee)
674
675 * Fixed bug: inlined constructor was invoking BUILD methods in
676 wrong order. (wu-lee)
65715de3 677
678 * Fixed bug: immutable constructor now redispatches correctly to
679 Mouse::Object::new when used in derived classes (wu-lee).
c9aefe26 680
927982b4 681 * Maybe parameterized type constraint (lestrrat)
682
683 * Performance improvements! (tokuhirom)
684
685 * Improve Moose compat of class_type (lestrrat)
686
687 * Many type-constraint fixes (tokuhirom and lestrrat)
688
689 * Mouse::Meta::Class->has_method and ->get_attribute_list (tokuhirom)
690
691 * Add get_all_attributes, use it internally instead of
692 compute_all_applicable_attributes (nothingmuch)
693
df9e57e8 6940.19 Sun Mar 8 04:38:01 2009
f96bd2aa 695 * Parameterized type constraints for ArrayRef and HashRef (lestrrat)
696
697 * Allow extensible attribute metaclass in traits too(tokuhirom)
698
699 * Don't use method modifiers in a test since they may not be
700 available (Sartak)
c4ec7642 701
423b9699 7020.18 Fri Mar 6 19:09:33 2009
703 * Fix the issue preventing Mouse usage on Perl 5.6 - a bug in older
704 Scalar::Util! (tokuhirom)
705
706 * Allow extensible attribute metaclass (tokuhirom)
707
708 * Optimization for method modifiers (tokuhirom)
709
710 * Implement Mouse->import({into_level => 1}) (tokuhirom)
711
712 * Support for Class->meta->add_attribute($name => %options) (tokuhirom)
713
714 * Throw a more useful error message when trying to use a parameterized
715 type (Sartak)
c3a83939 716
949738a8 7170.17 Tue Feb 17 20:10:29 2009
388b8ebd 718 * Load mro directly if Perl is recent enough (Nicholas Clark)
719
df963a63 720 * Add dump method from Moose::Object into Mouse::Object (perigrin)
721
949738a8 722 * Add role-role composition (tokuhirom)
723
d8edb5a0 7240.16 Mon Feb 9 20:56:27 2009
60cfc6ad 725 * Implement get_all_method_names
67fb42e0 726
01904723 727 * Support for anonymous enums: enum [elements]
728
d8edb5a0 729 * Moose's make_immutable returns true allowing calling code to skip
730 setting an explicit true value at the end of a source file. (obra)
731
4d33522c 7320.15 Thu Feb 5 11:44:05 2009
7daedfff 733 * Don't export Mouse's sugar into the package 'main'
8aeec00e 734
3b46bd49 735 * Rename Mouse::TypeRegistry to Mouse::Util::TypeConstraints
736
0d9fea22 737 * "type" sugar for when you're not subtyping anything
738
7dbebb1b 739 * Keep track of the source package of each type
740
96dbfdb7 741 * Moose lets you redefine a type within the same package, so we now do too
742
743 * Borrow more of Moose's meta API
a5fc1e9a 744
96dbfdb7 745 * Mouse::Util::TypeConstraints now uses Exporter so you can select which
746 sugar you want
747
748 * class_type shouldn't load the class (Moose compat; no easy fix :/)
4859d490 749
96dbfdb7 750 * suppress warnings when we use "around" and "has '+...'" (dann)
4859d490 751
96dbfdb7 752 * use Data::Util to make method modifiers fast if it's available (dann)
47b5feb9 753
a22b1fed 754 * Implement "enum" type constraints
755
756 * Implement "override" and "super"
757
4786262b 758 * MouseX::Types is now in its own dist
759
1595b996 7600.14 Sat Dec 20 16:53:05 2008
761 * POD fix
762
763 * Document what changes tokuhirom and Yappo made (see below)
4216fc14 764
25b08198 7650.13 Tue Dec 16 02:01:40 2008
a9d1cb9d 766 * Pass in the instance to the default sub in the constructor (reported with
767 failing tests by rjbs)
fccd2261 768
1595b996 769 * Tons of new features implemented by tokuhirom++ and Yappo++:
770 - method API in classes and roles!
771 - "requires" and "with" for Mouse::Role
772 - Type coercion
773 - Inject a constructor after make_immutable. Huge speedup!
774 - class_type and role_type
775 - Inject a destructor for more speedup
776 - MouseX::Types (may move into its own dist)
777 - create_anon_class
778 - union type constraints (eg 'Str | Undef')
779 - subtypes and sugar for them
de51e718 780
44231509 7810.12 Thu Dec 4 19:23:10 2008
826828bf 782 * Provide Test::Exception function unless it's version 0.27 - RT #41254
783
826828bf 784 * Mouse::Util now provides dies_ok
785
44231509 786 * Make class-like types behave more like Moose; subclasses OK! (rjbs)
787
788 * Steal more tests from Moose
826828bf 789
e4b38f45 7900.11 Sun Nov 2 11:35:04 2008
791 * Throw an error if accessor/predicate/clearer/handles code eval fails
792
793 * Optimizations for generated methods, they should now be on par with Moose
6430d968 794
2498d94c 7950.10 Tue Oct 28 19:23:07 2008
796 * Require a recent Moose (which has the bugfix) for
797 t/500_moose_extends_mouse.t
798
799 * ouse.pm for perl -Mouse one-liners (thanks rjbs)
800
801 * Doc for init_arg => undef (thanks rjbs)
7a024324 802
274aea60 8030.09 Sun Sep 28 22:37:13 2008
804 * Initial version of Mouse::Tiny, a one-file concatenation of the Mouse
805 classes for easy embedding
806
807 * Fixes caused by test failures (Carp not being loaded, Moose being
808 required in a test)
809
5dbc65ee 8100.08 Sun Sep 28 12:46:07 2008
811 * ALL dependencies have been removed!
812
813 * Fixes for Class::Method::Modifiers being required for testing
eab013b2 814
f38ce2d0 8150.07 Sun Sep 28 00:19:07 2008
465af41f 816 * All runtime dependencies have been removed! The only change in
817 functionality (hopefully) is that the Sub::Exporter features can no
818 longer be used (we've backed down to regular Exporter). Scalar::Util is
819 required for "weaken" support, and Class::Method::Modifiers is required
820 for method modifier support, but only if you use these features!
821 Having Scalar::Util and MRO::Compat installed will provide only
822 performance increases.
823
824 * Tests and fixes for extending a Mouse class with Moose (nothingmuch)
825
826 * Support for adding method modifiers to a role, and composing them into
827 classes (we'll get true methods some day)
828
829 * Method modifiers now go through the metaclass instead of invoking
830 Class::Method::Modifiers directly
831
832 * Remove the deprecated before/after/around triggers
833
834 * Roles keywords 'requires' and 'excludes' now throw errors instead of
835 silently doing nothing (they aren't implemented yet)
5c557f4f 836
844fa049 8370.06 Thu Jul 23 02:10:07 2008
838 * Deprecating before/after/around triggers! Switch back to coderef +
839 whatever you used to do. Moose is have it implemented it as an extension
840 trait.
841
e2a1372d 842 * Mouse
843 - updated trigger doc (thanks perigrin)
844fa049 844 - which will not see CPAN :( sorry perigrin!
ed00ef38 845
60e2164a 846 * Mouse::Meta::Class
847 - add a make_immutable method which does nothing(!), for even more
848 Moose compat (nothingmuch's idea)
849
ed00ef38 8500.05 Thu Jul 17 01:53:20 2008
6681e09c 851 * Mouse::Role
852 Mouse::Meta::Role
853 Mouse
80be11ca 854 Squirrel::Role
855 - Begin adding roles! Attributes are mostly there. Still experimental.
856
857 * Mouse::Meta::Class
858 Mouse::Object
859 - Add clone_object and clone_instance (nothingmuch)
860
861 * Mouse::Object
862 - Add BUILDARGS (nothingmuch)
863
864 * Mouse::Meta::Attribute
865 Mouse::Object
866 - Add "before" and "around" triggers. Moose doesn't even have them yet! :)
6681e09c 867
c5cbafa4 868 * Everywhere
869 - Improvements to the MOP (e.g. Class->add_method)
870
a7f212f1 871 * (build)
872 - Excise dependency on Test::Warn, we only used it in one simple test
873
a3525e9f 8740.04 Tue Jun 17 04:56:36 2008
1bfebf5f 875 * Mouse
876 Mouse::Meta::Attribute
877 - Add support for has '+name'
80be11ca 878 - Add lazy_build (nothingmuch)
66efb1c8 879
74be9978 8800.03 Thu Jun 12 21:54:07 2008
1bfebf5f 881 * Mouse
882 - Add before/after/around, courtesy of Class::Method::Modifiers
b7a74822 883
1bfebf5f 884 * Mouse::Object
885 - Add support for ->new({...})
886 - Use compute_all_applicable_attributes in the constructor to get the
887 attributes of superclasses
888 - Add better support for undef init_arg
ad67865f 889
1bfebf5f 890 * Mouse::Meta::Class
891 - More methods: compute_all_applicable_attributes, has_attribute
66eea168 892
8930.02 Wed Jun 11 01:56:44 2008
1bfebf5f 894 * Squirrel
895 - Add Squirrel which acts as Moose if it's already loaded, otherwise
896 Mouse (thanks nothingmuch)
66eea168 897
1bfebf5f 898 * Mouse::Meta::Object
899 - Fix the order in which BUILD methods are called (thanks Robert
900 Boone)
66eea168 901
9020.01 Tue Jun 10 02:13:21 2008
1bfebf5f 903 * Initial release.
c3398f5b 904