Skip to content

Releases: laforge49/aatree

Db-chan, Null-db-cache and LRU-db-cache

12 Dec 02:15
Compare
Choose a tag to compare

Calf and Yearling now use the db chan trait in place of the db agent trait by default.

Yearling now uses the lru db cache trait by default but also works with the null db cache trait.

Ultralight Components

06 Dec 14:45
Compare
Choose a tag to compare

Calf and Version are now implemented using component bags with a minimal close function stack.

The API has been reworked and the implementation no longer depends on dynamic variables.

Transcription makes using aatree easy

14 Nov 22:12
Compare
Choose a tag to compare

With so many different implementations of sorted-map, sorted-set and vector, things could get messy. But the function (aatree.core.transcribe val opts) can be used to convert trees using one implementation to trees that use a different implementation. Even nicer, transcription is invoked transparently when adding structures to an aa structure with a different implementation.

Another potential complication occurs when moving data between aatree databases, as virtual aa structures are tied to the database that contains them. But this is handled transparently through transcription when an aa database is updated with data from a different database.

bug fixes

12 Nov 15:22
Compare
Choose a tag to compare

Fixes the bugs introduced in release 0.5.1.

Memory Constrained for Queries

08 Nov 20:21
Compare
Choose a tag to compare

Queries can endlessly deserialize a large database, potentially causing an out-of-memory exception. To prevent this and maintain a minimal memory footprint, weak references are used except during an update.

Virtual DataStructures

01 Nov 17:39
Compare
Choose a tag to compare

Virtual Data Structures now work with the Yearling Database. Data structures can now be larger than memory. And when accessing a data structure, only the parts of interest are loaded. All data structures remain fully compatible with the standard Clojure data structures.

Yearling, a small COW database with disk management.

27 Oct 21:15
Compare
Choose a tag to compare

Yearling is an extension of the Calf database, but with the addition of a disk management facility. Think of it as being b-tree ready.

Calf, A Small C.O.W. Database

23 Oct 14:05
Compare
Choose a tag to compare

Lazy map is used to create a database.

Durable Applications, Further Decoupling

19 Oct 11:40
Compare
Choose a tag to compare

Includes sample application code for file save/load. But the main thrust of this release is a new API for decoupling application code from the implementation of its data structures. (The old API has been deprecated.)

AASet

14 Oct 12:53
Compare
Choose a tag to compare

AASet has been provided for completeness. AASets can be nested within both AAMap and AAVector structures.