Over the past few months, we've been quietly open-sourcing a set
of our core libraries and applications. We've held back on
announcing them publicly as the repos form a chain, with one
dependent on the last, so it didn't make much sense to announce
them to the world until the complete chain was out there. We've
now reached that point.
Here's what's new:
1. turtle (https://github.com/sociomantic-tsunami/turtle). Our
utility library for implementing black-box application tests:
spawns the tested application as a separate process in a
temporary sandbox, then runs a set of auto-discovered test cases.
2. swarm (https://github.com/sociomantic-tsunami/swarm). The core
client/server library which forms the foundation of our various
distributed storage systems.
3. dhtproto (https://github.com/sociomantic-tsunami/dhtproto).
Based on swarm, defines the protocol for our Distributed Hash
Table database -- an in-memory database for quick-access, binary
data. The repo also contains the DHT client and a set of tests
(based on turtle) for a DHT server implementation.
4. dhtnode (https://github.com/sociomantic-tsunami/dhtnode).
Based on dhtproto, this is the actual implementation of our DHT
5. dlsproto (https://github.com/sociomantic-tsunami/dlsproto).
Based on swarm, defines the protocol for our Distributed Log
Store database -- a disk-based database for batch-read,
historical data. The repo also contains the DLS client and a set
of tests (based on turtle) for a DLS server implementation.
6. dlsnode (https://github.com/sociomantic-tsunami/dlsnode).
Based on dlsproto, this is the actual implementation of our DLS
These new repos are, of course, in addition to our ocean library
-- https://github.com/sociomantic-tsunami/ocean/ -- which was
open-sourced some time ago.
As with ocean, all of these repos are written in a subset of D2
that's compatible with D1. When we've finished our migration to
D2, D1 support in the libraries will be phased out.
- More sociomantic libraries and apps open... Gavin via Digitalmars-d-announce