The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

Changes for version 0.20

  • Add support for Storage( traits => [...] ) with a MooseX::Storage::Traits::XX namespace to alter the behaviour of the storage engine. (Suggestions for how to make this less fugly appreciated)
  • Add feature to disable cycle checking, either via engine trait or option
    • add docs & tests (including 1 TODO test)
  • Add feature to only serialize attributes whose predicate returns 'true'
  • Implement the unpack( $data, inject => {...} ) feature.
    • add docs & tests
  • Move Base::WithChecksum to build upon Basic.pm, avoid code duplication
  • Add extra test to ensure restoring fails if required argument isn't provided
  • Fix a bug where if a required constructor argument was not serialized, it was impossible to ->unpack again.

Modules

A serialization framework for Moose classes
A more secure serialization role
The simplest level of serialization
A role for undecisive programmers
The meta-engine to handle collapsing and expanding objects
The actually atomic file storage mechanism.
The actually file storage mechanism.
A custom trait to bypass cycle detection
An engine trait to bypass serialization
A JSON serialization role
A Storable serialization role
A YAML serialization role
An Atomic File I/O role
A basic File I/O role
An Storable File I/O role
A custom meta-attribute to bypass serialization
A custom meta-attribute-trait to bypass serialization
A custom trait to bypass cycle detection
A custom trait to bypass serialization
A MooseX::Storage swiss-army chainsaw

Provides

in lib/MooseX/Storage/Meta/Attribute/DoNotSerialize.pm
in lib/MooseX/Storage/Meta/Attribute/Trait/DoNotSerialize.pm