Commit graph

325 commits

Author SHA1 Message Date
Trolli Schmittlauch 0e33d442f9 EpiChord: create a stub cache-invariant checker
rough logic is implemented, but only for successors and not
predecessors.
Additionally it just returns empty IO actions instead of lookup
operations, until those are implemented.
part of #1

Untested!
2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 88897ea741 generation of key IDs 2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 8ece8646d4 fix some more warnings 2020-05-17 21:31:43 +02:00
Trolli Schmittlauch b234c7ac4e more tests #2 2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 9d20589cf8 fix some warnings 2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 84a48e63c2 stub main executable file 2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 3c981fbf86 implement NodeID generation + tests
contributes to #1 #2
2020-05-17 21:31:43 +02:00
Trolli Schmittlauch b41acaf52a debugged computation bug in ByteString to UInteger conversion
likely caused by an overflow, but don't have time to investigate
2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 2d05d0644d buggy prototype of bytestring to UInteger conversion 2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 8ad247978a prototyping the NodeID creation hashing function
- misses conversion from ByteString to Integer
- uses unperformant Lazy ByteString builders + conversion to strict ones
2020-05-17 21:31:43 +02:00
Trolli Schmittlauch f1a52ab0b8 re-structure Nix environment to make use of compiler and nixpkgs pinning 2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 523c33482c tests for NodeID ordering and NodeState creation #2 2020-05-17 21:31:43 +02:00
Trolli Schmittlauch bfde27cea6 restructure tests
contributes to #2
2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 04b3a1f8b4 fix build of executable 2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 57e759836c implement first actual test case with hspec and run it 2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 21fef145a0 working project structure with tests
- restructured project again: splitting into executable and Hash2Pub
  library
- placeholder test file is successfully compiled and run
2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 30cfed81ea restructure nix development environment, now with Hoogle 2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 6329f815d1 Initial packaging as a Cabal package, in preparation for #2
- also restructures shell.nix to parse cabal file instead of directly
  specifying dependencies
2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 3b3ee09575 fix Haddock documentation, contrinutes to #8 2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 08932cf80a selectively export only needed constructors 2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 4a89ffe25a improve documentation, contributes to #8 2020-05-17 21:31:43 +02:00
Trolli Schmittlauch 3f9452ab7e choose and implement data structures for node state and cache 2020-02-27 22:10:57 +01:00
Trolli Schmittlauch ce4cc385b8 rename whole project and make DHT implementation as a project specific module 2020-02-26 14:11:33 +01:00
Trolli Schmittlauch 6c5faa4fc6 rename DHT implementation as it deviates from the EpiChord paper 2020-02-24 22:56:03 +01:00
Trolli Schmittlauch e83710f10b Start implementing the Epichord DHT: NodeID type 2020-02-24 21:53:47 +01:00