merge method-changes branch into trunk
Dave Rolsky [Mon, 15 Sep 2008 15:41:45 +0000 (15:41 +0000)]
1  2 
Changes

diff --cc Changes
+++ b/Changes
@@@ -1,32 -1,24 +1,50 @@@
  Revision history for Perl extension Moose
  
- 0.58
+ 0.5x
+     !! This release has an incompatible change regarding !!
+        how roles add methods to a class !!
+     * Roles and role application
+       ! Roles now add methods by calling add_method, not
+         alias_method. They make sure to always provide a method
+         object, which will be cloned internally. This means that it is
+         now possible to track the source of a method provided by a
+         role, and even follow its history through intermediate roles.
+         This means that methods added by a role now show up when
+         looking at a class's method list/map. (Dave Rolsky)
+     * Moose::Meta::Method::Delegation
+     * Moose::Meta::Attribute
+       - Delegation methods now have their own method class. (Dave
+         Rolsky)
 +    * Moose::Meta::TypeConstraint::Parameterizable
 +      - Added a new method 'parameterize' which is basically a factory
 +        for the containing constraint.  This makes it easier to create
 +        new types of parameterized constraints. (jnapiorkowski)
 +
 +    * Moose::Meta::TypeConstraint::Union
 +      - Changed the way Union types canonicalize their names to follow
 +        the normalized TC naming rules, which means we strip all
 +        whitespace. (jnapiorkowski)
 +
 +    * Moose::Util::TypeConstraints
 +      - Parameter and Union args are now sorted, this makes Int|Str
 +        the same constraint as Str|Int. (jnapiorkowski)
 +      - Changes to the way Union types are parsed to more correctly
 +        stringify their names. (jnapiorkowski)
 +      - When creating a parameterized type, we now use the new
 +        parameterize method. (jnapiorkowski)
 +      - Incoming type constraint strings are now normalized to remove
 +        all whitespace differences. (jnapiorkowski)
 +      - Changed the way we parse type constraint strings so that we now
 +        match TC[Int,Int,...] and TC[name=>Str] as parameterized type
 +        constraints.  This lays the foundation for more flexible type
 +        constraint implementations.
 +
 +    * Tests and docs for all the above. (jnapiorkowski)
 +
      * Moose::Exporter
      * Moose
        - Moose::Exporter will no longer remove a subroutine that the