KiokuDB is a Moose-based interface to various data storages.
Its purpose is to provide persistence for "regular" objects with as little effort as possible, without sacrificing control over how persistence is actually done, especially for harder to serialize objects.
KiokuDB is also non-invasive: it does not use ties, AUTOLOAD, proxy objects, sv_magic or any other type of trickery.
Many features important for proper Perl space semantics are supported, including shared data, circular structures, weak references, tied structures, etc.
KiokuDB is meant to solve two related persistence problems: interoperability and transparent persistence.
KiokuDB focuses on predictability and transparency, providing quick, easy and noninvasive persistence while minimising the undesired surprises caused by naive serialization approaches.
The project builds on Moose's metaprogramming, Search::GIN's indexing, and preexisting database technologies such as Berkeley DB for high performance and robust transactional storage.
What's New in This Release: [ read full changelog ]
· Allow a backend to provide a default typemap in addition to the serializer one.
· Call 'register_handle' on duck-typing backends in KiokuDB::BUILD.
· Plug a leak where the live object set kept an indirect reference to passthrough entries.