Commit graph

171 commits

Author SHA1 Message Date
Trolli Schmittlauch fe673dc255 make NodeState a typeclasse, define setters and getters on its representations
contributes to #20
2020-05-21 23:40:10 +02:00
Trolli Schmittlauch 99a2b0ba09 add instance deriving instructions 2020-05-20 19:27:51 +02:00
Trolli Schmittlauch f6c252d314 sending a queryID request compiles (untested) 2020-05-20 18:55:24 +02:00
Trolli Schmittlauch beffab99a0 clarify counting of FediChordMessage parts 2020-05-19 19:50:36 +02:00
Trolli Schmittlauch c31baa3635 run stylish 2020-05-19 17:55:40 +02:00
Trolli Schmittlauch 8d18f952cd implement send-receive-acknowledge-retry loop for requests 2020-05-19 17:53:13 +02:00
Trolli Schmittlauch 0e6f126b3b Merge branch 'master' into dhtNetworking 2020-05-19 16:51:43 +02:00
Trolli Schmittlauch 84bcd676ae move protocol data definitions to own module to prevent cyclic imports 2020-05-19 16:30:56 +02:00
Hécate 41e999ed99 Linting integration
This commit brings in an HLint configuration file
and several recommended modifications such as:

* End-of-line extra spaces removal;
* Import lines ordering;
* Redundant $ removal;
* Generalisation of ++ and map to <> and fmap;
* Preferring `pure` over `return`;
* Removing extraenous extensions.

And finally, a `stylish-haskell` helper script
that detects if code files are dirty. Can be useful for CI,
although manually calling it can be nice if you would rather
first implement then beautify.
2020-05-19 12:42:06 +02:00
Trolli Schmittlauch 60c164dbb0 remove unnecessary directory level 2020-05-19 00:01:32 +02:00
Trolli Schmittlauch 8b01ad2f37 remove unnecessary directory level 2020-05-17 21:31:44 +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