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