50044673a6
server endpoint for tag-post delivery
2020-07-31 17:46:33 +02:00
e3c7faa80b
properly initialise RealNode with service and vserver data, set up reference
2020-07-31 16:54:19 +02:00
5ffe1b074e
add reference from RealNode to Service
...
This required to make both RealNode(STM) and LocalNodeState(STM) parameterisable
polymorphic types
2020-07-30 02:19:52 +02:00
4bf8091143
fix type signature of fediChordInit
2020-07-30 01:30:42 +02:00
98ca0ff13e
service config, integrate service launch into DHT launch
...
TODO: hold a reference from DHT to service
2020-07-30 01:23:03 +02:00
da47f8062f
add lease time to subscription entries
2020-07-29 23:06:07 +02:00
ad52a017aa
add relay inbox endpoint
2020-07-29 22:15:14 +02:00
bd70e2dff0
implement multiple post fetch (with placeholder content)
2020-07-29 00:06:27 +02:00
63bc06a88e
implement post fetch (with placeholder content)
2020-07-28 23:45:21 +02:00
970c94ff0d
set up subscription data structures and transfer subscription endpoint
2020-07-28 23:17:26 +02:00
3b65757406
worker thread for processing incoming posts in background, started together with web server
2020-07-28 02:12:15 +02:00
736815ea83
normalise hastag unicode representation of incoming posts
2020-07-27 21:49:49 +02:00
daae9d0b38
process and enqueue incoming posts
2020-07-27 21:39:49 +02:00
04423171fd
define data types for post and subscription storage
2020-07-27 13:20:15 +02:00
7878c67635
adjust rest of code to refactored RingMap
2020-07-27 00:37:31 +02:00
988144e9e7
further relax constrains on RingMap
...
key now needs to be explicitly given at insert, instead of
deriving it from the value. This makes it possible to store values where
a key cannot be extracted from (HasKeyID)
contributes to #62 , #32 , #41
2020-07-26 18:55:55 +02:00
6349e05033
enable HIE only in the shell environment, but not by default
2020-07-26 16:38:56 +02:00
473ccb631d
add hie as language server to dev environment
2020-07-26 16:26:26 +02:00
91ac4ca7e1
Merge pull request 'refactorRingMap' ( #63 ) from refactorRingMap into mainline
...
This PR likely enables too many LanguageExtensions and could possibly be simplified, see 63.
Merging this for now though as tests run through fine.
2020-07-26 00:07:53 +02:00
1dfa7a5b8e
Merge commit ' d55c2f1f1b
' into mainline
2020-07-26 00:02:36 +02:00
0d1551261b
adjust code to refactored and parameterisable RingMap
...
is a bit ugly due to FlexibleContexts being neede at several places
2020-07-25 23:59:48 +02:00
9a20a60222
fix type constraints after RingMap refactor
2020-07-25 23:59:48 +02:00
1ff540fd68
refactor RingMap into own module
2020-07-25 23:59:48 +02:00
d55c2f1f1b
define typeclasses for interfacing between PostService and DHT
2020-07-25 23:59:40 +02:00
da1b8f4b9d
define typeclasses for interfacing between PostService and DHT
2020-07-25 23:54:27 +02:00
1a085f2fe0
define typeclasses for interfacing between PostService and DHT
2020-07-25 01:53:59 +02:00
c05544aa5b
able to start a web server and run the mock API handlers
...
contributes to #41 , #32
2020-07-23 18:29:52 +02:00
f1697e5fd7
re-structure post API, placeholder handlers
...
contributes to #41 , #32
2020-07-23 16:25:14 +02:00
5fedd9f87c
specify post relay API endpoints
...
contributes to #41 , #32
2020-07-23 00:09:45 +02:00
e2ecf0739d
maybeEmpty can be replaced by Data.List.listToMaybe
2020-07-22 02:56:30 +02:00
ebc0d54ddc
periodically purge lookup cache of expired entries
...
closes #24
2020-07-16 00:24:44 +02:00
0ea5402231
improve documentation exports
2020-07-15 01:48:27 +02:00
c37fe88b35
store and initialise lookup cache
...
contributes to #24
2020-07-15 01:44:47 +02:00
42af6afb86
generalise CacheEntry type
...
contributes to #24
2020-07-15 01:32:37 +02:00
8ade04e48d
disable online package fetching, only starts to work with cabal 3.4 and needs to be renamed then
2020-07-14 13:40:13 +02:00
7fa6db81de
make sure send sockets are bound to the correct local IP
2020-07-11 19:51:03 +02:00
384be969b7
Merge branch 'dhtNetworking' into mainline
...
closes #1 #3
2020-07-08 01:19:54 +02:00
61ea6ed3ff
Periodically contact bootstrap nodes for convergence sampling or joining
...
closes #56
2020-07-08 01:18:53 +02:00
56ca2b53cc
refactor trying to join on any bootstrap node into own function
...
contributes to #56
2020-07-07 18:07:25 +02:00
d293cc05d1
data structure for RealNode holds common config and management data
...
contributes to #56 , #34 , #2
2020-07-07 17:36:12 +02:00
df7423ce2e
fixup! iteration limit for QueryID lookups
2020-07-05 18:18:51 +02:00
e91f317a8e
decrease logging verbosity
2020-07-05 16:52:09 +02:00
7c17e3a44d
implement join-retry on new cache entries
...
closes #42
2020-07-05 16:48:57 +02:00
bdb92411c6
iteration limit for QueryID lookups
...
- closes #52
2020-07-02 03:34:40 +02:00
e06c53ff7c
stylish fixes
2020-07-02 01:38:51 +02:00
edf66e1b51
add som debug prints
2020-07-02 01:36:31 +02:00
f6481996d7
Change default response to QueryID for unjoined nodes
...
reason: allow unjoined nodes to find bootstrap node in local cache,
while always advertising itself to incoming requests for bootstrapping.
2020-07-02 00:54:14 +02:00
8d349212b4
prevent cache invariant querying when not joined
2020-07-01 18:24:33 +02:00
abbe664ca1
fixup! make sure that own node isn't added as neighbour
2020-06-30 00:26:26 +02:00
eab5a73ead
make sure that own node isn't added as neighbour
2020-06-29 13:42:39 +02:00