adding 2007 to the copyright list
[gitmo/Moose.git] / Changes
diff --git a/Changes b/Changes
index 4f5c417..3873598 100644 (file)
--- a/Changes
+++ b/Changes
 Revision history for Perl extension Moose
 
-0.13
+0.18
+    ~~ Many documentation updates ~~
+
+0.18_001
+    !! You must have Class::MOP 0.37_001  !!
+    !! for this developer release to work !!
+
+    Lots of changes really, too numerous to mention now,
+    I need to have people test/fiddle with this first.
+
+0.17 Tues. Nov. 14, 2006
+    * Moose::Meta::Method::Accessor
+      - bugfix for read-only accessors which 
+        are have a type constraint and lazy.
+        Thanks to chansen for finding it.
+
+0.16 Tues. Nov. 14, 2006
+    ++ NOTE ++
+    There are some speed improvements in this release, 
+    but they are only the begining, so stay tuned.
+    
+    * Moose::Object
+      - BUILDALL and DEMOLISHALL no longer get 
+        called unless they actually need to be.
+        This gave us a signifigant speed boost
+        for the cases when there is no BUILD or 
+        DEMOLISH method present.
+        
+    * Moose::Util::TypeConstraints
+    * Moose::Meta::TypeConstraint
+      - added an 'optimize_as' option to the 
+        type constraint, which allows for a
+        hand optimized version of the type 
+        constraint to be used when possible.
+      - Any internally created type constraints
+        now provide an optimized version as well.
+
+0.15 Sun. Nov. 5, 2006
+    ++ NOTE ++
+    This version of Moose *must* have Class::MOP 0.36 in order 
+    to work correctly. A number of small internal tweaks have 
+    been made in order to be compatible with that release.
+
+    * Moose::Util::TypeConstraints
+      - added &unimport so that you can clean out 
+        your class namespace of these exported 
+        keywords
+    
+    * Moose::Meta::Class
+      - fixed minor issue which occasionally 
+        comes up during global destruction 
+        (thanks omega)
+      - moved Moose::Meta::Method::Overriden into 
+        its own file.
+      
+    * Moose::Meta::Role      
+      - moved Moose::Meta::Role::Method into 
+        its own file.
+              
+    * Moose::Meta::Attribute
+      - changed how we do type checks so that 
+        we reduce the overall cost, but still 
+        retain correctness.
+       *** API CHANGE ***
+      - moved accessor generation methods to 
+        Moose::Meta::Method::Accessor to 
+        conform to the API changes from 
+        Class::MOP 0.36
+          
+    * Moose::Meta::TypeConstraint
+      - changed how constraints are compiled
+        so that we do less recursion and more
+        iteration. This makes the type check 
+        faster :)
+      - moved Moose::Meta::TypeConstraint::Union
+        into its own file
+    
+    * Moose::Meta::Method::Accessor
+      - created this from methods formerly found in 
+        Moose::Meta::Attribute
+    
+    * Moose::Meta::Role::Method
+      - moved this from Moose::Meta::Role
+          
+    * Moose::Meta::Method::Overriden
+      - moved this from Moose::Meta::Class
+      
+    * Moose::Meta::TypeConstraint::Union
+      - moved this from Moose::Meta::TypeConstraint
+
+0.14 Mon. Oct. 9, 2006
+
+    * Moose::Meta::Attribute
+      - fixed lazy attributes which were not getting 
+        checked with the type constraint (thanks ashley)
+        - added tests for this
+      - removed the over-enthusiastic DWIMery of the 
+        automatic ArrayRef and HashRef defaults, it 
+        broke predicates in an ugly way.
+        - removed tests for this
+
+0.13 Sat. Sept. 30, 2006
+    ++ NOTE ++
+    This version of Moose *must* have Class::MOP 0.35 in order 
+    to work correctly. A number of small internal tweaks have 
+    been made in order to be compatible with that release.
+
     * Moose
       - Removed the use of UNIVERSAL::require to be a better
-        symbol table citizen and remove a dependency.
+        symbol table citizen and remove a dependency 
+        (thanks Adam Kennedy)
+
+      **~~ removed experimental & undocumented feature ~~**
+      - commented out the 'method' and 'self' keywords, see the 
+        comments for more info.
 
     * Moose::Cookbook
       - added a FAQ and WTF files to document frequently 
         asked questions and common problems
+        
+    * Moose::Util::TypeConstraints
+      - added GlobRef and FileHandle type constraint
+        - added tests for this
+        
+    * Moose::Meta::Attribute
+      - if your attribute 'isa' ArrayRef of HashRef, and you have
+        not explicitly set a default, then make the default DWIM.
+        This will also work for subtypes of ArrayRef and HashRef 
+        as well.
+      - you can now auto-deref subtypes of ArrayRef or HashRef too.
+        - new test added for this (thanks to ashley)
+        
+    * Moose::Meta::Role
+      - added basic support for runtime role composition
+        but this is still *highly experimental*, so feedback 
+        is much appreciated :)
+        - added tests for this
+
+    * Moose::Meta::TypeConstraint
+      - the type constraint now handles the coercion process
+        through delegation, this is to support the coercion 
+        of unions
+        
+    * Moose::Meta::TypeConstraint::Union
+      - it is now possible for coercions to be performed 
+        on a type union
+        - added tests for this (thanks to konobi)
 
     * Moose::Meta::TypeCoercion
       - properly capturing error when type constraint 
@@ -16,6 +155,7 @@ Revision history for Perl extension Moose
     * Build.PL
       - Scalar::Util 1.18 is bad on Win32, so temporarily
         only require version 1.17 for Win32 and cygwin.
+        (thanks Adam Kennedy)        
 
 0.12 Sat. Sept. 1, 2006
     * Moose::Cookbook