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