| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | remake: read ops, not diffs | tv | 32 hours | 2 | -6/+6 |
| | | | | | This gives bench_replay a speedup of ~8x/64x/280x. | ||||
| * | api: /admin/changes read ops, not diffs | tv | 32 hours | 2 | -10/+90 |
| | | | | | | | | | | | | | The new store::changed_by reads each change's own operations instead of diffing the document before and after it. Each object's path is found once per change, as it was right after that change. So the cost now grows with the size of the change, not the size of the map it touched. - It names paths the same way the diff did: a map entry by its key, and list and text edits by the list or text. - It relies on import_obj, which Automerge marks as hidden from its docs, to turn an operation's object ID back into an object. | ||||
| * | api: drop $float as JSON number is OK | tv | 32 hours | 3 | -34/+48 |
| | | |||||
| * | api: add type casts | tv | 32 hours | 5 | -6/+244 |
| | | |||||
| * | add remake benchmarks | tv | 32 hours | 4 | -3/+94 |
| | | |||||
| * | api: types are sticky | tv | 33 hours | 4 | -98/+298 |
| | | |||||
| * | api: add application/vnd.continuum.typed+json | tv | 33 hours | 3 | -189/+376 |
| | | |||||
| * | api: add application/vnd.continuum.* scalar types | tv | 33 hours | 5 | -122/+768 |
| | | |||||
| * | add document benchmarks | tv | 44 hours | 2 | -0/+172 |
| | | |||||
| * | api: add x-continuum-heads to writes | tv | 44 hours | 2 | -26/+45 |
| | | |||||
| * | probe when reachable | tv | 44 hours | 10 | -1/+69 |
| | | |||||
| * | probe wakes peer worker | tv | 44 hours | 1 | -2/+3 |
| | | |||||
| * | document: create new compound values at once | tv | 45 hours | 1 | -11/+29 |
| | | | | | | This speeds up large writes as new maps and lists are created in one batch operation instead of one operation per value. | ||||
| * | document: introduce patch log | tv | 45 hours | 5 | -22/+148 |
| | | |||||
| * | api: add support for counters | tv | 45 hours | 3 | -5/+86 |
| | | |||||
| * | api: allow reading past versions | tv | 45 hours | 5 | -9/+308 |
| | | |||||
| * | api: introduce /admin/changes | tv | 45 hours | 3 | -1/+141 |
| | | |||||
| * | record node ID and API user for every write | tv | 45 hours | 3 | -14/+77 |
| | | |||||
| * | api: PUT changes only what differs | tv | 45 hours | 1 | -23/+148 |
| | | |||||
| * | dashboard: always try showing ping/pong alias | tv | 45 hours | 2 | -1/+30 |
| | | |||||
| * | we're a replicated document, not KV store | tv | 46 hours | 2 | -3/+3 |
| | | |||||
| * | ping & pong are tied by nonce only | tv | 46 hours | 2 | -5/+18 |
| | | |||||
| * | large messages over slow links are deltas | tv | 46 hours | 4 | -14/+85 |
| | | |||||
| * | introduce per-transport sync reply timeout | tv | 46 hours | 9 | -13/+56 |
| | | |||||
| * | path probes follow keepalive | tv | 46 hours | 3 | -9/+41 |
| | | |||||
| * | libp2p: idle timeout follows keepalive | tv | 46 hours | 5 | -2/+22 |
| | | |||||
| * | tor: read max sync message | tv | 46 hours | 1 | -3/+5 |
| | | |||||
| * | links: wait for subscriber instead of ticker | tv | 47 hours | 1 | -6/+16 |
| | | |||||
| * | remake: download wakes on end instead of ticker | tv | 47 hours | 2 | -6/+15 |
| | | |||||
| * | peer worker forget records on change | tv | 47 hours | 6 | -4/+32 |
| | | |||||
| * | peer worker sleeps until deadline, not fixed time | tv | 47 hours | 10 | -32/+170 |
| | | |||||
| * | bootstrap: replace pull by progress notify | tv | 47 hours | 11 | -2/+52 |
| | | |||||
| * | dashboard: intended edges are loose | tv | 47 hours | 1 | -7/+14 |
| | | |||||
| * | dashboard: allow message inspection | tv | 47 hours | 3 | -30/+287 |
| | | |||||
| * | dashboard: 24h-clock | tv | 47 hours | 1 | -1/+4 |
| | | |||||
| * | dashboard: one spring per edge | tv | 47 hours | 1 | -4/+6 |
| | | |||||
| * | dashboard: figures open on press | tv | 47 hours | 1 | -2/+14 |
| | | |||||
| * | add lost vote with restart test | tv | 47 hours | 1 | -1/+81 |
| | | |||||
| * | add restart tests | tv | 47 hours | 3 | -6/+75 |
| | | |||||
| * | libp2p: no public addresses before probes | tv | 47 hours | 1 | -1/+5 |
| | | |||||
| * | libp2p: identify leaves out ignored externals | tv | 48 hours | 3 | -2/+18 |
| | | | | | | Identify no longer tells peers confirmed external addresses in ignored ranges, unless they were announced. | ||||
| * | libp2p: remember wrong addresses | tv | 48 hours | 4 | -0/+58 |
| | | |||||
| * | alive stamps too much in the future are ignored | tv | 48 hours | 1 | -3/+9 |
| | | |||||
| * | remake: decouple grace time from node's keepalive | tv | 48 hours | 6 | -10/+94 |
| | | |||||
| * | document: allow writes during rejoin | tv | 48 hours | 11 | -348/+571 |
| | | |||||
| * | LWW everywhere, mostly | tv | 48 hours | 10 | -23/+385 |
| | | |||||
| * | fixup: sim clock off under identity | tv | 2 days | 1 | -1/+2 |
| | | |||||
| * | fixup: preference test public address | tv | 2 days | 1 | -1/+2 |
| | | |||||
| * | fixup: golden byte follows wire version | tv | 2 days | 1 | -6/+8 |
| | | |||||
| * | add 7h old electorate test | tv | 2 days | 1 | -0/+16 |
| | | |||||
