# config

name: project-description
value:
  A set of packages to store arbitrary blobs, keyed by their sha1 hash. A type of associative memory where content is identified by its hash.


# reportfmt

title: All Tickets
cols:
  #ffffff Key:
  #f2dcdc Active
  #e8e8e8 Review
  #cfe8bd Fixed
  #bde5d6 Tested
  #cacae5 Deferred
  #c8c8c8 Closed

sqlcode:
  SELECT
    CASE WHEN status IN ('Open','Verified') THEN '#f2dcdc'
         WHEN status='Review' THEN '#e8e8e8'
         WHEN status='Fixed' THEN '#cfe8bd'
         WHEN status='Tested' THEN '#bde5d6'
         WHEN status='Deferred' THEN '#cacae5'
         ELSE '#c8c8c8' END AS 'bgcolor',
    substr(tkt_uuid,1,10) AS '#',
    datetime(tkt_mtime) AS 'mtime',
    type,
    status,
    subsystem,
    title
  FROM ticket


# event

type: ci
user: andreask
comment:
  Start on store sync operations. Essentially (de)serialization/transfer without an actual intermediate value representating the whole store. Transfer is incremental.


type: ci
user: andreask
comment:
  Completed synchronous push/pull, with testsuite. Reworked the interfaces for add/put also to avoid redundant operations (hash calculation). Method 'names' extended to support glob pattern, in all classes. Testsuite updated.


type: ci
user: andreask
ecomment:
  Implemented synchronous sync, with testsuite. Shuffled all expansion into the peer, for full control. Changes API of names, again, replaces internal Expand. Dropped Filter, was not used anymore.

comment:
  Implemented synchronous sync, with testsuite. Shuffled all expansion into the peer, for full control. Changes API of names, again, reaplces internal Expand. Dropped Filter, was not used anymore.


type: ci
user: andreask
comment:
  Merge sync API changes, new store depends on them. Completed new store, plus testsuite basic. Core tests pass.


type: ci
user: andreask
comment:
  Start on a blob store exploiting in-blob redundancy by splitting into smaller blocks and sharing them.


