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