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