580410e0b4
simple post fetch worker thread
2020-08-13 13:07:50 +02:00
c1ce386b65
send prepared subscriptions and clean up on success
2020-08-12 15:23:10 +02:00
2e88a4079b
extract and build subscriber payload for sending
2020-08-12 14:07:19 +02:00
1d808b6776
fix typo
2020-08-12 12:16:20 +02:00
1258f673da
flush responsibility cache and retry in post queue delivery
2020-08-12 12:07:41 +02:00
96c1963a4f
actually check own responsibility for tags before accepting posts
2020-08-11 00:16:10 +02:00
7036867ae0
implemented first Servant client query
2020-08-03 22:50:48 +02:00
20e51ecca4
define API client functions
2020-08-02 14:59:03 +02:00
89706f688a
server endpoint for tag unsubscription
2020-08-01 11:18:16 +02:00
7280f251b5
server endpoint for tag subscription
2020-08-01 11:00:38 +02:00
7d7fa3b52a
fix haddock parsing
2020-07-31 17:49:52 +02:00
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
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
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
7fa6db81de
make sure send sockets are bound to the correct local IP
2020-07-11 19:51:03 +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