Revision history for Perl extension Moxie

0.07 2017-11-16
    [ENHANCEMENTS]
    - it is now posible to say `required => 1` and have that
      expand to a default error message

    [FEATURE CHANGES]
    - renamed the `init_args` trait to `strict` and changed
      the docs to explain its purpose better
    - Trait::Provider modules have been re-arranged, we now have
      a classification for experimental features
        - added `lazy` and `private` as two features which
          now require you to pass the `:experimental` tag
          within the `traits` listing.
        - this may all change in future releases, we will see

0.06 2017-10-30
    [FEATURE CHANGES]
    - Changed the name of BUILDARGS:init_arg to BUILDARGS:init
      as the ARGS/args was redundant
    - updated SYNOPSIS to be sleaker
    - fixing a bug caught by CPAN testers
    - switched back to Carp::confess from Carp::cluck, the
      stack trace is vital until this module matures and
      the error messages improve
    - fixed a bug in the `init_args` trait that caused
      slot => 0 to not work

0.05 2017-10-21
    [NEW FEATURE]
    - added the `lazy(slot?)` trait, it uses the body of
      the method it is attached to as the initializer for
      the specified slot

    [FEATURE CHANGES]
    - restored the `private` trait and ceased it being
      the default behavior as a result of a `has` call

    [DEPENDENCIES]
    - dropped the Devel::Hook dependency for the MOP::Util
      functions (which just use Devel::Hook themselves)
    - restored the Padwalker dependency
    - removed the Sub::Inject dependency (see above)
    - bump the MOP dependency

0.04 2017-09-27
    [FEATURE CHANGES]
    - moved the Moxie::Slot::Intitializer class to
      the MOP instead of here
    - lexical private lvalue slot accessors are now
      always generated, no need to specify them
      youself

    [DEPENDENCIES]
    - removed the B::CompilerPhase::Hook dependency
      and just use straight up Devel::Hook instead
    - removed the PadWalker dependency because we
      can now generate the slot accessor at BEGIN
      time and install them with Sub::Inject
    - added Sub::Inject dependency
    - bump the MOP dependency to support use of the
      MOP::Slot::Initializer class

0.03 2017-08-17
    [GITHUB]
    - generous typo fixes from my internet friends
        - Pierre Vigier
        - Evan Carroll

    [FEATURE CHANGES]
    - the way the BUILDARGS:init_args trait works now
      is very different and not backwards compatible
        - added tests in t/100-annotations/010-init-args.t
        - docs added to the Moxie module
        - This change is NOT backwards compatible

    - `has` now (also) takes a set of option pairs and
       generates the correct initializer based on those
       options
        - docs added to the Moxie module
        - This change is backwards compatible

    [BUG FIXES]
    - classes can now be loaded at runtime
        - added tests for this

    [DEPENDENCIES]
    - version bump for BEGIN::Lift and Method::Traits
      to make sure classes can be loaded at runtime

    - version bump for MOP to better support the
      custom slot initializer usage

0.02 05-07-2017
    - fixing missing dependency (PadWalker)
    - fixing some simple kwalitee issues

0.01 21-06-2017
    - Initial release to an unsuspecting world