Commit graph

57 commits

Author SHA1 Message Date
seb
0d593dfa59 Update from version 0.58 to version 0.59.
Changes:
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)
2008-10-22 00:58:28 +00:00
he
b021813da0 Bump the PKGREVISION for all packages which depend directly on perl,
to trigger/signal a rebuild for the transition 5.8.8 -> 5.10.0.

The list of packages is computed by finding all packages which end
up having either of PERL5_USE_PACKLIST, BUILDLINK_API_DEPENDS.perl,
or PERL5_PACKLIST defined in their make setup (tested via
"make show-vars VARNAMES=...").
2008-10-19 19:17:40 +00:00
seb
28abcc7eb1 Update from version 0.57 to version 0.58.
Changes:
0.58
    !! 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<throw_error> 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<error_class> behaves like C<Carp::confess>, so
        the behavior is not visibly different for end users.
2008-10-06 20:56:57 +00:00
seb
0d3afc9818 Update from version 0.55 to version 0.57.
Package changes: add all required Perl modules for test target as
build dependencies

Changes:
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)
2008-09-08 23:14:00 +00:00
seb
9eed912bdd Update from version 0.54 to version 0.55.
(while here adjust MASTER_SITES).
Changes:
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<Moose.pm> (Dave
        Rolsky)
    * all documentation
      - Tons of fixes, both syntactical and grammatical (Dave
        Rolsky, Paul Fenwick)
2008-08-04 15:23:30 +00:00
seb
dc308bf75c Add DESTDIR support. 2008-07-27 22:14:03 +00:00
seb
0c9fbcdc60 Initial import of p5-Moose version 0.54 into The NetBSD
Packages Collection.

Moose is an extension of the Perl 5 object system.
The main goal of Moose is to make Perl 5 Object Oriented programming
easier, more consistent and less tedious. With Moose you can to
think more about what you want to do and less about the mechanics
of OOP.
Additionally, Moose is built on top of Class::MOP, which is a
metaclass system for Perl 5. This means that Moose not only makes
building normal Perl 5 objects better, but it provides the power
of metaclass programming as well.
2008-07-26 13:50:13 +00:00