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