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