0.52 stuff
[gitmo/Class-MOP.git] / Changes
diff --git a/Changes b/Changes
index 3e35e80..ccde218 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,5 +1,171 @@
 Revision history for Perl extension Class-MOP.
 
+0.52 
+    * Class::MOP::Class
+      - fixed bug in rebless_instance 
+        (discovered by ash)
+
+    * Class::MOP::Method::Constructor
+      - removed assumptions about the existence of 
+        a &meta method
+
+0.51 Mon. Jan. 14, 2008
+    ~~~ some misc. doc. fixes ~~~
+    ~~ updated copyright dates ~~
+    
+    * Class::MOP
+      - now sets the IS_RUNNING_ON_5_10 
+        constant so that we can take advantage
+        of some of the nice bits of 5.10
+    
+    * Class::MOP::Class
+      - uses the IS_RUNNING_ON_5_10 flag to 
+        optimize the &linearized_isa method 
+        and avoid the hack/check for circular
+        inheritence in &class_precedence_list 
+      - added rebless_instance method (Sartak)
+        - added tests for this
+    
+    * Class::MOP::Immutable 
+      - the immutable class now keeps track of 
+        the transformer which immutablized it
+
+    * Class::MOP::Instance
+      - added rebless_instance_structure method (Sartak)
+        - added tests for this
+
+0.50 Fri. Dec. 21, 2007
+    * Class::MOP::Class
+      - fixed bug in immutable to make sure that 
+        transformation arguments are saved 
+        correctly (mst)
+        - added tests for this
+        
+    * Class::MOP::Immutable
+      - fixed a bug (see above)
+      
+    * Class::MOP::Attribute
+      - some doc updates
+
+0.49 Fri. Dec. 14, 2007
+    !! Class::MOP now loads 2 x faster  !!
+    !! with XS speedups (thanks konobi) !!
+        
+    * Class::MOP
+      - removed the dependency on B
+      - added two XS functions (thanks konobi)
+        - get_code_info($code) which replaces all
+          the B fiddling we were doing with
+          faster/leaner XS level fiddling
+        - check_package_cache_flag($pkg_name) which 
+          returns the PL_sub_generation variable to 
+          be used to help manage method caching.
+          
+          NOTE: 
+          In 5.10 or greater this will actually 
+          use the mro::get_pkg_gen instead to give 
+          even more accurate caching information. 
+          blblack++ for that stuff :)
+          
+    * Class::MOP::Class
+      - added the &subclasses method (thanks rlb)
+      - added the update_package_cache_flag and 
+        reset_package_cache_flag which help keep 
+        track of when we need to re-fetch the 
+        method map. 
+      - Several small improvements to take advantage
+        of the new method map caching features
+
+0.48 Mon. Nov. 26, 2007
+    * Class::MOP::Attribute
+      - fixed get_read/write_method to handle the 
+        HASH ref case, which makes the 
+        get_read/write_method_ref handle it too.
+        - added more tests for this
+
+0.47 Sat. Nov. 24, 2007
+    * Class::MOP::Attribute
+      - fixed misspelling in get_write_method_ref
+        - added more tests for this
+
+0.46 Fri. Nov. 23, 2007
+    * Class::MOP::Class
+      - added the linearized_isa method instead of constantly 
+        pruning duplicate classes (this will be even more 
+        useful in the 5.10-compat version coming soon)
+    
+    * Class::MOP::Attribute
+      - added the get_read_method_ref and get_write_method_ref
+        methods which allow you to retrieve a CODE ref which 
+        can always be used to read or write an attribute.
+
+0.45 Thurs. Nov. 13, 2007
+    * Class::MOP::Attribute
+      - Fix error message on confess (groditi)
+
+0.44 Thurs. Nov. 13, 2007
+    - Apparently I didn't make dist correctly (groditi)
+
+0.43 Thurs. Nov. 13, 2007
+    * Class::MOP
+      - Add support for the 'builder' attribute (groditi)
+
+    * Class::MOP::Class
+      - optimise metaclass-already-exists check in 
+        construct_class_instance (groditi)
+      - duplicate check into initialize to save a 
+        call through (groditi)
+
+    * Class::MOP::Attribute
+      - Add support for the 'builder' attribute (groditi)
+      - Make predicates check for the existence of a value, not whether 
+        it is defined (groditi)
+
+    * Class::MOP::Instance
+      - Make predicates check for the existence of a value, not whether 
+        it is defined (groditi)
+
+    * Class::MOP::Method::Accessor 
+      - made this a subclass of Class::MOP::Method::Generated
+        - removed the relevant attributes
+
+    * Class::MOP::Method::Constructor
+      - fixed the cached values we had to be more sane
+      - made this a subclass of Class::MOP::Method::Generated
+      - fixed generated constructor so it properly handles 
+        subclasses now.
+        - added tests for this
+      - added the option to allow for both inlined and 
+        non-inlined constructors.
+      - Update inlined methods for builder and predicate changes (groditi)
+
+    * Class::MOP::Method::Generated
+      - added this class as an abstract base for the 
+        Class::MOP::Method::{Constructor,Accessor} classes
+        - added tests for this
+
+    *t/
+      - Alter tests (005, 014 020, 021) for new builder addition (groditi)
+      - Tests for new predicate behavior (and corrections to old tests) (groditi)
+
+    *examples/
+      - Update ArrayRef based class example to work with predicate changes
+
+0.42 Mon. July 16, 2007
+    !!! Horray for mst, he fixed it !!!
+
+    * Class::MOP::Package
+      - alter symbol table handling to deal with 5.8.x and 5.9.x
+      
+    * t/
+      - Get rid of the crappy workaround from 0.40/41
+
+0.41 Sun. July 15, 2007
+    * t/
+        Arghh!!! My TODO test didn't work, so I handle
+        it manually now so that people can use this 
+        with 5.9.5/bleadperl without issue.
+
 0.40 Tues, July 3, 2007
     * t/
       ~ marked a test in 003_methods.t as TODO 
@@ -562,4 +728,4 @@ Revision history for Perl extension Class-MOP.
         - adding POD documentation to the examples
 
 0.01 Thurs Feb. 2, 2006
-    - Initial release
\ No newline at end of file
+    - Initial release