Merge 'trunk' into 'Moose-moosex_compile_support'
[gitmo/Moose.git] / Changes
diff --git a/Changes b/Changes
index eb46bfe..15defb4 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,7 +1,187 @@
 Revision history for Perl extension Moose
 
-0.26
+0.34
+    ~~~ more misc. doc. fixes ~~~
+    ~~ updated copyright dates ~~
+    
+    * Moose::Meta::Method::Accessor
+      - fixed bug when passing a list of values to 
+        an accessor would get (incorrectly) ignored.
+        Thanks to Sartak for finding this ;)
+        - added tests for this (Sartak again)
+
+0.33 Fri. Dec. 14, 2007
+    !! Moose now loads 2 x faster !!
+    !!  with new Class::MOP 0.49  !!
+
+    ++ new oose.pm module to make command line
+       Moose-ness easier (see POD docs for more)
+    
+    * Moose::Meta::Class
+    * Moose::Meta::Role
+      - several tweaks to take advantage of the 
+        new method map caching in Class::MOP
+
+    * Moose::Meta::TypeConstraint::Parameterized
+      - allow subtypes of ArrayRef and HashRef to
+        be used as a container (sartak)
+        - added tests for this 
+      - basic support for coercion to ArrayRef and
+        HashRef for containers (sartak)
+        - added tests for this 
+        
+    * Moose::Meta::TypeCoercion
+      - coercions will now create subtypes as needed
+        so you can now add coercions to parameterized
+        types without having to explictly define them
+        - added tests for this
+
+    * Moose::Meta::Method::Accessor
+      - allow subclasses to decide whether we need
+        to copy the value into a new variable (sartak)
+
+0.32 Tues. Dec. 4, 2007
+    * Moose::Util::TypeConstraints
+      - fixing how subtype aliases of unions work
+        they should inherit the parent's coercion
+        - added tests for this
+      - you can now define multiple coercions on 
+        a single type at different times instead of
+        having to do it all in one place
+        - added tests for this
+      
+    * Moose::Meta::TypeConstraint
+      - there is now a default constraint of sub { 1 }
+        instead of Moose::Util::TypeConstraints setting
+        this for us
+
+    * Moose::Meta::TypeCoercion 
+    * Moose::Meta::TypeCoercion::Union    
+      - added the &has_coercion_for_type and 
+        &add_type_coercions methods to support the 
+        new features above (although you cannot add
+        more type coercions for Union types)
+
+0.31 Mon. Nov. 26, 2007
+    * Moose::Meta::Attribute
+      - made the +attr syntax handle extending types with 
+        parameters. So "has '+foo' => (isa => 'ArrayRef[Int]')"
+        now works if the original foo is an ArrayRef.
+        - added tests for this.
+      - delegation now works even if the attribute does not
+        have a reader method using the get_read_method_ref
+        method from Class::MOP::Attribute. 
+        - added tests for this
+        - added docs for this
+    
+    * Moose::Util::TypeConstraints
+      - passing no "additional attribute info" to 
+        &find_or_create_type_constraint will no longer 
+        attempt to create an __ANON__ type for you, 
+        instead it will just return undef.
+        - added docs for this
+
+0.30 Fri. Nov. 23, 2007
+    * Moose::Meta::Method::Constructor
+      -builder related bug in inlined constructor. (groditi)
+
+    * Moose::Meta::Method::Accessor
+      - genereate unnecessary calls to predicates and refactor
+        code generation for runtime speed (groditi)
+
+    * Moose::Util::TypeConstraints
+      - fix ClassName constraint to introspect symbol table (mst)
+        - added more tests for this (mst)
+      - fixed it so that subtype 'Foo' => as 'HashRef[Int]' ...
+        with work correctly.
+        - added tests for this
+
+    * Moose::Cookbook
+      - adding the link to Recipie 11 (written by Sartak)
+        - adding test for SYNOPSIS code
+
+    * t/ 
+      - New tests for builder bug. Upon instantiation, if an
+        attribute had a builder, no value and was not lazy the
+        builder default was not getting run, oops. (groditi)
+
+0.29 Tues. Nov. 13, 2007
+    * Moose::Meta::Attribute
+      - Fix error message on missing builder method (groditi)
+
+    * Moose::Meta::Method::Accessor
+      - Fix error message on missing builder method (groditi)
+
+    * t/ 
+      - Add test to check for the correct error message when
+        builder method is missing (groditi)
+
+0.28 Tues. Nov. 13, 2007
+    - 0.27 packaged incorrectly (groditi)     
+
+0.27 Tues. Nov. 13, 2007
+    * Moose::Meta::Attribute
+      - Added support for the new builder option (groditi)
+      - Added support for lazy_build option (groditi)
+      - Changed slot initialization for predicate changes (groditi)
+
+    * Moose::Meta::Method::Accessor
+      - Added support for lazy_build option (groditi)
+      - Fix inline methods to work with corrected predicate 
+        behavior (groditi)
+
+    * Moose::Meta::Method::Constructor
+      - Added support for lazy_build option (groditi)
+
+    * t/
+      - tests for builder and lazy_build (groditi)
+
+    * fixing some misc. bits in the docs that 
+      got mentioned on CPAN Forum & perlmonks
+    
+    * Moose::Meta::Role
+      - fixed how required methods are handled 
+        when they encounter overriden or modified
+        methods from a class (thanks to confound).
+        - added tests for this
+
+    * Moose::Util::TypeConstraint
+      - fixed the type notation parser so that 
+        the | always creates a union and so is 
+        no longer a valid type char (thanks to 
+        konobi, mugwump and #moose for working 
+        this one out.)
+        - added more tests for this
+
+0.26 Thurs. Sept. 27, 2007
+    == New Features ==
+    
+    * Parameterized Types
+      We now support parameterized collection types, such as: 
+          ArrayRef[Int]    # array or integers
+          HashRef[Object]  # a hash with object values
+      They can also be nested:
+          ArrayRef[HashRef[RegExpr]] # an array of hashes with regexpr values
+      And work with the type unions as well:
+          ArrayRef[Int | Str]  # array of integers of strings
+    
+    * Better Framework Extendability
+      Moose.pm is now "extendable" such that it is now much 
+      easier to extend the framework and add your own keywords 
+      and customizations. See the "EXTENDING AND EMBEDDING MOOSE"
+      section of the Moose.pm docs.
+    
+    * Moose Snacks!
+      In an effort to begin documenting some of the various 
+      details of Moose as well as some common idioms, we have 
+      created Moose::Cookbook::Snacks as a place to find 
+      small (easily digestable) nuggets of Moose code.
+    
+    ====
     ~ Several doc updates/cleanup thanks to castaway ~
+    
+    - converted build system to use Module::Install instead of 
+      Module::Build (thanks to jrockway)
 
     * Moose
       - added all the meta classes to the immutable list and 
@@ -14,6 +194,9 @@ Revision history for Perl extension Moose
        * t/
          - complete re-organization of the test suite
          - added some new tests as well 
+         - finally re-enabled the Moose::POOP test since
+           the new version of DBM::Deep now works again
+           (thanks rob)
 
     * Moose::Meta::Class
       - fixed very odd and very nasty recursion bug with 
@@ -27,6 +210,10 @@ Revision history for Perl extension Moose
         on non-blessed items. (RT #29269)
         - added tests for this
     
+    * Moose::Meta::Method::Accessor
+      - fixed issue with generated accessor code making 
+        assumptions about hash based classes (thanks to dexter)
+    
     * Moose::Coookbook::Snacks
       - these are bits of documentation, not quite as big as 
         Recipes but which have no clear place in the module docs.