Changes for version 2.002_000 - 2020-12-23

  • Refactored create_class_with_roles to not use "composable packages". This was an optimization for when a role is used in many different uses of create_class_with_roles, but required an entirely separate implementation, which did not have fully compatible behavior. It would also result in methods using modifiers being slower.
  • Add documentation for what methods will be composed from a role (RT#133363)
  • Fix backwards compatibility with older versions of Moo when interacting with Moose.
  • Treat modifiers as required methods during create_class_with_roles.
  • Fixed methods being no longer composed after they participated in an allowed conflict.
  • Dropped use of MRO::Compat.
  • Test cleanups for checking requires during create_class_with_roles.
  • Additional tests to confirm internal role application steps can be fully qualified.
  • Fix Pod links to Class::Method::Modifiers
  • Tweaks to author tests
  • Additional tests for working with older Moo versions
  • Additional tests for module loading
  • Allow method modifiers to be specified with an array reference of method names, rather than a list. This now matches how the corresponding Class::Method::Modifiers subs can be called.

Modules

Roles: a nouvelle cuisine portion size slice of Moose
Neat interface for consumers of Role::Tiny roles