The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
MooX-Press
==========

Created:      2019-10-22
Home page:    <https://metacpan.org/release/MooX-Press>
Bug tracker:  <http://rt.cpan.org/Dist/Display.html?Queue=MooX-Press>
Maintainer:   Toby Inkster (TOBYINK) <tobyink@cpan.org>

0.043	2020-02-12

 [ Bug Fixes ]
 - If methods or method modifiers were given as a hashref rather than a
   coderef, MooX::Press would assume that meant there was a signature and
   later complain about the signature being undef, but there are other
   reasons to sometimes give a method or method modifier as a hashref, so
   this assumption is no longer made.

 [ Test Suite ]
 - Test that bare attributes work.

 [ Other ]
 - Added: MooX::Press::keywords now exports `bare` like `rw`, `ro`, `rwp`,
   and `lazy`.

0.042	2020-02-11

 - If a signature includes `head` and `tail` options, reify any string type
   constraints found there. This feature assumes you're using Type::Params
   1.009002 or above.
 - The `confess` exported by MooX::Press::Keywords no longer passes a
   single argument through sprintf; only calling sprintf when multiple
   arguments are given.

0.041	2020-02-09

 - Added: Factory packages now have a `qualify` method allowing them to
   translate unprefixed class names to fully-qualified ones.
 - Added: MooX::XSConstructor is loaded and used if it's installed.

0.040	2020-02-01

 [ Bug Fixes ]
 - Remove some Data::Dumper stuff mistakenly included in last release.

0.039	2020-02-01

 [ Bug Fixes ]
 - In the last few releases (since 0.032?), method signatures were
   mistakenly being recompiled every method call, which was SLOW.

0.038	2020-02-01

 - Abstract base classes throw exceptions from `BUILD` instead of `new`.

0.037	2020-01-31

 - Process `with` much later to ensure that methods (including accessors,
   delegated methods, multimethods, and constants) have been installed
   which might be needed to satisfy role requirements.

0.036	2020-01-31

 - Added: Abstract base classes.
 - Added: Interfaces.
 - Using class-specific things like `factory` in a role now results in an
   error instead of being silently ignored.

0.035	2020-01-28

 [ Bug Fixes ]
 - Don't install multimethod dispatchers into roles.

0.034	2020-01-28

 [ Bug Fixes ]
 - Skip trying to just-in-time look for a role definition if the role ends
   in a question mark; that role will already be built just-in-time.

0.033	2020-01-28

 - Added: Sub::MultiMethod support (optional dependency).
 - Added: Support `overload` in classes.
 - Build roles in an intelligent order.
 - Process role generators before class generators.

0.032	2020-01-24

 - Added: MooX::Press->wrap_coderef utility.

0.031	2020-01-23

 [ Bug Fixes ]
 - Fix broken signatures-as-coderefs feature.

 [ Documentation ]
 - Document signatures-as-coderefs feature.

 [ Other ]
 - Added: Add `optimize` feature for method signatures.

0.030	2020-01-23

 [ Bug Fixes ]
 - Bugfix for `import`.

0.029	2020-01-23

 - Allow `import` option to apply to class/role generators.
 - Removed: MooX::Press::Keywords no longer imports Try::Tiny for you.

0.028	2020-01-23

 [ Packaging ]
 - Require Sub::HandlesVia 0.004.

 [ Other ]
 - Added: Add an `import` option.
 - Smooth over differences between `has` in Moo, Moose, and Mouse.

0.027	2020-01-21

 - Added: Support for Sub::HandlesVia.

0.026	2020-01-18

 [ Bug Fixes ]
 - Fix `has` for Moose/Mouse classes and roles.

 [ Other ]
 - Better handling of type lookups from class/role generators.

0.025	2020-01-17

 - Saner API for slurpies in signatures.

0.024	2020-01-17

 - Added: Class and role generators now have generate_bleh methods in the
   factory.

0.023	2020-01-17

 - Added: class_generator and role_generator.

0.022	2020-01-16

 - Added: Integration with MooX::Enumeration/MooseX::Enumeration.
 - Added: Roles now have `requires`.

0.021	2020-01-15

 [ Bug Fixes ]
 - Prevent global options from overriding per-package options.

 [ Other ]
 - Added: Method modifiers now support signatures.
 - String 'from' types in coercions are now interpreted as type names
   instead of class/role names. This is for consistency with signatures.

0.020	2020-01-13

 - Added: Provide a `begin` option to run callback early in class/role
   definition.
 - Smarter Type::Registry stuff.

0.019	2020-01-10

 [ Documentation ]
 - Better type constratin documentation.

 [ Other ]
 - Added: Method signatures.
 - Allow roles listed under `with` to be suffixed with a question mark.
 - Default `factory_package` to `prefix` instead of `caller`.

0.018	2020-01-08

 [ Documentation ]
 - Fix typo.

0.017	2020-01-08

 - Added: MooX::Press::Keywords

0.016	2020-01-08

 [ Documentation ]
 - Documentation of @ and % sigils for `isa`.
 - Other improvements to type constraint related documentation.

 [ Other ]
 - Added: factory_package_can
 - Added: type_library_can

0.015	2020-01-07

 [ Bug Fixes ]
 - Fix interaction of automatic package prefixes and sigils.

0.014	2020-01-07

 - Added: Allow type names given as strings to be prefixed with @ or % to
   indicate ArrayRef of or HashRef of.

0.013	2019-11-06

 - Added: Allow classes to have multiple factories to create them.

0.012	2019-11-06

 [ Bug Fixes ]
 - Fix for newer versions of Moo::Role.

0.011	2019-11-05	Treason

 - Added: Support `type` in attribute specs.

0.010	2019-11-05	Gunpowder

 [ Bug Fixes ]
 - Fixes for methods being redefined in subclasses.

 [ Other ]
 - Added: Allow coderefs to be used to modify multiple methods in
   before/after/around, like Moo does.
 - Added: Top-level shortcuts for creating classes and roles.
 - Internal cleanups.

0.009	2019-10-31

 [ Documentation ]
 - Fix tree/leaf example.

0.008	2019-10-30

 - Added: Give each class a FACTORY method to return the factory package
   name.
 - Added: Give the factory package a type_library method to return the type
   library name.

0.007	2019-10-25

 [ Bug Fixes ]
 - Fixes for Moo 2.003_005 which changes how Moo's keyword subs are
   tracked.

0.006	2019-10-24

 [ Documentation ]
 - Document that multiple inheritance is supported.
 - Fix example in pod.

 [ Other ]
 - Less hacky way of calling Moo's has, extends, and with functions.
 - Throw an error if people try to use extends in roles.
 - You can now add a '+' before a class name to indicate that it should be
   prefixed by the parent class name.

0.005	2019-10-24

 [ Bug Fixes ]
 - Fixes for undef type_library.

 [ Documentation ]
 - Bundle a simple example, HTTP::Tiny::Objects.

 [ Other ]
 - Suppress loading MooX::TypeTiny if it's not needed.

0.004	2019-10-23

 [ Packaging ]
 - Declare dependency on namespace::autoclean.

 [ Other ]
 - Added: Set $VERSION and $AUTHORITY in generated packages.
 - Better handling of caller option.

0.003	2019-10-23

 [ Packaging ]
 - Remove old test script from tarball.

0.002	2019-10-23

 [ Bug Fixes ]
 - Fix syntax for Perl < 5.22.

0.001	2019-10-23	Initial release