Revision history for Perl extension Class-MOP.
-0.35
+ * Class::MOP::Class
+ - optimise metaclass-already-exists check in construct_class_instance
+ - duplicate check into initialize to save a call through
+
+ * Class::MOP::MOP
+ - Add support for the 'builder' attribute (groditi)
+
+ * Class::MOP::Attribute
+ - Add support for the 'builder' attribute (groditi)
+
+ *t/
+ - Alter tests (005, 014 020, 021) for new builder addition
+
+0.43
+ * 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.
+
+ * Class::MOP::Method::Generated
+ - added this class as an abstract base for the
+ Class::MOP::Method::{Constructor,Accessor} classes
+ - added tests for this
+
+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
+ for perl 5.9.5 (this test is irrelvant to
+ the module functioning on 5.9.5 for the most
+ part anyway)
+
+0.39 Mon. June 18, 2007
+ * Class::MOP::Immutable
+ - added make_metaclass_mutable + docs (groditi)
+ - removed unused variable
+ - added create_immutable_transformer
+ necessary for sane overloading of immutable behavior
+ - tests for this (groditi)
+
+ * Class::MOP::Class
+ - Immutability can now be undone,
+ added make_mutable + tests + docs (groditi)
+ - Massive changes to the way Immutable is done
+ for details see comments next to make_immutable
+ This fixes a bug where custom metaclasses broke
+ when made immutable. We are now keeping one immutable
+ metaclass instance per metaclass instead of just one
+ to prevent isa hierarchy corruption. Memory use will go
+ up, but I suspect it will be neglible.
+ - New tests added for this behavior. (groditi)
+
+0.38 Thurs. May 31, 2007
+ ~~ 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 (thanks blblack)
+
+ * 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
+
+ * Class::MOP::Class
+ - fixed RT issue #27329, clone object now
+ handles undef values correctly.
+ - added tests for this
+ - Corrected anon-class handling so that they
+ will not get reaped when instances still
+ exist which need to reference them. This is
+ the correct behavior, hopefully this is an
+ obscure enough feature that there are not too
+ many work arounds out in the wild.
+ - added tests for this by groditi
+ - updated docs to explain this
+
+ * metaclass
+ - load custom metaclasses automatically (thanks groditi)
+ - added tests for this behavior
+
+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
- - non-generated accessors are no longer
- copied, but instead are aliased from
- the originals
+ - 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
- - bootstrap no longer re-compiles accessors
- so as to keep the MOP compile-time fast
* Class::MOP::Method
*** API CHANGE ***
- adding POD documentation to the examples
0.01 Thurs Feb. 2, 2006
- - Initial release
\ No newline at end of file
+ - Initial release