From fbf372144c3468dd00e5b12b63ef6e77634a4500 Mon Sep 17 00:00:00 2001 From: Bryan Newbold Date: Wed, 25 Oct 2017 00:53:12 -0700 Subject: update README with progress list --- README.md | 42 ++++++++++++++++++++++++++++++++++++------ 1 file changed, 36 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 768177e..8757dc8 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,3 @@ -.. _ __ _ ___ _ __ (_)______ _ @@ -10,12 +9,43 @@ this is a very poor / partial / non-compliant dat implementation in rust. it will eat-your-data. -SLEEP v2: Syncable Lightweight Event Emitting Persistence +### Progress -Libraries: -- rust-crypto for blake2b and Ed25519 -- integer-encoding for varints -- ??? for protobuf +- [ ] SLEEP v2 Files + - [x] read/write file headers + - [x] read/write file chunks as raw bytes + - [ ] pread/pwrite file chunks without seeking + - [x] read data entries by index + - [ ] append data entries + - [ ] verify entire register (signatures and merkel tree) + - [ ] bitfields +- [ ] Drive metadata and files + - [ ] add file to register + - [ ] checkout file from register + - [ ] print file tree ("ls") + - [ ] add directory recursively + - [ ] checkout directory recursively +- [ ] Networking + - [ ] send/receive encrypted messages to a known host + - [ ] pull register from a known host + - [ ] sync register to a known host + - [ ] lookup hosts in DHT swarm by discovery key +- [ ] Wrapper command + - [ ] clone + - [ ] share + - [ ] log + - [ ] status + - [ ] add + +### Dependencies + +Requires libsodium-dev system-wide (for now). + +Notable Rust Libraries: +- rust-crypto for blake2b +- sodiumoxide Ed25519 (signing) and XSalsa20 (stream) +- integer-encoding for simple varints (network protocol) +- rust-protobuf for protobuf (network protocol) - ??? for Kademlia Mainline DHT protobuf code generated with `rust-protobuf`; the `protoc` tool (`sudo apt -- cgit v1.2.3