fixing the authors lists and adding the ClassName type constraint
[gitmo/Class-MOP.git] / Changes
diff --git a/Changes b/Changes
index b396a95..433ce6b 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,6 +1,182 @@
 Revision history for Perl extension Class-MOP.
 
-0.32
+0.38
+    ~~ More documentation updates ~~
+    
+    * Class::MOP::Package
+      - we now deal with stub methods properly
+        - added tests for this
+      - fixed some tests failing on 5.9.5
+        
+    * Class::MOP::Attribute
+      - added get_read_method and get_write_method
+        thanks to groditi for this code, tests 
+        and docs.
+        - added tests and POD for this
+
+0.37 Sat. March 10, 2007
+    ~~ Many, many documentation updates ~~
+    
+    * Class::MOP
+      - added &load_class and &is_class_loaded 
+        - added tests and docs for these
+
+    * Class::MOP::Attribute
+      - default now checks the instance with defined to 
+        avoid setting off bool-overloads (found by Carl Franks)
+
+0.37_002
+    * /t 
+      - bad name in a test, causing meaningless failuress. 
+        No other changes.
+
+0.37_001
+    
+    ~~ GLOBAL CHANGES ~~
+    - All attribute names are now consistent and follow Perl 6 
+      style (prefixed with the sigil, and ! as the twigil for 
+      private attrs). This should not affect any code, unless 
+      you broke encapsulation, in which case, it is your problem 
+      anyway.
+      
+    !! Class::MOP::Class::Immutable has been removed
+    
+    * Class::MOP::Method::Constructor
+      - this has been moved out of Class::MOP::Class::Immutable 
+        and is a proper subclass of Class::MOP::Method now.
+        
+    * Class::MOP::Class
+      - this module now uses Class::MOP::Immutable for the 
+        immutable transformation instead of 
+        Class::MOP::Class::Immutable.
+        
+    + Class::MOP::Immutable 
+      - this module now controls the transformation from a mutable 
+        to an immutable version of the class. Docs for this will 
+        be coming eventually.
+    
+
+0.36 Sun. Nov. 5, 2006
+    * Class::MOP::Class
+      - added a few 'no warnings' lines to keep annoying 
+        (and meaningless) warnings from chirping during 
+        global destruction.
+          
+    * Class::MOP
+      - some more bootstrapping is now done on the new 
+        classes
+    
+    * Class::MOP::Class::Immutable
+      *** API CHANGE ***    
+      - constructor generation is now handled by 
+        the Class::MOP::Method::Constructor class
+     
+    * Class::MOP::Method::Constructor
+      - created this to handle constructor generation 
+        in Class::MOP::Class::Immutable
+    
+    * Class::MOP::Attribute
+      *** API CHANGE ***    
+      - attributes now delegate to the 
+        Class::MOP::Method::Accessor to generate 
+        accessors
+    
+    * Class::MOP::Method::Accessor
+      - all accessor generation functions from 
+        Class::MOP::Attribute have been moved here
+
+0.35 Sat. Sept. 30, 2006
+
+    * scripts/class_browser.pl
+      - initial prototype of a class browser, more 
+        on this to come. Comments and patches are 
+        very much welcome.
+
+    * Class::MOP
+      - All Class::MOP::* accessors are no longer 
+        re-generated in the bootstrap, instead 
+        they are aliased from the originals
+        - fixed tests to reflect
+      - added Class::MOP::Method (and its subclasses) 
+        to the bootstrap
+        - adjusted tests for this
+      - added the Class::MOP::Instance attributes
+        to the bootstrap
+    
+    * Class::MOP::Method
+      *** API CHANGE ***
+      - methods are no longer blessed CODE refs
+        but are actual objects which can be CODE-ified
+        - adjusted tests to compensate
+        - adjusted docs for this        
+
+    * Class::MOP::Class
+      - changed how methods are dealt with to 
+        encapsulate most of the work into the 
+        &get_method_map method
+      - made several adjustments for the change
+        in Class::MOP::Method
+      - &add_attribute now checks if you are adding 
+        a duplicate name, and properly removes the 
+        old one before installing the new one
+        - added tests for this
+        - adjusted docs for this
+    
+    * Class::MOP::Class::Immutable
+      - added caching of &get_method_map
+      - fixed issue with &get_package_symbol
+      - cleaned up the methods that die (patch by David Wheeler)
+    
+    * Class::MOP::Package
+      - added filtering capabilities to 
+        &list_all_package_symbols
+
+0.34 Sat. Aug. 26, 2006
+    * Class::MOP::Class
+      - added the %:methods attribute, which like
+        the $:version and such just actually goes 
+        to the symbol table to get it's stuff. 
+        However, it makes the MOP more complete.
+     ** API CHANGE **
+      - The &create method now requires that all 
+        but the package name now is passed in as 
+        named parameters. See docs for more info.
+        - updated docs and tests for this
+        
+    * Class::MOP::Object
+      - added &dump method to easily Data::Dumper 
+        an object
+        
+    * Class::MOP
+      - cleaned up the initialization of attributes 
+        which do not store things in the instance 
+      - added the %:methods attribute definition to
+        the bootstrap
+        
+    ~ lots of misc. test cleanup
+
+0.33 Sat. Aug. 19, 2006
+    * Class::MOP::Class
+      - moved the metaclass cache out of here 
+        and it is now in Class::MOP itself.
+        
+    * Class::MOP
+      - moved all the metaclass cache stuff here
+        - fixed all tests for this
+
+    * Class::MOP::Attribute
+      - reference values (other than CODE refs) 
+        are no longer allowed for defaults
+        - added tests for this
+    
+    * Class::MOP::Package
+      - fixed an issue with perl 5.8.1 and how it deals 
+        with symbol tables. The namespace hash is now 
+        always reloaded from the symbol table. 
+
+    ~ lots of misc. documentation cleanup
+
+0.32 Sat. Aug. 12, 2006
     + added Class::MOP::Object so that the 
       metamodel is more complete (and closer
       to what Perl 6 will probably be).
@@ -12,6 +188,7 @@ Revision history for Perl extension Class-MOP.
         - added many tests for this
       - this class is now a subclass of 
         Class::MOP::Object
+        - added some tests to reflect this
         
     * Class::MOP::Class
       - refactored all symbol table access to 
@@ -24,6 +201,8 @@ Revision history for Perl extension Class-MOP.
       - added the $:authority attribute to this module 
         as well as an &identifier method, to bring us 
         ever closer to Perl 6 goodness 
+        - I have added $AUTHORITY to all the modules 
+        - added tests for this
       
     * Class::MOP::Instance
       - added &deinitialize_slot for removing slots