0.24 - various doc fixes (Dan Dascalescu) - fix semantics when a Set::Deferred outlives the scope in which it was created and then gets vivified - add a test for MooseX::Traits - doc improvements - concurrency stress test - txn_do takes a 'scope' arg (calls new_scope automatically) - various doc fixes - add KiokuDB::Role::API 0.23 - Add KiokuDB::DoNotSerialize trait (MooseX::Storage trait is still respected) - add Collapser::Buffer, which replaces the various temp attrs. Changes from the buffer are only written to live objects after a successful write to the backend. This also fixes duplicate ID::Content objects being inserted when one is already live. - Various doc improvements 0.22 - Add TXN::Memory role to provide memory bufferred transactions to backends only supporting atomicity guarantees (e.g. CouchDB) - Documentation improvements - Allow skipping of test suite fixtures on broken backends - Various minor fixes and improvements 0.21 - Readded the dependency on JSON in addition to JSON::XS 0.20 - Refactored KiokuDB::TypeMap::Composite out of KiokuDB::TypeMap::Default - Added KiokuDB::TypeMap::Entry::StorableHook, which allows reusing of existing STORABLE_freeze hooks - Fixed handling of 'root' flag (was not being properly preserved) - Added 'is_root', 'set_root', 'unset_root' - Added a 'deep_update' method - Now depends on YAML::XS and JSON::XS (not optional deps anymore) - Various improvements to command line roles - Added a new GC command and a naive mark & sweep collector - Added a new Edit command using Proc::InvokeEditor to do a dump and a load in a single transaction - Added KiokuDB::Role::Intrinsic for objects which want to be collapsed intrinsically - Added KiokuDB::Role::Immutable for objects which never change after being inserted - Added KiokUDB::Role::ID::Content for content addressible objects - Test suite cleanups - Added ID enumeration to Scan role - Added 'allow_classes', 'allow_bases' and 'allow_class_builders' options to KiokuDB allowing for easy typemap creation. 0.19 - Introduce KiokuDB::Stream::Objects, a Data::Stream::Bulk for objects that automatically creates a new scope for each block. This makes it much harder to leak when iterating through C. 0.18 - Fix KiokUDB->connect("foo", @args) when the dsn string has no parameters (@args were being ignored) - Add a fixture to test that overwriting an entry is not allowed. 0.17 - More docs - remove KiokuDB::Backend::Null which was historically used for testing but is long since useless. - remove deprecated command line tools - provide a 'txn_do' method in Role::TXN for backends which only implement txn_begin, txn_rollback and txn_commit - correct plan for t/uuid.t when a module is missing 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) 0.15 - Last version was accidentally released off a problematic branch, rereleasing without that change 0.14 - skip incremental JSON parsing tests if JSON::XS is missing - load IO::Handle to attempt to work around some weird test failures 0.13 - t/serializer.t was causing bogus failures by not skipping if YAML::XS is unavailable - Cleanup of ( is => 'rw' ) bits in KiokuDB::Entry that should have really had private writers instead - Introduce partial handling of anonymous classes created due to runtime application of roles ( My::Role->meta->apply($instance) ) 0.12 - Remove a use Devel::PartialDump that accidentally got committed 0.11 - Fetching now queues items so that the backend's get() method is called fewer times, with more IDs each time. This significantly increases the performance of high latency backends, such as DBI or CouchDB. - fill in SimpleSearch stub fixture - Various fixes for Binary fixture - Make the various fields of the JSPON format customizable - Serialization is now pluggable using the Delegate serialization role 0.10 - Load classes in the typemap resolution code, so that objects whose classes aren't necessarily loaded at compile time can still be inflated. - add 'import_yaml' to KiokuDB::Util - Refactor parts of the JSPON file backend into a JSON serialization role - Don't load thunks when updating partially loaded objects - No longer dies if txn_do is used but the backend doesn't supports it (implicit noop) - Add a new role and test for nested transaction supporting backends (partial rollback) 0.09 - Remove KiokuDB::Resolver, moving ID assignment functionality into the collapser and the typemap - Fix bogus failures on 5.8 due to weird leaks (perl bug affecting test suite) 0.08 - Fix a breakage in inflating passthrough intrinsic objects created with older versions of KiokuDB - Refactor command line tools to use App::Cmd - Add KiokuDB::LinkChecker and a FSCK command 0.07 - Rename backend roles to KiokuDB::Backend::Role::Foo (omega) - Change entry packing format in Storable to something less idiotic 0.06 - Use epoch, not ISO 8601 dates in JSPON map by default to avoid issues with DateTime::Format::ISO8601 dependency in testing. Will support both in the future - Fix tied support for JSPON 0.05 - Add default typemaps for JSON and Storable serialization 0.04 - Fix ->clear in KiokuDB::GIN 0.03 - Lots of new docs - Smaller set of dependencies - Many deps are now optional (skips tests) - Some dependencies weren't necessary - Hand written code instead of MooseX::AttributeHelpers in live objects - Fixed an random test failure in live_objects.t that accidentally depended on address space ordering 0.02 - Lazy meta trait for attributes - DoNotSerialize meta trait is now respected - Documentation updates - Removes several unrelated files form the dist - NoGetopt related fixes for command line tools - Remove JSPON backend files - Dependency fixes - KiokuDB::Role::ID 0.01 - Initial Release