document the builder accessor method
[gitmo/Moose.git] / Changes
diff --git a/Changes b/Changes
index fe4c92a..a23f7f2 100644 (file)
--- a/Changes
+++ b/Changes
@@ -5,6 +5,359 @@ for, noteworthy changes.
 
   [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)
+
+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. (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]
+
+  * Validating duck_type type constraint turned out to work only by accident,
+    and only when not running under the debugger. This has been fixed.
+    (Florian Ragwitz)
+
+  [OTHER]
+
+  * 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
+
+  [BUG FIXES]
+
+  * Be more consistent about how type constraint messages are handled.
+
+2.0201 Fri, Jul 22, 2011
+
+  [BUG FIXES]
+
+  * Moose::Util::does_role shouldn't call ->does on things that don't inherit
+    from Moose::Object.
+
+  * Make ->does initialize the metaclass, so that calling it as a class method
+    on a class which sets up inheritance via some method other than extends
+    works properly (this fixes an issue with MooseX::Types).
+
+  * Make Dist::CheckConflicts a runtime requirement, so moose-outdated always
+    works.
+
+2.0200 Mon, Jul 18, 2011
+
+  [OTHER]
+
+  * No changes from 2.0105 (other than a few minor documentation tweaks).
+
+2.0105-TRIAL Mon, Jun 27, 2011
+
+  [ENHANCEMENTS]
+
+  * Moose::Util::does_role now respects overridden ->does methods. (doy)
+
+2.0104-TRIAL Mon, Jun 20, 2011
+
+  [OTHER]
+
+  * Include changes from 2.0010.
+
+2.0103-TRIAL Mon, Jun 20, 2011
+
+  [DEPRECATIONS]
+
+  * Several things that have been deprecated for a while have been removed. See
+    the 2.0000 section in Moose::Manual::Delta for details.
+
+  [NEW FEATURES]
+
+  * New Moose::Util::TypeConstraints::union function for creating union type
+    constraints without having to rely on the string type constraint parsing.
+    This also allows for creating unions of anonymous type constraints.
+    (kentnl)
+
+  [OTHER]
+
+  * Include changes from Moose 2.0009.
+
+2.0102-TRIAL Sat, Jun 18, 2011
+
+  [ENHANCEMENTS]
+
+  * The native Array trait now has a 'first_index' method, which works just
+    like the version in List::MoreUtils. (Karen Etheridge)
+
+  * Clean up some internal code to help out extensions.
+
+  [OTHER]
+
+  * Include changes from Moose 2.0008.
+
+2.0101-TRIAL Mon, Jun 06, 2011
+
+  [OTHER]
+
+  * Various packaging issues.
+
+2.0100-TRIAL Mon, Jun 06, 2011
+
+  [DEPRECATIONS]
+
+  * Using a hand-optimized type constraint is now deprecated. In keeping with
+    our release policy, this won't actually start warning until the 2.0200
+    release.
+
+  [NEW FEATURES]
+
+  * Type constraints can now provide inlined versions, which should make
+    inlined code which uses type constraints (such as accessors) faster. This
+    replaces the existing hand-optimized constraint feature.  (Dave Rolsky)
+
+  [ENHANCEMENTS]
+
+  * Remove a lot of cases where generated methods closed over meta objects.
+    Most simple cases should now only close over simple data types and
+    coderefs. This should make deparsing simpler.
+
+2.0010 Mon, Jun 20, 2011
+
+  [BUG FIXES]
+
+  * Fix regression in 2.0009 and 2.0103 when applying roles during init_meta in
+    an exporter that also re-exports Moose or Moose::Role. (t0m, ilmari)
+
+2.0009 Sun, Jun 19, 2011
+
+  [BUG FIXES]
+
+  * duck_type type constraints now report reasonable errors when given
+    something which isn't an instance of an object. (t0m)
+
+  * Moose::Util::apply_all_roles now works even if the applicant is a non-Moose
+    class. (perigrin)
+
+  * When an object is reblessed, triggers are called on attributes that are
+    set during the reblessing. (Karen Etheridge).
+
+  [OTHER]
+
+  * Better error message if Moose->init_meta is called with a 'metaclass'
+    option when that metaclass hasn't been loaded. (jasonmay)
+
+2.0008 Thu, Jun 16, 2011
+
+  [BUG FIXES]
+
+  * The 'accessor' native delegation for hashrefs now allows setting the value
+    to undef. (sugoik, doy)
+
+  [ENHANCEMENTS]
+
+  * Various generated methods have more useful context information. (doy)
+
+2.0007 Sun, May 15, 2011
+
+  [BUG FIXES]
+
+  * Make sure weak attributes remain weak when cloning. (doy, rafl)
+
+2.0006 Mon, May 09, 2011
+
+  [BUG FIXES]
+
+  * Revert the List::MoreUtils version bump, as it breaks backwards
+    compatibility. The dependency will be bumped with Moose 2.0200.
+
+2.0005 Mon, May 09, 2011
+
+  [BUG FIXES]
+
+  * Only sort the alias keys when determining caching.
+
+2.0004 Mon, May 09, 2011
+
+  [BUG FIXES]
+
+  * Bump the List::MoreUtils dep to avoid buggy behavior in old versions.
+
+  * Sort the list of roles and the alias and excludes parameters when
+    determining caching, since their order doesn't matter.
+
+2.0003 Mon, May 09, 2011
+
+  [BUG FIXES]
+
+  * Applying multiple role objects (rather than role names) at once no longer
+    skips every other role. (rjbs)
+
+  * Caching of anon classes now works more sanely in the presence of role
+    application parameters - alias and excludes options are taken into account,
+    and caching is disabled entirely if other parameters exist. Asking for
+    caching (instead of just not weakening) when parameters are given will
+    begin warning in Moose 2.0200. (doy, autarch)
+
+2.0002 Thu, Apr 28, 2011
+
+  [ENHANCEMENTS]
+
   * Provide definition context information for constructors and destructors, so
     that they will show up as something other than "generated method (unknown
     origin)". Also, add the package that accessors are defined in to their