cpan Moose 1.16

latest releases: 2.2207, 2.2206, 2.2205...
13 years ago

[ENHANCEMENTS]

  • Almost every native delegation method which changes the attribute value
    now has an explicitly documented return value. In general, this return
    value matches what Perl would return for the same operation. (Dave Rolsky)

  • Lots of work on native delegation documentation, including documenting
    what arguments each native delegation method allows or requires. (Dave
    Rolsky)

  • Passing an odd number of args to ->new() now gives a more useful warning
    than Perl's builtin warning. Suggested by Sir Robert Burbridge. (Dave
    Rolsky)

  • Allow disabling stack traces by setting an environment variable. See
    Moose::Error::Default for details. This feature is considered
    experimental, and may change in a future release. (Marcus Ramberg)

  • The deprecation warning for using alias and excludes without a leading
    dash now tells you the role being applied and what it was being applied
    to. (mst).

[BUG FIXES]

  • A number of native trait methods which expected strings as arguments did
    not allow the empty string. This included Array->join, String->match,
    String->replace, and String->substr. Reported by Whitney Jackson. RT
    #61962. (Dave Rolsky)

  • 'no Moose' no longer inadvertently removes imports it didn't create
    itself. RT #60013. (Florian Ragwitz, doy)

  • Roles now support passing an array reference of method names to method
    modifier sugar functions. (doy)

  • Native traits no longer use optimized inlining routines if the instance
    requests it (in particular, if inline_get_slot_value doesn't return
    something that can be assigned to). This should fix issues with
    KiokuDB::Class. (doy)

  • We now ignore all Class::MOP and Moose classes when determining what
    package called a deprecated feature. This should make the deprecation
    warnings saner, and make it possible to turn them off more easily. (Dave
    Rolsky)

  • The deprecated "default is" warning no longer happens if the attribute has
    any accessor method defined (accessor, reader, writer). Also, this warning
    only happens when a method that was generated because of the "default is"
    gets called, rather than when the attribute is defined. (Dave Rolsky)

  • The "default default" code for some native delegations no longer issues a
    deprecation warning when the attribute is required or has a builder. (Dave
    Rolsky)

  • Setting a "default default" caused a fatal error if you used the builder
    or lazy_build options for the attribute. Reported by Kent Fredric. RT
    #59613. (Dave Rolsky)

Don't miss a new Moose release

NewReleases is sending notifications on new releases.