Create class and role type constraints for Moose
[gitmo/Moo.git] / Changes
1 1.000008 - 2013-02-06
2   - Re-export on 'use Moo' after 'no Moo'
3   - Export meta() into roles (but mark as non-method to avoid composing it)
4   - Don't generate an accessor for rw attributes if reader+writer both set
5   - Support builder => sub {} ala MooseX::AttributeShortcuts
6   - Fix 'no Moo;' to preserve non-sub package variables
7   - Switch to testing for Mouse::Util->can('find_meta') to avoid
8     exploding on ancient Mouse installs
9   - Fix loading order bug that results in _install_coderef being treated
10     as indirect object notation
11
12 1.000007 - 2012-12-15
13   - Correctly handle methods dragged along by role composition
14   - Die if Moo and Moo::Role are imported into the same package
15
16 1.000006 - 2012-11-16
17   - Don't use $_ as loop variable when calling arbitrary code (RT#81072)
18   - Bump Role::Tiny prereq to fix method modifier breakage on 5.10.0
19
20 1.000005 - 2012-10-23
21   - fix POD typo (RT#80060)
22   - include init_arg name in constructor errors (RT#79596)
23   - bump Class::Method::Modifiers dependency to avoid warnings on 5.8
24
25 1.000004 - 2012-10-03
26   - allow 'has \@attributes' like Moose does
27
28 1.000003 - 2012-08-09
29   - make setter for weak_ref attributes return the value
30
31 1.000002 - 2012-08-04
32   - remove Devel::GlobalDestruction fallback inlining because we can now
33     depend on 0.08 which uses Sub::Exporter::Progressive
34   - honour BUILDARGS when calling $meta->new_object on behalf of Moose
35   - throw an error on invalid builder (RT#78479)
36   - fix stupid typo in new Sub::Quote section
37
38 1.000001 - 2012-07-21
39   - documentation tweaks and cleanup
40   - ignore required when default or builder is present
41   - document Moo versus Any::Moose in brief with article link
42   - remove quote_sub from SYNOPSIS and has docs, expand Sub::Quote section
43   - localize @_ when inlining quote_sub'ed isa checks (fixes lazy+isa+default)
44   - ensure constructor gets regenerated if forced early by metaclass inflation
45
46 1.000000 - 2012-07-18
47   - clean up doc language and expand on Moo and Moose
48   - error prefixes for isa and coerce exceptions
49   - unmark Moo and Moose as experimental since it's relatively solid now
50   - convert isa and coerce info from external role attributes 
51   - clear method cache after metaclass generation to fix autoclean bug
52
53 0.091014 - 2012-07-16
54   - load overload.pm explicitly for overload::StrVal
55
56 0.091013 - 2012-07-15
57   - useful and detailed errors for coerce in attrib generation
58
59 0.091012 - 2012-07-15
60   - useful and detailed errors for default checker in attrib generation
61   - throw an error when trying to extend a role
62
63 0.091011 - 2012-06-27
64   - re-add #web-simple as development IRC
65   - don't assume Scalar::Util is imported into the current package
66
67 0.091010 - 2012-06-26
68   - isa checks on builders
69   - additional quote_sub docs
70   - remove multi-populate code to fix exists/defined new() bug
71   - document move to #moose and include repository metadata
72   - no Moo and no Moo::Role
73   - squelch used only once warnings for $Moo::HandleMoose::MOUSE
74   - MooClass->meta
75   - subconstructor handling for Moose classes
76
77 0.091009 - 2012-06-20
78   - squelch redefine warnings in the coderef installation code
79
80 0.091008 - 2012-06-19
81   - bump Role::Tiny dependency to get working modifiers under composition
82   - handle "has '+foo'" for attrs from superclass or consumed role
83   - document override -> around translation
84   - use D::GD if installed rather than re-adding it as a requirement
85
86 0.091007 - 2012-05-17
87   - remove stray reference to Devel::GlobalDestruction
88
89 0.091006 - 2012-05-16
90   - drop a couple of dependencies by minor releases we don't strictly need
91
92 0.091005 - 2012-05-14
93   - temporary switch to an inlined in_global_destruction to avoid needing
94     to fatpack Sub::Exporter for features we don't use
95   - re-order is documentation to give readonly styles more prominence
96   - a weakened value should still be returned on set (fixes lazy + weak_ref)
97   - add an explicit return to all exported subs so people don't accidentally
98     rely on the return value
99
100 0.091004 - 2012-05-07
101   - also inhale from Mouse
102   - clarify how isa and coerce interact
103   - support isa and coerce together for Moose
104   - guard _accessor_maker_for calls in Moo::Role in case Moo isn't loaded
105   - reset handlemoose state on mutation in case somebody reified the
106     metaclass too early
107
108 0.091003 - 2012-05-06
109   - improve attribute option documentation
110   - update the incompatibilities section since we're less incompatible now
111   - fix coderef naming to avoid confusing autoclean
112
113 0.091002 - 2012-05-05
114   - exclude union roles and same-role-as-self from metaclass inflation
115   - inhale Moose roles before checking for composition conflicts
116   - enable Moo::sification if only Moo::Role is loaded and not Moo
117   - preserve attribute ordering
118   - factor out accessor generation code a bit more to enable extension
119
120 0.091001 - 2012-05-02
121   - bump Role::Tiny dependency to require de-strictures-ed version
122   - fix test failure where Class::XSAccessor is not available
123
124 0.091000 - 2012-04-27
125   - document MX::AttributeShortcuts 009+ support
126   - documentation for the metaclass inflation code
127   - better error message for broken BUILDARGS
128   - provide 'no Moo::sification' to forcibly disable metaclass inflation
129   - switch to Devel::GlobalDestruction to correctly disarm the
130     Moo::sification trigger under threads
131   - make extends after has work
132   - name subs if Sub::Name is available for better stracktraces
133   - undefer all subs before creating a concrete Moose metaclass
134   - fix bug in _load_module where global vars could cause mis-detection
135     of the module already being loaded
136
137 0.009_017 - 2012-04-16
138   - mangle constructor meta-method on inflation so make_immutable works
139   - fix possible infinite loop caused by subconstructor code
140
141 0.009_016 - 2012-04-12
142   - don't accidentally load Moo::HandleMoose during global destruction
143   - better docs for trigger (and initializer's absence)
144
145 0.009_015 - 2012-04-11
146   - Complete support for MooseX::AttributeShortcuts 0.009
147   - Allow Moo classes to compose Moose roles
148   - Introduce Moo::HandleMoose, which should allow Moo classes and roles
149     to be treated as Moose classes/roles. Supported so far:
150     - Some level of attributes and methods for both classes and roles
151     - Required methods in roles
152     - Method modifiers in roles (they're already applied in classes)
153     - Type constraints
154
155 0.009014 - 2012-03-29
156   - Split Role::Tiny out into its own dist
157   - Fix a bug where coercions weren't called on lazy default/builder returns
158   - Switch Moo::Utils to using Module::Runtime, and add the 5.8 %INC
159     leakage fix into Role::Tiny's _load_module to provide partial parity
160   - Update incompatibilities with Moose documentation
161   - Remove Sub::Quote's outstanding queue since it doesn't actually slow
162     things down to do it this way and makes debugging easier.
163   - Revert 'local $@' around require calls to avoid triggering Unknown Error
164   - Explicitly require Role::Tiny in Role::Tiny::With (RT#70446)
165   - Fix spurious 'once' warnings under perl -w
166
167 0.009013 - 2011-12-23
168   - fix up Class::XSAccessor version check to be more robust
169   - improved documentation
170   - fix failures on perls < 5.8.3
171   - fix test failures on cygwin
172
173 0.009012 - 2011-11-15
174   - make Method::Generate::Constructor handle $obj->new
175   - fix bug where constants containing a reference weren't handled correctly
176     (ref(\[]) is 'REF' not 'SCALAR', ref(\v1) is 'VSTRING')
177
178 0.009011 - 2011-10-03
179   - add support for DEMOLISH
180   - add support for BUILDARGS
181
182 0.009010 - 2011-07-20
183   - missing new files for Role::Tiny::With
184
185 0.009009 - 2011-07-20
186   - remove the big scary warning because we seem to be mostly working now
187   - perl based getter dies if @_ > 1 (XSAccessor already did)
188   - add Role::Tiny::With for use in classes
189   - automatically generate constructors in subclasses when required so that
190     subclasses with a BUILD method but no attributes get it honoured
191   - add coerce handling
192
193 0.009008 - 2011-06-03
194   - transfer fix to _load_module to Role::Tiny and make a note it's an inline
195   - Bring back 5.8.1 compat
196
197 0.009007 - 2011-02-25
198   - I botched the copyright. re-disting.
199
200 0.009006 - 2011-02-25
201   - handle non-lazy default and builder when init_arg is undef
202   - add copyright and license info for downstream packagers
203   - weak ref checking for Sub::Quote to avoid bugs on refaddr reuse
204   - Switch composed role names to be a valid package name
205
206 0.9.5 Tue Jan 11 2011
207   - Fix clobberage of runtime-installed wrappers by Sub::Defer
208   - Fix nonMoo constructor firing through multiple layers of Moo
209   - Fix bug where nonMoo is mistakenly detected given a Moo superclass
210     with no attributes (and hence no own constructor)
211
212 0.9.4 Mon Dec 13 2010
213   - Automatic detection on non-Moo superclasses
214
215 0.9.3 Sun Dec 5 2010
216   - Fix _load_module to deal with pre-existing subpackages
217
218 0.9.2 Wed Nov 17 2010
219   - Add explanation of Moo's existence
220   - Change @ISA setting mechanism to deal with a big in 5.10.0's get_linear_isa
221   - Change 5.10 checks to >= to not try and load MRO::Compat on 5.10.0
222   - Make 'perl -Moo' DTRT
223
224 0.9.1 Tue Nov 16 2010
225   - Initial release