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.16

  • Lots of docs
  • Fix KiokuDB::Reference's Storable hook limitation using a simple workaround. Not a real fix yet.
  • Remove unnecessary code from the UUID generation roles.
  • In KiokuDB::Cmd::OutputHandle, don't clobber the file before the command has actually run (remove EarlyBuild attr)

Documentation

Getting started with KiokuDB

Modules

Object Graph storage engine
Backend interface role
In memory backend for testing purposes.
An informational role for binary data safe backends.
Backend clearing api
Backend specific query API
Query::Simple implemented with a linear scan of all entries.
Root set iteration
Backend level transaction support.
Informational role for backends supporting rollback of nested transactions.
An informational role for binary data safe backends.
Serialization role for backends
Use a KiokuDB::Serializer object instead of a role to handle serialization in a backend.
Role to serialize entries to JSON strings with KiokuDB::Backend::Serialize::JSPON semantics
JSPON serialization helper
Collapse entry data to JSPON compliant structures
Common functionality for JSPON expansion/collapsing
Inflate JSPON to entry data.
Storable based serialization of KiokuDB::Entry objects.
YAML::XS based serialization of KiokuDB::Entry objects.
A role for backends with a default typemap
KiokuDB specific metaclass
KiokuDB command line tools
Base class for writing KiokuDB command line tools.
Dump database entries for backup or munging purposes
Check for broken references
Load database dumps
A role for command line tools that have a KiokuDB::Serializer object specified using a --format option.
A role for command line tools with a --file option to be used for read acces.
A role for command line tools with a --file option that will be used for write access.
A role for command line tools which accept entry IDs as options
A role for command line tools that should run inside a transaction
A role for command line tools that have a --verbose option.
Collapse object hierarchies to entry data
An entry in the database
Gin assisted recollection
Reference consistency checker
Relinks live objects from storage entries
Live object set tracking
Scope helper object
Transaction scope.
Trait for lazy loaded attributes
Moose::Meta::Instnace level support for lazy loading.
A symbolic reference to another KiokuDB::Entry.
A role for objects who choose their own ID.
UUID generation role.
Serial ID assignment based on a global counter.
Standalone serializer object
Set::Object wrapper for KiokuDB with lazy loading.
Implementation of deferred set.
Implementation of loaded sets
Role for KiokuDB::Sets that are tied to storage.
Stored representation of KiokuDB::Set objects.
Implementation of in memory sets.
Reusable tests for KiokuDB backend authors.
Internal only placeholder for deferred objects
Class to collapsing/expanding logic.
A standard KiokuDB::TypeMap with predefined entries.
A KiokuDB::TypeMap::Default implementation that canonicalizes the standard types to simplified versions.
A KiokuDB::TypeMap::Default instance suitable for Storable.
Role for KiokuDB::TypeMap entries
Caching resolver for KiokuDB::TypeMap
Try a list of KiokuDB::TypeMaps in order
Utility functions for working with KiokuDB

Provides

in lib/KiokuDB/Backend/Null.pm
in lib/KiokuDB/Backend/Role/Prefetch.pm
in lib/KiokuDB/Backend/Role/Query/GIN.pm
in lib/KiokuDB/Backend/Serialize/Memory.pm
in lib/KiokuDB/Backend/Serialize/Null.pm
in lib/KiokuDB/Backend/TypeMap/Default/JSON.pm
in lib/KiokuDB/Backend/TypeMap/Default/Storable.pm
in lib/KiokuDB/Cmd/WithDSN.pm
in lib/KiokuDB/Cmd/WithDSN/Create.pm
in lib/KiokuDB/Cmd/WithDSN/Read.pm
in lib/KiokuDB/Cmd/WithDSN/Write.pm
in lib/KiokuDB/LinkChecker/Results.pm
in lib/KiokuDB/Role/TypeMap.pm
in lib/KiokuDB/Role/UUIDs/DataUUID.pm
in lib/KiokuDB/Role/UUIDs/LibUUID.pm
in lib/KiokuDB/Serializer/JSON.pm
in lib/KiokuDB/Serializer/Storable.pm
in lib/KiokuDB/Serializer/YAML.pm
in lib/KiokuDB/Set/Base.pm
in lib/KiokuDB/Test/Company.pm
in lib/KiokuDB/Test/Employee.pm
in lib/KiokuDB/Test/Fixture.pm
in lib/KiokuDB/Test/Fixture/Binary.pm
in lib/KiokuDB/Test/Fixture/Clear.pm
in lib/KiokuDB/Test/Fixture/GIN/Class.pm
in lib/KiokuDB/Test/Fixture/ObjectGraph.pm
in lib/KiokuDB/Test/Fixture/Scan.pm
in lib/KiokuDB/Test/Fixture/SimpleSearch.pm
in lib/KiokuDB/Test/Fixture/Small.pm
in lib/KiokuDB/Test/Fixture/TXN.pm
in lib/KiokuDB/Test/Fixture/TXN/Nested.pm
in lib/KiokuDB/Test/Fixture/TypeMap/Default.pm
in lib/KiokuDB/Test/Fixture/Unicode.pm
in lib/KiokuDB/Test/Person.pm
in lib/KiokuDB/TypeMap/Default/JSON.pm
in lib/KiokuDB/TypeMap/Default/Storable.pm
in lib/KiokuDB/TypeMap/Default.pm
in lib/KiokuDB/TypeMap/Entry/Alias.pm
in lib/KiokuDB/TypeMap/Entry/Callback.pm
in lib/KiokuDB/TypeMap/Entry/MOP.pm
in lib/KiokuDB/TypeMap/Entry/Naive.pm
in lib/KiokuDB/TypeMap/Entry/Passthrough.pm
in lib/KiokuDB/TypeMap/Entry/Set.pm
in lib/KiokuDB/TypeMap/Entry/Std.pm
in lib/Moose/Meta/Attribute/Custom/Trait/KiokuDB/Lazy.pm
in lib/KiokuDB/Test/Fixture/TypeMap/Default.pm