aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* read at most 265 MiB from mycelium per messagetv8 days1-2/+36
|
* decode sync messages lazilytv8 days3-9/+40
| | | | | | | Sync messages are now being decoded only where they are applied: after membership has been checked, in the sync lane's blocking task. Debug now shows only the size instead of the whole message.
* keepalive sends head samples alongside digesttv8 days4-47/+117
| | | | | | When there are more than 32 heads that can be send in a single keepalive message, the digest is accompanied by 32 heads, a different window each time, so after a few keepalives every head has been listed.
* add pull queuetv8 days4-36/+86
|
* don't cast votes once there's a majoritytv8 days2-4/+48
|
* poll mycelium inbox concurrentlytv8 days1-55/+81
|
* POST timeout depends on content sizetv8 days1-1/+24
| | | | | Replace the fixed timeout by a variable one depending on content size with the formula: 10 s + content-size / 1 MiB/s
* send sync messages off workertv8 days1-1/+23
|
* read stamps sync and lock freetv8 days8-24/+68
|
* add sync lanestv8 days4-3/+75
|
* compute member pair scores cheaplytv8 days1-22/+65
|
* include version in wire formattv8 days2-11/+111
|
* show sender on mycelium transport parse errortv8 days1-0/+9
|
* unreachability doesn't expiretv8 days5-19/+70
|
* forget records only oncetv8 days2-9/+37
|
* fix race between alive check and forgettingtv8 days3-9/+31
|
* forgotten nodes cancel their own recordstv8 days2-15/+53
|
* add session IDstv8 days2-19/+87
| | | | | This prevents the regenerate flag from being lost across reset_sync during an in-flight send.
* number handshakestv8 days8-7/+96
| | | | This prevents late hellos from resetting the session.
* keep silent strangers for a daytv9 days2-3/+40
|
* send bounded peer liststv9 days7-7/+59
|
* wrap unix timestamps in newtypetv9 days17-123/+207
|
* allow humand-friendly durations in APItv9 days3-19/+40
|
* private mycelium needs both key and nametv9 days3-15/+19
|
* allow force only in args, not in filestv9 days1-1/+31
|
* add GET /stream endpointtv9 days2-2/+17
|
* remove /debug/blacklist endpinttv9 days2-30/+7
|
* remove /admin/compaction endpointtv9 days2-24/+3
|
* remove unit suffixes from fieldstv9 days4-34/+61
|
* allow humand-friendly durations and sizes in CLItv9 days9-67/+341
|
* unify API error responsestv9 days3-17/+62
|
* SyncSessions owns Automerge's sync statetv9 days5-85/+128
|
* cleanup mycelium daemontv9 days4-53/+21
|
* split mycelium daemon in its own moduletv9 days4-368/+376
|
* unify keepalivetv9 days1-15/+23
|
* split peer moduletv9 days9-915/+995
|
* unify peers snapshot logictv9 days6-52/+24
|
* unify lock logictv9 days25-134/+116
|
* move protocol paths to dedicated moduletv9 days11-62/+96
|
* replace shadow types by wire codectv9 days3-428/+433
|
* refresh peers after stalltv9 days3-1/+57
|
* split state moduletv9 days7-1297/+1362
|
* make test RNG configurable via envtv9 days1-3/+12
|
* add replay testtv9 days1-0/+65
|
* add heads summary testtv9 days1-0/+37
|
* add random swarms testtv9 days4-32/+149
|
* add soak testtv9 days2-0/+102
|
* add clock moduletv9 days18-75/+164
| | | | | The Clock module is the system clock that every unix timestamp new goes through. It comes with an offset that only tests can set.
* add stalled source testtv9 days2-3/+46
|
* avoid stalled sourcetv9 days3-2/+28
| | | | | | | | | | | | | A source given up for not answering our sync messages could become the source again straight away. Whoever asks first after the reset takes the role, and that's often the same peer, which would then stall for another delivery limit. Now, a stalled source isn't chosen again for one more delivery_limit. If it's the only candidate, catching up waits that long and then tries it again. Before, a retry with that peer couldn't have helped any sooner anyway: a source is only given up after a whole delivery limit without a sync message, and that clock restarts when it is chosen again.