X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=Changes;h=bed2ac2cbeb88310e5aee82dedb53ee0760b8650;hb=e7fcb7b28736f5104a80018ed8ecaac2f9c0f691;hp=ae695e24cd3cede27b966cf85addb81e00840caa;hpb=713b0244d34d5ef472077ce5913dfe0d1daa958d;p=gitmo%2FMoose.git diff --git a/Changes b/Changes index ae695e2..bed2ac2 100644 --- a/Changes +++ b/Changes @@ -1,5 +1,744 @@ Revision history for Perl extension Moose +0.73 + * Moose::Util::TypeConstraints + - Calling subtype with a name as the only argument is now an + exception. If you want an anonymous subtype do: + + my $subtype = subtype as 'Foo'; + + * Moose::Cookbook::Meta::Recipe7 + - A new recipe, creating a custom meta-instance class. + + * Moose::Cookbook::Basics::Recipe5 + - Fix various typos and mistakes. Includes a patch from Radu + Greab. + + * Moose::Cookbook::Basics::Recipe9 + - Link to this recipe from Moose.pm's builder blurb + + * Moose::Exporter + - When wrapping a function with a prototype, Moose::Exporter now + makes sure the wrapped function still has the same + prototype. (Daisuke Maki) + + * Moose::Meta::Attribute + - Allow a subclass to set lazy_build for an inherited + attribute. (Dieter Pearcey) + + * Makefile.PL + - Explicitly depend on Data::OptList. We already had this dependency + via Sub::Exporter, but since we're using it directly we're + better off with it listed. (Sartak) + + * Moose::Meta::Method::Constructor + - Make it easier to subclass the inlining behaviour. (Ash + Berlin) + + * Moose::Manual::Delta + - Details significant changes in the history of Moose, along + with recommended workarounds. + + * Moose::Manual::Contributing + - Contributor's guide to Moose. + + * Moose::Meta::Method::Constructor + - The long-deprecated intialize_body method has been removed + (yes, spelled like that). + + * Moose::Meta::Method::Destructor + - This is_needed method is now always a class method. + + * Moose::Meta::Class + - Changes to the internals of how make_immutable works to match + changes in latest Class::MOP. + +0.72 Mon, February 23, 2009 + * Moose::Object + * Moose::Meta::Method::Constructor + - A mutable class accepted Foo->new(undef) without complaint, + while an immutable class would blow up with an unhelpful + error. Now, in both cases we throw a helpful error + instead. Reported by doy. + +0.71_01 Sun, February 22, 2009 + * Moose::Cookbook + - Hopefully fixed some POD errors in a few recipes that caused + them to display weird on search.cpan.org. + + * Moose::Util::TypeConstraints + - Calling type or subtype without the sugar helpers (as, where, + message) is now deprecated. + - The subtype function tried hard to guess what you meant, but + often got it wrong. For example: + + my $subtype = subtype as 'ArrayRef[Object]'; + + This caused an error in the past, but now works as you'd + expect. + + * Everywhere + - Make sure Moose.pm is loaded before calling + Moose->throw_error. This wasn't normally an issue, but could + bite you in weird cases. + +0.71 Thu, February 19, 2009 + * Moose::Cookbook::Basics::Recipe11 + - A new recipe which demonstrates the use of BUILDARGS and + BUILD. (Dave Rolsky) + + * Moose::Cookbook::Roles::Recipe3 + - A new recipe, applying a role to an object instance. (Dave + Rolsky) + + * Moose::Exporter + - Allow overriding specific keywords from "also" packages. (doy) + + * Tests + - Replace hardcoded cookbook tests with Test::Inline to ensure + the tests match the actual code in the recipes. (Dave Rolsky) + + * Moose::Cookbook + - Working on the above turned up a number of little bugs in the + recipe code. (Dave Rolsky) + + * Moose::Util::TypeConstraints::Optimized + - Just use Class::MOP for the optimized ClassName check. (Dave + Rolsky) + +0.70 Sat, February 14, 2009 + * Moose::Util::TypeConstraints + - Added the RoleName type (stevan) + - added tests for this (stevan) + + * Moose::Cookbook::Basics::Recipe3 + - Updated the before qw[left right] sub to be a little more + defensive about what it accepts (stevan) + - added more tests to t/000_recipies/basics/003_binary_tree.t + (stevan) + + * Moose::Object + - We now always call DEMOLISHALL, even if a class does not + define DEMOLISH. This makes sure that method modifiers on + DEMOLISHALL work as expected. (doy) + - added tests for this (EvanCarroll) + + * Moose::Util::MetaRole + - Accept roles for the wrapped_method_metaclass (rafl) + - added tests for this (rafl) + + * Moose::Meta::Attribute + - We no longer pass the meta-attribute object as a final + argument to triggers. This actually changed for inlined code a + while back, but the non-inlined version and the docs were + still out of date. + + * Tests + - Some tests tried to use Test::Warn 0.10, which had bugs. Now + they require 0.11. (Dave Rolsky) + + * Documentation + - Lots of small changes to the manual, cookbook, and + elsewhere. These were based on feedback from various + users, too many to list here. (Dave Rolsky) + +0.69 Thu, February 12, 2009 + * Moose + - Make some keyword errors use throw_error instead of croak + since Moose::Exporter wraps keywords now (Sartak) + + * Moose::Cookbook::* + - Revised every recipe for style and clarity. Also moved some + documentation out of cookbook recipes and into Moose::Manual + pages. This work was funded as part of the Moose docs grant + from TPF. (Dave Rolsky) + + * Moose::Meta::Method::Delegation + - If the attribute doing the delegation was not populated, the + error message did not specify the attribute name + properly. (doy) + +0.68 Wed, February 4, 2009 + * POD + - Many spelling, typo, and formatting fixes by daxim. + + * Moose::Manual::Attributes + - The NAME section in the POD used "Attribute" so search.cpan + didn't resolve links from other documents properly. + + * Moose::Meta::Method::Overriden + - Now properly spelled as Overridden. Thanks to daxim for + noticing this. + +0.67 Tue, February 3, 2009 + * Moose::Manual::* + - Lots of little typo fixes and a few clarifications. Several + pages didn't have proper titles, and so weren't actually + visible on search.cpan.org. Thanks to hanekomu for a variety + of fixes and formatting improvements. + +0.66 Tue, February 3, 2009 + * Moose::Manual + - This is a brand new, extensive manual for Moose. This aims to + provide a complete introduction to all of Moose's + features. This work was funded as part of the Moose docs grant + from TPF. (Dave Rolsky) + + * Moose::Meta::Attribute + - Added a delegation_metaclass method to replace a hard-coded + use of Moose::Meta::Method::Delegation. (Dave Rolsky) + + * Moose::Util::TypeConstraints + - If you created a subtype and passed a parent that Moose didn't + know about, it simply ignored the parent. Now it automatically + creates the parent as a class type. This may not be what you + want, but is less broken than before. (Dave Rolsky) + + * Moose::Util::TypeConstraints + - This module tried throw errors by calling Moose->throw_error, + but it did not ensure that Moose was loaded first. This could + cause very unhelpful errors when it tried to throw an error + before Moose was loaded. (Dave Rolsky) + + * Moose::Util::TypeConstraints + - You could declare a name with subtype such as "Foo!Bar" that + would be allowed, but if you used it in a parameterized type + such as "ArrayRef[Foo!Bar]" it wouldn't work. We now do some + vetting on names created via the sugar functions, so that they + can only contain alphanumerics, ":", and ".". (Dave Rolsky) + +0.65 Thu, January 22, 2008 + * Moose and Moose::Meta::Method::Overridden + - If an overridden method called super(), and then the + superclass's method (not overridden) _also_ called super(), + Moose went into an endless recursion loop. Test provided by + Chris Prather. (Dave Rolsky) + + * Moose::Meta::TypeConstraint + - All methods are now documented. (gphat) + + * t/100_bugs/011_DEMOLISH_eats_exceptions.t + - Fixed some bogus failures that occurred because we tried to + validate filesystem paths in a very ad-hoc and + not-quite-correct way. (Dave Rolsky) + + * Moose::Util::TypeConstraints + - Added maybe_type to exports. See docs for details. (rjbs) + + * Moose + - Added Moose::Util::TypeConstraints to the SEE ALSO + section. (pjf) + + * Moose::Role + - Methods created via an attribute can now fulfill a "requires" + declaration for a role. (nothingmuch) + + * Moose::Meta::Method::* + - Stack traces from inlined code will now report its line and + file as being in your class, as opposed to in Moose + guts. (nothingmuch). + +0.64 Wed, December 31, 2008 + * Moose::Meta::Method::Accessor + - Always inline predicate and clearer methods (Sartak) + + * Moose::Meta::Attribute + - Support for parameterized traits (Sartak) + - verify_against_type_constraint method to avoid duplication + and enhance extensibility (Sartak) + + * Moose::Meta::Class + - Tests (but no support yet) for parameterized traits (Sartak) + + * Moose + - Require Class::MOP 0.75+, which has the side effect of making + sure we work on Win32. (Dave Rolsky) + +0.63 Mon, December 8, 2008 + * Moose::Unsweetened + - Some small grammar tweaks and bug fixes in non-Moose example + code. (Dave Rolsky) + +0.62_02 Fri, December 5, 2008 + * Moose::Meta::Role::Application::ToClass + - When a class does not provide all of a role's required + methods, the error thrown now mentions all of the missing + methods, as opposed to just the first one found. Requested by + Curtis Poe (RT #41119). (Dave Rolsky) + + * Moose::Meta::Method::Constructor + - Moose will no longer inline a constructor for your class + unless it inherits its constructor from Moose::Object, and + will warn when it doesn't inline. If you want to force + inlining anyway, pass "replace_constructor => 1" to + make_immutable. Addresses RT #40968, reported by Jon + Swartz. (Dave Rolsky) + - The quoting of default values could be broken if the default + contained a single quote ('). Now we use quotemeta to escape + anything potentially dangerous in the defaults. (Dave Rolsky) + +0.62_01 Wed, December 3, 2008 + * Moose::Object + - use the method->execute API for BUILDALL + and DEMOLISHALL (Sartak) + + * Moose::Util::TypeConstraints + - We now make all the type constraint meta classes immutable + before creating the default types provided by Moose. This + should make loading Moose a little faster. (Dave Rolsky) + +0.62 Wed November 26, 2008 + * Moose::Meta::Role::Application::ToClass + Moose::Meta::Role::Application::ToRole + - fixed issues where excluding and aliasing the + same methods for a single role did not work + right (worked just fine with multiple + roles) (stevan) + - added test for this (stevan) + + * Moose::Meta::Role::Application::RoleSummation + - fixed the error message when trying to compose + a role with a role it excludes (Sartak) + + * Moose::Exporter + - Catch another case where recursion caused the value + of $CALLER to be stamped on (t0m) + - added test for this (t0m) + + * Moose + - Remove the make_immutable keyword, which has been + deprecated since April. It breaks metaclasses that + use Moose without no Moose (Sartak) + + * Moose::Meta::Attribute + - Removing an attribute from a class now also removes delegation + (handles) methods installed for that attribute (t0m) + - added test for this (t0m) + + * Moose::Meta::Method::Constructor + - An attribute with a default that looked like a number (but was + really a string) would accidentally be treated as a number + when the constructor was made immutable (perigrin) + - added test for this (perigrin) + + * Moose::Meta::Role + - create method for constructing a role + dynamically (Sartak) + - added test for this (Sartak) + - anonymous roles! (Sartak) + - added test for this (Sartak) + + * Moose::Role + - more consistent error messages (Sartak) + + * Moose::Cookbook::Roles::Recipe1 + - attempt to explain why a role that just requires + methods is useful (Sartak) + +0.61 Fri November 7, 2008 + * Moose::Meta::Attribute + - When passing a role to handles, it will be loaded if necessary + (perigrin) + + * Moose::Meta::Class + - Method objects returned by get_method (and other methods) + Could end up being returned without an associated_metaclass + attribute. Removing get_method_map, which is provided by + Class::MOP::Class, fixed this. The Moose version did nothing + different from its parent except introduce a bug. (Dave Rolsky) + - added tests for this (jdv79) + + * Various + - Added a $VERSION to all .pm files which didn't have one. Fixes + RT #40049, reported by Adam Kennedy. (Dave Rolsky) + + * Moose::Cookbook::Basics::Recipe4 + * Moose::Cookbook::Basics::Recipe6 + - These files had spaces on the first line of the SYNOPSIS, as + opposed to a totally empty line. According to RT #40432, this + confuses POD parsers. (Dave Rolsky) + +0.60 Fri October 24, 2008 + * Moose::Exporter + - Passing "-traits" when loading Moose caused the Moose.pm + exports to be broken. Reported by t0m. (Dave Rolsky) + - Tests for this bug. (t0m) + + * Moose::Util + - Change resolve_metaclass alias to use the new + load_first_existing_class function. This makes it a lot + simpler, and also around 5 times faster. (t0m) + - Add caching to resolve_metaclass_alias, which gives an order + of magnitude speedup to things which repeatedly call the + Moose::Meta::Attribute->does method, notably MooseX::Storage + (t0m) + + * Moose::Util::TypeConstraint + - Put back the changes for parameterized constraints that + shouldn't have been removed in 0.59. We still cannot parse + them, but MooseX modules can create them in some other + way. See the 0.58 changes for more details. (jnapiorkowski) + - Changed the way subtypes are created so that the job is + delegated to a type constraint parent. This clears up some + hardcoded checking and should allow correct subtypes of + Moose::Meta::Type::Constraint. Don't rely on this new API too + much (create_child_type) because it may go away in the + future. (jnapiorkowski) + + * Moose::Meta::TypeConstraint::Union + - Type constraint names are sorted as strings, not numbers. + (jnapiorkowski) + + * Moose::Meta::TypeConstraint::Parameterizable + - New parameterize method. This can be used as a factory method + to make a new type constraint with a given parameterized + type. (jnapiorkowski) + - added tests (jnapiorkowski) + +0.59 Tue October 14, 2008 + * Moose + - Add abridged documentation for builder/default/initializer/ + predicate, and link to more details sections in + Class::MOP::Attribute. (t0m) + + * Moose::Util::TypeConstraints + - removed prototypes from all but the &-based stuff (mst) + + * Moose::Util::TypeConstraints + - Creating a anonymous subtype with both a constraint and a + message failed with a very unhelpful error, but should just + work. Reported by t0m. (Dave Rolsky) + + * Tests + - Some tests that used Test::Warn if it was available failed + with older versions of Test::Warn. Reported by Fayland. (Dave + Rolsky) + - Test firing behavior of triggers in relation to builder/default/ + lazy_build. (t0m) + - Test behavior of equals/is_a_type_of/is_a_subtype_of for all + kinds of supported type. (t0m) + + * Moose::Meta::Class + - In create(), do not pass "roles" option to the superclass + - added related test that creates an anon metaclass with + a required attribute + + * Moose::Meta::TypeConstraint::Class + * Moose::Meta::TypeConstraint::Role + - Unify behavior of equals/is_a_type_of/is_a_subtype_of with + other types (as per change in 0.55_02). (t0m) + + * Moose::Meta::TypeConstraint::Registry + - Fix warning when dealing with unknown type names (t0m) + + * Moose::Util::TypeConstraints + - Reverted changes from 0.58 related to handle parameterized + types. This caused random failures on BSD and Win32 systems, + apparently related to the regex engine. This means that Moose + can no longer parse structured type constraints like + ArrayRef[Int,Int] or HashRef[name=>Str]. This will be + supported in a slightly different way via MooseX::Types some + time in the future. (Dave Rolsky) + +0.58 Sat September 20, 2008 + !! This release has an incompatible change regarding !! + !! how roles add methods to a class !! + + * Roles and role application + ! Roles now add methods by calling add_method, not + alias_method. They make sure to always provide a method + object, which will be cloned internally. This means that it is + now possible to track the source of a method provided by a + role, and even follow its history through intermediate roles. + + This means that methods added by a role now show up when + looking at a class's method list/map. (Dave Rolsky) + + * Makefile.PL + - From this release on, we'll try to maintain a list of + conflicting modules, and warn you if you have one + installed. For example, this release conflicts with ... + - MooseX::Singleton <= 0.11 + - MooseX::Params::Validate <= 0.05 + - Fey::ORM <= 0.10 + + In general, we try to not break backwards compatibility for + most Moose users, but MooseX modules and other code which + extends Moose's metaclasses is often affected by very small + changes in the Moose internals. + + * Moose::Meta::Method::Delegation + * Moose::Meta::Attribute + - Delegation methods now have their own method class. (Dave + Rolsky) + + * Moose::Meta::TypeConstraint::Parameterizable + - Added a new method 'parameterize' which is basically a factory + for the containing constraint. This makes it easier to create + new types of parameterized constraints. (jnapiorkowski) + + * Moose::Meta::TypeConstraint::Union + - Changed the way Union types canonicalize their names to follow + the normalized TC naming rules, which means we strip all + whitespace. (jnapiorkowski) + + * Moose::Util::TypeConstraints + - Parameter and Union args are now sorted, this makes Int|Str + the same constraint as Str|Int. (jnapiorkowski) + - Changes to the way Union types are parsed to more correctly + stringify their names. (jnapiorkowski) + - When creating a parameterized type, we now use the new + parameterize method. (jnapiorkowski) + - Incoming type constraint strings are now normalized to remove + all whitespace differences. (jnapiorkowski) + - Changed the way we parse type constraint strings so that we now + match TC[Int,Int,...] and TC[name=>Str] as parameterized type + constraints. This lays the foundation for more flexible type + constraint implementations. + + * Tests and docs for all the above. (jnapiorkowski) + + * Moose::Exporter + * Moose + - Moose::Exporter will no longer remove a subroutine that the + exporting package re-exports. Moose re-exports the + Carp::confess function, among others. The reasoning is that we + cannot know whether you have also explicitly imported those + functions for your own use, so we err on the safe side and + always keep them. (Dave Rolsky) + - added tests for this (rafl) + + * Moose::Meta::Class + - Changes to how we fix metaclass compatibility that are much + too complicated to go into. The summary is that Moose is much + less likely to complain about metaclass incompatibility + now. In particular, if two metaclasses differ because + Moose::Util::MetaRole was used on the two corresponding + classes, then the difference in roles is reconciled for the + subclass's metaclass. (Dave Rolsky) + - Squashed an warning in _process_attribute (thepler) + + * Moose::Meta::Role + - throw exceptions (sooner) for invalid attribute names (thepler) + - added tests for this (thepler) + + * Moose::Util::MetaRole + - If you explicitly set a constructor or destructor class for a + metaclass object, and then applied roles to the metaclass, + that explicitly set class would be lost and replaced with the + default. + + * Moose::Meta::Class + * Moose::Meta::Attribute + * Moose::Meta::Method + * Moose + * Moose::Object + * Moose::Error::Default + * Moose::Error::Croak + * Moose::Error::Confess + - All instances of confess() changed to use overridable + C method. This method ultimately calls a class + constructor, and you can change the class being called. In + addition, errors now pass more information than just a string. + The default C behaves like C, so + the behavior is not visibly different for end users. + +0.57 Wed September 3, 2008 + * Moose::Intro + - A new bit of doc intended to introduce folks familiar with + "standard" Perl 5 OO to Moose concepts. (Dave Rolsky) + + * Moose::Unsweetened + - Shows examples of two classes, each done first with and then + without Moose. This makes a nice parallel to + Moose::Intro. (Dave Rolsky) + + * Moose::Util::TypeConstraints + - Fixed a bug in find_or_parse_type_constraint so that it + accepts a Moose::Meta::TypeConstraint object as the parent + type, not just a name (jnapiorkowski) + - added tests (jnapiorkowski) + + * Moose::Exporter + - If Sub::Name was not present, unimporting failed to actually + remove some sugar subs, causing test failures (Dave Rolsky) + +0.56 Mon September 1, 2008 + For those not following the series of dev releases, there are + several major changes in this release of Moose. + ! Moose::init_meta should now be called as a method. See the + docs for details. + + - Major performance improvements by nothingmuch. + + - New modules for extension writers, Moose::Exporter and + Moose::Util::MetaRole by Dave Rolsky. + + - Lots of doc improvements and additions, especially in the + cookbook sections. + + - Various bug fixes. + + * Removed all references to the experimental-but-no-longer-needed + Moose::Meta::Role::Application::ToMetaclassInstance. + + * Require Class::MOP 0.65. + +0.55_04 Sat August 30, 2008 + * Moose::Util::MetaRole + * Moose::Cookbook::Extending::Recipe2 + - This simplifies the application of roles to any meta class, as + well as the base object class. Reimplemented metaclass traits + using this module. (Dave Rolsky) + + * Moose::Cookbook::Extending::Recipe1 + - This a new recipe, an overview of various ways to write Moose + extensions (Dave Rolsky) + + * Moose::Cookbook::Extending::Recipe3 + * Moose::Cookbook::Extending::Recipe4 + - These used to be Extending::Recipe1 and Extending::Recipe2, + respectively. + +0.55_03 Fri August 29, 2008 + * No changes from 0.55_02 except increasing the Class::MOP + dependency to 0.64_07. + +0.55_02 Fri August 29, 2008 + * Makefile.PL and Moose.pm + - explicitly require Perl 5.8.0+ (Dave Rolsky) + + * Moose::Util::TypeConstraints + - Fix warnings from find_type_constraint if the type is not + found (t0m). + + * Moose::Meta::TypeConstraint + - Predicate methods (equals/is_a_type_of/is_subtype_of) now + return false if the type you specify cannot be found in the + type registry, rather than throwing an unhelpful and + coincidental exception. (t0m). + - added docs & test for this (t0m) + + * Moose::Meta::TypeConstraint::Registry + - add_type_constraint now throws an exception if a parameter is + not supplied (t0m). + - added docs & test for this (t0m) + + * Moose::Cookbook::FAQ + - Added a faq entry on the difference between "role" and "trait" + (t0m) + + * Moose::Meta::Role + - Fixed a bug that caused role composition to not see a required + method when that method was provided by another role being + composed at the same time. (Dave Rolsky) + - test and bug finding (tokuhirom) + +0.55_01 Wed August 20, 2008 + + !! Calling Moose::init_meta as a function is now !! + !! deprecated. Please see the Moose.pm docs for details. !! + + * Moose::Meta::Method::Constructor + - Fix inlined constructor so that values produced by default + or builder methods are coerced as required. (t0m) + - added test for this (t0m) + + * Moose::Meta::Attribute + - A lazy attribute with a default or builder did not attempt to + coerce the default value. The immutable code _did_ + coerce. (t0m) + - added test for this (t0m) + + * Moose::Exporter + - This is a new helper module for writing "Moose-alike" + modules. This should make the lives of MooseX module authors + much easier. (Dave Rolsky) + + * Moose + * Moose::Cookbook::Meta::Recipe5 + - Implemented metaclass traits (and wrote a recipe for it): + + use Moose -traits => 'Foo' + + This should make writing small Moose extensions a little + easier (Dave Rolsky) + + * Moose::Cookbook::Basics::Recipe1 + - Removed any examples of direct hashref access, and applied an + editorial axe to reduce verbosity. (Dave Rolsky) + + * Moose::Cookbook::Basics::Recipe1 + - Also applied an editorial axe here. (Dave Rolsky) + + * Moose + * Moose::Cookbook::Extending::Recipe1 + * Moose::Cookbook::Extending::Recipe2 + - Rewrote extending and embedding moose documentation and + recipes to use Moose::Exporter (Dave Rolsky) + + * Moose + * Moose::Role + - These two modules now warn when you load them from the main + package "main" package, because we will not export sugar to + main. Previously it just did nothing. (Dave Rolsky) + + * Moose::Role + - Now provide an init_meta method just like Moose.pm, and you + can call this to provide an alternate role metaclass. (Dave + Rolsky and nothingmuch) + - get_method_map now respects the package cache flag (nothingmuch) + + * Moose::Meta::Role + - Two new methods - add_method and wrap_method_body + (nothingmuch) + + * many modules + - Optimizations including allowing constructors to accept hash + refs, making many more classes immutable, and making + constructors immutable. (nothingmuch) + +0.55 Sun August 3, 2008 + * Moose::Meta::Attribute + - breaking down the way 'handles' methods are + created so that the process can be more easily + overridden by subclasses (stevan) + + * Moose::Meta::TypeConstraint + - fixing what is passed into a ->message with + the type constraints (RT #37569) + - added tests for this (Charles Alderman) + + * Moose::Util::TypeConstraints + - fix coerce to accept anon types like subtype can (mst) + + * Moose::Cookbook + - reorganized the recipes into sections - Basics, Roles, Meta, + Extending - and wrote abstracts for each section (Dave Rolsky) + + * Moose::Cookbook::Basics::Recipe10 + - A new recipe that demonstrates operator overloading + in combination with Moose. (bluefeet) + + * Moose::Cookbook::Meta::Recipe1 + - an introduction to what meta is and why you'd want to make + your own metaclass extensions (Dave Rolsky) + + * Moose::Cookbook::Meta::Recipe4 + - a very simple metaclass example (Dave Rolsky) + + * Moose::Cookbook::Extending::Recipe1 + - how to write a Moose-alike module to use your own object base + class (Dave Rolsky) + + * Moose::Cookbook::Extending::Recipe2 + - how to write modules with an API just like C (Dave + Rolsky) + + * all documentation + - Tons of fixes, both syntactical and grammatical (Dave + Rolsky, Paul Fenwick) + 0.54 Thurs. July 3, 2008 ... this is not my day today ... @@ -172,7 +911,7 @@ Revision history for Perl extension Moose 0.45 Saturday, May 24, 2008 * Moose - - Because of work in Class::MOP 0.56, all + - Because of work in Class::MOP 0.57, all XS based functionality is now optional and a Pure Perl version is supplied - the CLASS_MOP_NO_XS environment variable @@ -209,7 +948,7 @@ Revision history for Perl extension Moose * Moose::Meta::Class - added same 'add_package_symbol' fix as in - Class::MOP 0.56 + Class::MOP 0.57 * Moose::Util - does_role now handles non-Moose classes @@ -757,7 +1496,7 @@ Revision history for Perl extension Moose 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 + ArrayRef[HashRef[RegexpRef]] # an array of hashes with regex values And work with the type unions as well: ArrayRef[Int | Str] # array of integers of strings @@ -1026,7 +1765,7 @@ Revision history for Perl extension Moose - added tests to assure we work with Module::Refresh - added stricter test skip logic in the Moose POOP test, ask Rob Kinyon why. - - *cough* DBM::Deep 1.0 backwards compatability sucks *cough* ;) + - *cough* DBM::Deep 1.0 backwards compatibility sucks *cough* ;) 0.18 Sat. March 10, 2007 ~~ Many, many documentation updates ~~ @@ -1307,7 +2046,7 @@ Revision history for Perl extension Moose - 'with' now checks Role validaity and accepts more than one Role at a time - 'extends' makes metaclass adjustments as - needed to ensure metaclass compatability + needed to ensure metaclass compatibility * Moose::Role - refactored the keyword exports