X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=Changes;h=90a0b597465f6141ee1c2ee6a73a08cd934dbf88;hb=attic%2Fignore-duplicate-role-application;hp=8a8c688ebcc500bb8e6c940bad5dc78884791dac;hpb=696f5ab6b048fc9ac02ae8515eb9e7f94c7b06bf;p=gitmo%2FMoose.git diff --git a/Changes b/Changes index 8a8c688..90a0b59 100644 --- a/Changes +++ b/Changes @@ -3,12 +3,186 @@ for, noteworthy changes. {{$NEXT}} + [NEW FEATURES] + + * Class::MOP::Class now has methods for introspecting and modifying the + overloaded operators for a class. (doy) + + [ENHANCEMENTS] + + * The cookbook recipes have all been renamed. Instead of numbered recipes + (Basics::Recipe1), we now have descriptive names + (Basics::Point_AttributesAndSubclassing). This makes it easier for us to + add and remove recipes in the future, and makes it a little easier to + converse about them, since the name gives us some clue of what they + contain. + + [BUG FIXES] + + * Re-declaring a class_type or role_type constraint that has already been + declared now just returns the original type constraint, rather than + replacing the original constraint and ergo losing any coercions that were + on the original constraint. Fixes RT #73289. (t0m) + + * Moose::Exporter now calls init_meta methods in the correct order, when + multiple levels of 'also' parameters are specified. Reported by Rocco + Caputo. (doy, perigrin) + + * Moose::Exporter no longer generates init_meta methods in order to apply + metaroles, since the metaclass itself isn't guaranteed to exist yet at that + point. Metaroles are now applied at the end of import, after all + user-defined init_meta methods have been called. Fixes RT #51561. (doy) + + * Fixed two memory leaks: One occurred when a given role was applied to + the same object more than once; attempting to do this is now a no-op. The + other occurred when creating an anonymous class. Note that the + immutabilizing an anonymous class still leaks memory, as the anon class + will never be destroyed in this case. Based on code and bug report from + Carlos Lima. RT #74650. + +2.0402 Sat, Feb 04, 2012 + + [OTHER] + + * Minor documentation fixes. + + * Fix test failure on blead (test was unnecessarily strict). Reported by + Nicholas Clark. (doy) + +2.0401 Thu, Nov 17, 2011 + + [BUG FIXES] + + * Attributes with weak_ref now weaken their associated slot when they are + initialized through a lazy default or builder. Reported by tome. (doy) + +2.0400 Tue, Nov 15, 2011 + + [OTHER] + + * No changes from 2.0302 (other than a few minor documentation tweaks). + +2.0302 Wed, Nov 02, 2011 + + [BUG FIXES] + + * Fix test failure on 5.8. (Dave Rolsky) + + * Make make_immutable return value consistent and document it to be true. + (mst) + +2.0301 Fri, Oct 21, 2011 + + [BUG FIXES] + + * Fix compilation on 5.8. Reported by ether. (doy) + + * A custom error class caused a warning when the class that used it was made + immutable. Reported by Maroš Kollár. RT #71514. (Dave Rolsky) + + [ENHANCEMENTS] + + * The enum type will now allow single value enumerations. Previously, two or + more values were required. (rjbs) + +2.0300 Fri, Sep 23, 2011 + + [DEPRECATIONS] + + * The optimize_as option for type constraints has been deprecated. Use the + inline_as option to provide inlining code instead. (Dave Rolsky) + + [API CHANGES] + + * Methods to introspect a class's methods will now return methods defined in + UNIVERSAL (isa, can, etc.). This also means that you can wrap these + methods with method modifiers. RT #69839. Reported by Vyacheslav + Matyukhin. (Dave Rolsky) + + * The ->parent and ->parents method for a union now return the nearest + common ancestor of that union's component types. See Moose::Manual::Delta + for more details. (Dave Rolsky) + + * The ->parents method used to return an arrayref for union types, and a + list of one or more types for all other types. Now they all return + lists. (Dave Rolsky) + + * The ->is_subtype_of and ->is_a_type_of methods have changed their behavior + for union types. Previously, they returned true if any of their member + types returned true for a given type. Now, all of the member types must + return true. RT #67731. (Dave Rolsky) + [ENHANCEMENTS] * The Moose::Exporter module now has a "meta_lookup" option when creating an importer. This allows you to specify an alternate method for determining the metaclass of a caller. This is useful for modules like - MooseX::Role::Parameterized which generate new metaclasses on the fly. + MooseX::Role::Parameterized which generate new metaclasses on the + fly. (sartak) + + * Added a Moose::Meta::Method->is_stub method. (Dave Rolsky) + + [BUG FIXES] + + * A subtype of a union type did not return the right results when you called + ->is_subtype_of or ->is_a_type_of on it. This has been fixed. RT + #70322. (Dave Rolsky) + + * An attribute accessor or delegation method can overwrite a stub method and + this will no longer throw an error. Reported by Mark-Jason Dominus. RT + #69988. (Dave Rolsky) + + * The error generated by unfulfilled method requirements during role + composition now mentions how to work around imported methods not being + recognized. Reported by Michael Schwern. RT #60583. (doy) + + * class_type and role_type will now throw errors if you attempt to use them + to override existing types, just like type and subtype have always done. + (doy) + + * Implicitly creating class or role types by using them as the 'isa' or + 'does' parameter to attribute construction will now register the type. This + means that it cannot later be redefined as something else. (doy) + + * $class_type->is_subtype_of no longer returns true if passed the name of the + class that the class type represents when the class type wasn't registered. + (doy) + + * Removing anonymous metaclasses prematurely no longer prevents reaping of + the associated stash. (doy) + + [OTHER] + + * The Class::MOP::load_class and Class::MOP::is_class_loaded subroutines are + no longer documented, and will cause a deprecation warning in the + future. Moose now uses Class::Load to provide this functionality, and you + should as well. (Dave Rolsky) + +2.0205 Tue, Sep 06, 2011 + + [NEW FEATURES] + + * The Array and Hash native traits now provide a "shallow_clone" method, + which will return a reference to a new container with the same contents as + the attribute's reference. + + [ENHANCEMENTS] + + * Specifying an invalid value in a hashref 'handles' value now throws a + sensible error. Reported by Mark-Jason Dominus. RT #69990. (Dave + Rolsky) + + [BUG FIXES] + + * When specifying an attribute trait, passing options for the trait besides + -alias or -excludes caused a warning. However, passing other options is + totally valid when using MooseX::Role::Parameterized. Fixes RT + #70419. (sartak) + + * Allow regexp objects in duck_type constraints (to bring this in line with + the Object constraint). + +2.0204 Thu, Aug 25, 2011 [BUG FIXES] @@ -16,10 +190,18 @@ for, noteworthy changes. and only when not running under the debugger. This has been fixed. (Florian Ragwitz) - [DEPRECATIONS] + [OTHER] - * The optimize_as option for type constraints has been deprecated. Use the - inline_as option to provide inlining code instead. (Dave Rolsky) + * Loosen the dependency on ExtUtils::ParseXS. + +2.0203 Tue, Aug 23, 2011 + + [BUG FIXES] + + * is_class_loaded now properly detects packages which have a version object + in their $VERSION. + + * Fix XS compilation under blead. 2.0202 Tue, Jul 26, 2011