addin in the extra params for rebless_instance
[gitmo/Class-MOP.git] / Changes
1 Revision history for Perl extension Class-MOP.
2
3 0.54
4     * Class::MOP
5       metaclass.pm
6       - making sure that load_class never gets
7         passed a value from @_ or $_ to squash 
8         Ovid's bug (http://use.perl.org/~Ovid/journal/35763)
9
10     * Class::MOP::Class
11       - make_{immutable,mutable} now return 1
12         (cause Sartak asked)
13       - improved error handling in ->create method
14       - rebless_instance now takes extra params which 
15         will be used to populate values 
16         - added tests for this
17         
18     * Class::MOP::Object
19       - localizing the Data::Dumper configurations so 
20         that it does not pollute others (RT #33509)        
21  
22     * Class::MOP::Class
23       Class::MOP::Package
24       Class::MOP::Module
25       Class::MOP::Method
26       Class::MOP::Attribute
27       - these classes no longer define their own ->meta, 
28         but instead just inherit from Class::MOP::Object      
29       
30     * Class::MOP::Instance
31       Class::MOP::Immutable                        
32       - these classes now inherit from Class::MOP::Object
33  
34     * t/
35       - fixed the filename length on several 
36         test files so we install on VMS better
37         (RT #32295)
38       - fixed incorrect use of catdir when it 
39         should be catfile (RT #32385)
40
41 0.53 Thurs. Feb. 14, 1008
42     ~~ several doc. fixes and updates ~~
43         
44     * Class::MOP::Class
45       Class::MOP::Method::Constructor
46       Class::MOP::Attribute
47         - making init_arg accept an undefined value
48           to indicate that no constructor args can 
49           be passed (thanks to nothingmuch)
50           - added tests for this
51         - added attribute initializer attribute (rjbs)
52           
53     * Class::MOP.
54         - making this use the new init_arg => undef
55           feature instead of the silly hack from 
56           before (thanks to nothingmuch)
57
58 0.52 Tues. Jan. 22, 2008
59     * Class::MOP::Class
60       - fixed bug in rebless_instance 
61         (discovered by ash)
62
63     * Class::MOP::Method::Constructor
64       - removed assumptions about the existence of 
65         a &meta method
66
67 0.51 Mon. Jan. 14, 2008
68     ~~~ some misc. doc. fixes ~~~
69     ~~ updated copyright dates ~~
70     
71     * Class::MOP
72       - now sets the IS_RUNNING_ON_5_10 
73         constant so that we can take advantage
74         of some of the nice bits of 5.10
75     
76     * Class::MOP::Class
77       - uses the IS_RUNNING_ON_5_10 flag to 
78         optimize the &linearized_isa method 
79         and avoid the hack/check for circular
80         inheritence in &class_precedence_list 
81       - added rebless_instance method (Sartak)
82         - added tests for this
83     
84     * Class::MOP::Immutable 
85       - the immutable class now keeps track of 
86         the transformer which immutablized it
87
88     * Class::MOP::Instance
89       - added rebless_instance_structure method (Sartak)
90         - added tests for this
91
92 0.50 Fri. Dec. 21, 2007
93     * Class::MOP::Class
94       - fixed bug in immutable to make sure that 
95         transformation arguments are saved 
96         correctly (mst)
97         - added tests for this
98         
99     * Class::MOP::Immutable
100       - fixed a bug (see above)
101       
102     * Class::MOP::Attribute
103       - some doc updates
104
105 0.49 Fri. Dec. 14, 2007
106     !! Class::MOP now loads 2 x faster  !!
107     !! with XS speedups (thanks konobi) !!
108         
109     * Class::MOP
110       - removed the dependency on B
111       - added two XS functions (thanks konobi)
112         - get_code_info($code) which replaces all
113           the B fiddling we were doing with
114           faster/leaner XS level fiddling
115         - check_package_cache_flag($pkg_name) which 
116           returns the PL_sub_generation variable to 
117           be used to help manage method caching.
118           
119           NOTE: 
120           In 5.10 or greater this will actually 
121           use the mro::get_pkg_gen instead to give 
122           even more accurate caching information. 
123           blblack++ for that stuff :)
124           
125     * Class::MOP::Class
126       - added the &subclasses method (thanks rlb)
127       - added the update_package_cache_flag and 
128         reset_package_cache_flag which help keep 
129         track of when we need to re-fetch the 
130         method map. 
131       - Several small improvements to take advantage
132         of the new method map caching features
133
134 0.48 Mon. Nov. 26, 2007
135     * Class::MOP::Attribute
136       - fixed get_read/write_method to handle the 
137         HASH ref case, which makes the 
138         get_read/write_method_ref handle it too.
139         - added more tests for this
140
141 0.47 Sat. Nov. 24, 2007
142     * Class::MOP::Attribute
143       - fixed misspelling in get_write_method_ref
144         - added more tests for this
145
146 0.46 Fri. Nov. 23, 2007
147     * Class::MOP::Class
148       - added the linearized_isa method instead of constantly 
149         pruning duplicate classes (this will be even more 
150         useful in the 5.10-compat version coming soon)
151     
152     * Class::MOP::Attribute
153       - added the get_read_method_ref and get_write_method_ref
154         methods which allow you to retrieve a CODE ref which 
155         can always be used to read or write an attribute.
156
157 0.45 Thurs. Nov. 13, 2007
158     * Class::MOP::Attribute
159       - Fix error message on confess (groditi)
160
161 0.44 Thurs. Nov. 13, 2007
162     - Apparently I didn't make dist correctly (groditi)
163
164 0.43 Thurs. Nov. 13, 2007
165     * Class::MOP
166       - Add support for the 'builder' attribute (groditi)
167
168     * Class::MOP::Class
169       - optimise metaclass-already-exists check in 
170         construct_class_instance (groditi)
171       - duplicate check into initialize to save a 
172         call through (groditi)
173
174     * Class::MOP::Attribute
175       - Add support for the 'builder' attribute (groditi)
176       - Make predicates check for the existence of a value, not whether 
177         it is defined (groditi)
178
179     * Class::MOP::Instance
180       - Make predicates check for the existence of a value, not whether 
181         it is defined (groditi)
182
183     * Class::MOP::Method::Accessor 
184       - made this a subclass of Class::MOP::Method::Generated
185         - removed the relevant attributes
186
187     * Class::MOP::Method::Constructor
188       - fixed the cached values we had to be more sane
189       - made this a subclass of Class::MOP::Method::Generated
190       - fixed generated constructor so it properly handles 
191         subclasses now.
192         - added tests for this
193       - added the option to allow for both inlined and 
194         non-inlined constructors.
195       - Update inlined methods for builder and predicate changes (groditi)
196
197     * Class::MOP::Method::Generated
198       - added this class as an abstract base for the 
199         Class::MOP::Method::{Constructor,Accessor} classes
200         - added tests for this
201
202     *t/
203       - Alter tests (005, 014 020, 021) for new builder addition (groditi)
204       - Tests for new predicate behavior (and corrections to old tests) (groditi)
205
206     *examples/
207       - Update ArrayRef based class example to work with predicate changes
208
209 0.42 Mon. July 16, 2007
210     !!! Horray for mst, he fixed it !!!
211
212     * Class::MOP::Package
213       - alter symbol table handling to deal with 5.8.x and 5.9.x
214       
215     * t/
216       - Get rid of the crappy workaround from 0.40/41
217
218 0.41 Sun. July 15, 2007
219     * t/
220         Arghh!!! My TODO test didn't work, so I handle
221         it manually now so that people can use this 
222         with 5.9.5/bleadperl without issue.
223
224 0.40 Tues, July 3, 2007
225     * t/
226       ~ marked a test in 003_methods.t as TODO 
227         for perl 5.9.5 (this test is irrelvant to 
228         the module functioning on 5.9.5 for the most 
229         part anyway)
230
231 0.39 Mon. June 18, 2007
232     * Class::MOP::Immutable
233       - added make_metaclass_mutable + docs (groditi)
234       - removed unused variable
235       - added create_immutable_transformer
236         necessary for sane overloading of immutable behavior
237          - tests for this (groditi) 
238
239     * Class::MOP::Class
240       - Immutability can now be undone,
241         added make_mutable + tests + docs (groditi)
242       - Massive changes to the way Immutable is done
243         for details see comments next to make_immutable
244         This fixes a bug where custom metaclasses broke
245         when made immutable. We are now keeping one immutable 
246         metaclass instance per metaclass instead of just one 
247         to prevent isa hierarchy corruption. Memory use will go
248         up, but I suspect it will be neglible.
249          - New tests added for this behavior.  (groditi)
250
251 0.38 Thurs. May 31, 2007
252     ~~ More documentation updates ~~
253     
254     * Class::MOP::Package
255       - we now deal with stub methods properly
256         - added tests for this
257       - fixed some tests failing on 5.9.5 (thanks blblack)
258         
259     * Class::MOP::Attribute
260       - added get_read_method and get_write_method
261         thanks to groditi for this code, tests 
262         and docs.
263         - added tests and POD for this
264     
265     * Class::MOP::Class
266       - fixed RT issue #27329, clone object now 
267         handles undef values correctly.
268         - added tests for this
269       - Corrected anon-class handling so that they 
270         will not get reaped when instances still 
271         exist which need to reference them. This is 
272         the correct behavior, hopefully this is an 
273         obscure enough feature that there are not too 
274         many work arounds out in the wild.
275         - added tests for this by groditi   
276         - updated docs to explain this
277
278     * metaclass
279       - load custom metaclasses automatically (thanks groditi)
280         - added tests for this behavior
281
282 0.37 Sat. March 10, 2007
283     ~~ Many, many documentation updates ~~
284     
285     * Class::MOP
286       - added &load_class and &is_class_loaded 
287         - added tests and docs for these
288
289     * Class::MOP::Attribute
290       - default now checks the instance with defined to 
291         avoid setting off bool-overloads (found by Carl Franks)
292
293 0.37_002
294     * /t 
295       - bad name in a test, causing meaningless failuress. 
296         No other changes.
297
298 0.37_001
299     
300     ~~ GLOBAL CHANGES ~~
301     - All attribute names are now consistent and follow Perl 6 
302       style (prefixed with the sigil, and ! as the twigil for 
303       private attrs). This should not affect any code, unless 
304       you broke encapsulation, in which case, it is your problem 
305       anyway.
306       
307     !! Class::MOP::Class::Immutable has been removed
308     
309     * Class::MOP::Method::Constructor
310       - this has been moved out of Class::MOP::Class::Immutable 
311         and is a proper subclass of Class::MOP::Method now.
312         
313     * Class::MOP::Class
314       - this module now uses Class::MOP::Immutable for the 
315         immutable transformation instead of 
316         Class::MOP::Class::Immutable.
317         
318     + Class::MOP::Immutable 
319       - this module now controls the transformation from a mutable 
320         to an immutable version of the class. Docs for this will 
321         be coming eventually.
322     
323
324 0.36 Sun. Nov. 5, 2006
325     * Class::MOP::Class
326       - added a few 'no warnings' lines to keep annoying 
327         (and meaningless) warnings from chirping during 
328         global destruction.
329           
330     * Class::MOP
331       - some more bootstrapping is now done on the new 
332         classes
333     
334     * Class::MOP::Class::Immutable
335       *** API CHANGE ***    
336       - constructor generation is now handled by 
337         the Class::MOP::Method::Constructor class
338      
339     * Class::MOP::Method::Constructor
340       - created this to handle constructor generation 
341         in Class::MOP::Class::Immutable
342     
343     * Class::MOP::Attribute
344       *** API CHANGE ***    
345       - attributes now delegate to the 
346         Class::MOP::Method::Accessor to generate 
347         accessors
348     
349     * Class::MOP::Method::Accessor
350       - all accessor generation functions from 
351         Class::MOP::Attribute have been moved here
352
353 0.35 Sat. Sept. 30, 2006
354
355     * scripts/class_browser.pl
356       - initial prototype of a class browser, more 
357         on this to come. Comments and patches are 
358         very much welcome.
359
360     * Class::MOP
361       - All Class::MOP::* accessors are no longer 
362         re-generated in the bootstrap, instead 
363         they are aliased from the originals
364         - fixed tests to reflect
365       - added Class::MOP::Method (and its subclasses) 
366         to the bootstrap
367         - adjusted tests for this
368       - added the Class::MOP::Instance attributes
369         to the bootstrap
370     
371     * Class::MOP::Method
372       *** API CHANGE ***
373       - methods are no longer blessed CODE refs
374         but are actual objects which can be CODE-ified
375         - adjusted tests to compensate
376         - adjusted docs for this        
377
378     * Class::MOP::Class
379       - changed how methods are dealt with to 
380         encapsulate most of the work into the 
381         &get_method_map method
382       - made several adjustments for the change
383         in Class::MOP::Method
384       - &add_attribute now checks if you are adding 
385         a duplicate name, and properly removes the 
386         old one before installing the new one
387         - added tests for this
388         - adjusted docs for this
389     
390     * Class::MOP::Class::Immutable
391       - added caching of &get_method_map
392       - fixed issue with &get_package_symbol
393       - cleaned up the methods that die (patch by David Wheeler)
394     
395     * Class::MOP::Package
396       - added filtering capabilities to 
397         &list_all_package_symbols
398
399 0.34 Sat. Aug. 26, 2006
400     * Class::MOP::Class
401       - added the %:methods attribute, which like
402         the $:version and such just actually goes 
403         to the symbol table to get it's stuff. 
404         However, it makes the MOP more complete.
405      ** API CHANGE **
406       - The &create method now requires that all 
407         but the package name now is passed in as 
408         named parameters. See docs for more info.
409         - updated docs and tests for this
410         
411     * Class::MOP::Object
412       - added &dump method to easily Data::Dumper 
413         an object
414         
415     * Class::MOP
416       - cleaned up the initialization of attributes 
417         which do not store things in the instance 
418       - added the %:methods attribute definition to
419         the bootstrap
420         
421     ~ lots of misc. test cleanup
422
423 0.33 Sat. Aug. 19, 2006
424     * Class::MOP::Class
425       - moved the metaclass cache out of here 
426         and it is now in Class::MOP itself.
427         
428     * Class::MOP
429       - moved all the metaclass cache stuff here
430         - fixed all tests for this
431
432     * Class::MOP::Attribute
433       - reference values (other than CODE refs) 
434         are no longer allowed for defaults
435         - added tests for this
436     
437     * Class::MOP::Package
438       - fixed an issue with perl 5.8.1 and how it deals 
439         with symbol tables. The namespace hash is now 
440         always reloaded from the symbol table. 
441
442     ~ lots of misc. documentation cleanup
443
444 0.32 Sat. Aug. 12, 2006
445     + added Class::MOP::Object so that the 
446       metamodel is more complete (and closer
447       to what Perl 6 will probably be).
448
449     * Class::MOP::Package
450       - refactored entire class, this is now 
451         the primary gateway between the metaclass
452         and the Perl 5 symbol table
453         - added many tests for this
454       - this class is now a subclass of 
455         Class::MOP::Object
456         - added some tests to reflect this
457         
458     * Class::MOP::Class
459       - refactored all symbol table access to 
460         use Class::MOP::Package methods instead
461         
462     * Class::MOP::Module
463       - adding the $:version attribute in the bootstrap
464         so that Module has a version as an attribute
465         - see comment in Class::MOP for details
466       - added the $:authority attribute to this module 
467         as well as an &identifier method, to bring us 
468         ever closer to Perl 6 goodness 
469         - I have added $AUTHORITY to all the modules 
470         - added tests for this
471       
472     * Class::MOP::Instance
473       - added &deinitialize_slot for removing slots 
474         from an instance
475         - added tests for this      
476       
477     * Class::MOP::Attribute 
478       - added support for &deinitialize_slot for removing
479         slots from an instance
480         - added tests for this
481
482 0.31 Sat. July 15, 2006
483
484     * Class::MOP::Class
485       - added &find_method_by_name to locate a method
486         anywhere within the class hierarchy   
487         
488     * Class::MOP::Attribute
489       - added &set_value and &get_value for getting 
490         the value of the attribute for a particular 
491         instance.
492
493 0.30 Wed. July 5, 2006
494     ---------------------------------------
495     This is the first version of Class::MOP 
496     to introduce the immutable features which
497     will be used for optimizating the MOP. 
498     This support should still be considered
499     experimental, but moving towards stability.
500     ---------------------------------------
501     
502     * Created Class::MOP::Class::Immutable  
503     
504     * Created the Class::MOP::Package and 
505       Class::MOP::Module classes to more 
506       closely conform to Perl 6's meta-model
507
508     * Class::MOP::Class
509       - now inherits from Class::MOP::Module
510       - several methods moved to ::Module and 
511         ::Package and now inherited
512         - added tests for this
513       
514     * Class::MOP::Instance
515       - added an is_inlinable method to allow other 
516         classes to check before they attempt to optimize.
517       - added an inline_create_instance to inline 
518         instance creation (of course) 
519         
520     ** API CHANGE **
521       - the Class::MOP::Class::*_package_variable 
522         methods are all now methods of Class::MOP::Package
523         and called *_package_symbol instead. This is 
524         because they are now more general purpose symbol 
525         table manipulation methods.        
526
527 0.29_02 Thurs. June 22, 2006
528     ++ DEVELOPER RELEASE ++
529     * Class::MOP::Class
530       - small change in &create so that it behaves 
531         properly when inherited
532       - small fix to &clone_instance
533
534 0.29_01 Fri. May 12, 2006
535     ++ DEVELOPER RELEASE ++
536       - This release works in combination with 
537         Moose 0.09_01, it is a developer release
538         because it introduces a new instance 
539         sub-protocol and has not yet been 
540         optimized.  
541
542     * Class::MOP::Class
543       - anon-classes are now properly garbage collected
544         - added tests for this 
545       - improved method modifier wrapping 
546
547     * Class::MOP::Instance
548       - added new instance protocol
549         - added tests for this
550       - changed all relevant modules and examples
551         - Class::MOP::Class
552         - Class::MOP::Attribute
553         - examples/*
554
555     * metaclass
556       - you no longer need to specify the metaclass
557         itself, if it is not there, Class::MOP::Class
558         is just assumed
559         - updated tests for this
560
561     * examples/
562       - added ArrayBasedStorage example to show 
563         instance storage using ARRAY refs instead of
564         HASH refs. 
565         - added tests for this
566       - InsideOutClass is totally revised using the 
567         new instance protocol
568         - added more tests for this
569
570 0.26 Mon. April 24, 2006
571     * Class::MOP::Class
572       - added find_attribute_by_name method
573         - added tests and docs for this
574       - some small optimizations
575
576     * Class::MOP::Attribute
577       - some small optimizations
578
579 0.25 Thurs. April 20, 2006
580     * Class::MOP::Class
581       - added create_anon_class for creating anonymous classes
582         - added tests for this
583       - added get_all_metaclasses, get_all_metaclass_names
584         and get_all_metaclass_instances method to allow
585         access to all the cached metaclass objects.
586       - attribute slot initialization is now the responsibility
587         of the attribute itself, and construct_instance now 
588         delegates appropriately
589         
590     * Class::MOP::Attribute
591       - attribute slot initialization is now the responsibility
592         of the attribute itself, so we added a method for it
593         called initialize_instance_slot
594     
595     * examples/
596       - adjusted all the examples to use the new attribute 
597         initialize_instance_slot method 
598
599 0.24 Tues. April 11, 2006
600     * Class::MOP::Class
601       - cleaned up how the before/after/around method 
602         modifiers get named with Sub::Name
603
604 0.23 Thurs. March 30, 2006
605         * Class::MOP::Class
606           - fixed the way attribute defaults are handled 
607             during instance construction (bug found by chansen)
608             
609         * Class::MOP::Attribute
610           - read-only accessors ('reader') will now die if 
611             passed more than one argument (attempting to write
612             to them basically)
613               - added tests for this
614               - adjusted all /example files to comply 
615
616 0.22 Mon. March 20, 2006
617     * Class::MOP::Class
618       - localized $@ in the *_package_variable functions
619         because otherwise, it does ugly things in Moose.
620           - added test case for this
621
622 0.21 Wed. March 15, 2006
623     * Class::MOP::Class
624       - fixed issue where metaclasses are reaped from 
625         our cache in global destruction, and so are not
626         available in DESTORY calls
627
628 0.20 Thurs. March 2, 2006
629     - removed the dependency for Clone since 
630       we no longer to deep-cloning by default.
631     
632     * Class::MOP::Method
633       - added &package_name, &name and 
634         &fully_qualified_name methods, some of 
635         which were formerly private subs in 
636         Class::MOP::Class
637       
638     * Class::MOP::Method::Wrapped
639       - allows for a method to be wrapped with 
640         before, after and around modifiers 
641           - added tests and docs for this feature
642
643     * Class::MOP::Class
644       - improved &get_package_symbol
645           - &version and &superclasses now use it
646       - methods are now blessed into Class::MOP::Method
647         whenever possible
648       - added methods to install CLOS-style method modifiers 
649          - &add_before_method_modifier
650          - &add_after_method_modifier         
651          - &add_around_method_modifier
652              - added tests and docs for these
653       - added &find_next_method_by_name which finds the 
654         equivalent of SUPER::method_name
655
656 0.12 Thurs. Feb 23, 2006
657     - reduced the dependency on B, no need to always 
658       have the latest
659
660     * examples/
661       - added docs to the C3 method dispatch order test
662       - fixed missing Algorithm::C3 dependency by making 
663         the test skip if it is not installed
664
665 0.11 Mon Feb. 20, 2006
666     * examples/
667       - added example of changing method dispatch order to C3
668       
669     * Class::MOP::Class
670       - changed how clone_instance behaves, it now only does a
671         shallow clone (see docs for more details)
672         - added docs and tests
673
674 0.10 Tues Feb. 14, 2006
675     ** This release was mostly about writing more tests and 
676        cleaning out old and dusty code, the MOP should now 
677        be considered "ready to use".
678
679     - adding more tests to get coverage up a little higher,
680       mostly testing errors and edge cases.
681       - test coverage is now at 99%
682       
683     * Class::MOP
684       - no longer optionally exports to UNIVERSAL::meta or
685         creates a custom metaclass generator, use the 
686         metaclass pragma instead.
687
688     * Class::MOP::Class  
689       - fixed a number of minor issues which came up in the 
690         error/edge-case tests
691         
692     * Class::MOP::Attribute 
693       - fixed a number of minor issues which came up in the 
694         error/edge-case tests        
695      
696     * examples/
697       - fixing the AttributesWithHistory example, it was broken.
698
699 0.06 Thurs Feb. 9, 2006
700     * metaclass
701       - adding new metaclass pragma to make setting up the 
702         metaclass a little more straightforward
703         
704     * Class::MOP
705       - clean up bootstrapping to include more complete 
706         attribute definitions for Class::MOP::Class and 
707         Class::MOP::Attribute (accessors, readers, writers, 
708         etc.) ... it is redundant, but is useful meta-info
709         to have around.
710
711     * Class::MOP::Class
712       - fixing minor meta-circularity issue with &meta, it 
713         is now more useful for subclasses
714       - added &get_attribute_map as an accessor for the 
715         hash of attribute meta objects
716       - &compute_all_applicable_attributes now just returns
717         the attribute meta-object, rather than the HASH ref
718         since all the same info can be gotten from the 
719         attribute meta-object itself
720           - updated docs & tests to reflect
721       - added &clone_instance method which does a deep clone
722         of the instance structure created by &construct_instance
723           - added docs & tests for this
724           - added Clone as a dependency
725       - added &new_object and &clone_object convience methods to
726         return blessed new or cloned instances
727           - they handle Class::MOP::Class singletons correctly too
728           - added docs & tests for this
729       - cleaned up the &constuct_class_instance so that it behaves
730         more like &construct_instance (and managed the singletons too)
731       - added the &check_metaclass_compatibility method to make sure
732         that metaclasses are upward and downward compatible.
733           - added tests and docs for this
734           
735     * examples/
736       - adjusting code to use the &Class::MOP::Class::meta
737         fix detailed above
738       - adjusting code to use the metaclass pragma
739       
740 0.05 Sat Feb. 4, 2006
741     * Class::MOP::Class
742       - added the &attribute_metaclass and &method_metaclass
743         attributes which contain a metaclass name to use for 
744         attributes/methods respectively
745     
746     * Class::MOP
747       - bootstrap additional attributes for Class::MOP::Class 
748         
749     * examples/
750       - adjusted the example code and tests to use the new
751         &attribute_metaclass feature of Class::MOP::Class
752       - added new example:
753         - LazyClass
754
755 0.04 Fri Feb. 3, 2006
756     * Class::MOP::Class
757       - some documentation suggestions from #perl6
758     
759     * Class::MOP::Attribute
760       - improved error messages    
761     
762     * examples/
763       - added new examples:
764         - AttributesWithHistory
765         - ClassEncapsultedAttributes
766
767 0.03 Fri Feb. 3, 2006
768     - converted to Module::Build instead of EU::MM
769     
770     * Class::MOP::Attribute
771       - refactored method generation code
772       - attributes are now associated with class directly
773     
774     * examples/
775       - refactored the InsideOut example to take advantage 
776         of the Class::MOP::Attribute refactoring
777       - changed example files to .pod files and hide thier
778         package names from PAUSE (I don't want to own these
779         namespaces really, they are just examples)
780
781 0.02 Thurs Feb. 2, 2006
782     - moving examples from t/lib/* to examples/*
783         - adding POD documentation to the examples
784
785 0.01 Thurs Feb. 2, 2006
786     - Initial release