Commit Graph

293 Commits

Author SHA1 Message Date
Tony Garnock-Jones 3030d1959e Use flow control to avoid being spammed by fast talkers 2020-06-10 13:38:26 +02:00
Tony Garnock-Jones 55f01cea3f Placeholders no longer available in preserves 2020-06-10 12:06:10 +02:00
Tony Garnock-Jones d300f24243 Update path to preserves package 2020-04-27 21:10:48 +02:00
Tony Garnock-Jones c55e5924f7 Update commit names 2020-04-27 20:34:09 +02:00
Tony Garnock-Jones f269c02c23 Rearrange for independent packages. 2020-04-27 20:27:48 +02:00
Tony Garnock-Jones 419e90e42f server-session-connected avoids assert-lock of server-connected 2019-09-11 16:07:54 +01:00
Tony Garnock-Jones 0013c917b3 Update to new preserves API 2019-09-11 15:10:44 +01:00
Tony Garnock-Jones c9c0d8bb09 Default TCP port 21369 2019-06-23 14:01:30 +01:00
Tony Garnock-Jones 976741cd49 Cope with echo-server minimart-benchmark test: flat new-connection cost 2019-06-21 16:43:59 +01:00
Tony Garnock-Jones df6918bc6f Remove out-of-date example expansions 2019-06-21 16:43:24 +01:00
Tony Garnock-Jones 751d8e104a On start, only relay subs with active holders 2019-06-20 22:54:59 +01:00
Tony Garnock-Jones 6514e1731f Must be able to disable heartbeats for testing 2019-06-20 12:19:45 +01:00
Tony Garnock-Jones aef3490a20 Proper heartbeats 2019-06-20 11:55:29 +01:00
Tony Garnock-Jones c122253681 Update HOWITWORKS.md 2019-06-18 18:01:40 +01:00
Tony Garnock-Jones 5923bdd3ce Partial repair for a deep problem with visibility-restriction.
This change makes `during` work "atomically" across a communications
delay, by ensuring that a retracted assertion matching the `during`'s
pattern triggers the "stop on" clause in the expansion of the
`during`.

Some discussion of the change exists in the Journal and in my
notebook.
2019-06-18 17:56:09 +01:00
Tony Garnock-Jones ff25f8b377 Cosmetic: indicate protocol grouping 2019-06-13 12:51:20 +01:00
Tony Garnock-Jones 68ba310327 Terminate federation link facet on receipt of Err 2019-06-13 12:51:11 +01:00
Tony Garnock-Jones 2512d68852 Repair error: an End was missing 2019-06-13 12:50:55 +01:00
Tony Garnock-Jones c17eb4caa0 Improved error signalling 2019-06-12 00:23:39 +01:00
Tony Garnock-Jones c0ff69f67e Switch to federated-link-ready 2019-06-11 18:47:56 +01:00
Tony Garnock-Jones be0dc5413b Command-line control of nickname in server-chat-client 2019-06-11 18:34:25 +01:00
Tony Garnock-Jones 052be5c58e Line-based buffering of stdout in server-chat-client 2019-06-11 18:34:14 +01:00
Tony Garnock-Jones 72b4326651 Turn-based federation and client/server protocol 2019-06-11 18:33:37 +01:00
Tony Garnock-Jones be8fefaf4d Bag no longer used in federation 2019-05-23 11:13:47 +01:00
Tony Garnock-Jones 921265d2f3 Repair ws-recv usage; requires rfc6455 package v2.0 or newer 2019-05-22 23:45:15 +01:00
Tony Garnock-Jones 58231b253f Clean up empty entries in subscription-matches 2019-05-20 22:07:02 +01:00
Tony Garnock-Jones e03c8267dd Update federation to match latest paper-journal work: proper propagation of Add/Del 2019-05-20 21:49:19 +01:00
Tony Garnock-Jones 8aaf1d1902 Improve distributed debug output 2019-05-20 21:45:40 +01:00
Tony Garnock-Jones 43a0578f19 Buffer uplink communications to give a chance for stateful entities at each end to initialise themselves before sending messages.
An alternative approach would be to reintroduce flow-control, which was
removed as part of commit 94e27e1.
2019-05-16 23:14:39 +01:00
Tony Garnock-Jones 8daff63e8e Fix (observe (server-envelope A B)) => (server-proposal A (observe B)) 2019-05-16 23:13:56 +01:00
Tony Garnock-Jones 94e27e1cbc Change federation protocol to be transport-neutral, carried via Syndicate itself 2019-05-16 22:28:42 +01:00
Tony Garnock-Jones 84361dcbaf Move away from use of "broker" 2019-05-16 20:14:19 +01:00
Tony Garnock-Jones 6952aec992 Remove federation-prototype 2019-05-16 15:48:51 +01:00
Tony Garnock-Jones cd2d7e428b Close input/output ports in web.rkt once connection is logically over 2019-05-16 14:58:33 +01:00
Tony Garnock-Jones 025f101d09 Disconnect websocket service on error 2019-05-16 13:12:21 +01:00
Tony Garnock-Jones c9b62c9a6d Drain ws-ch in an additional, previously-overlooked case 2019-05-16 12:39:16 +01:00
Tony Garnock-Jones 22a517f1b5 Handle "Ping" requests from peers in federated mode 2019-05-16 12:38:26 +01:00
Tony Garnock-Jones 7ec9752f41 Accept and discard "Pong" replies from clients 2019-05-16 12:38:06 +01:00
Tony Garnock-Jones af40134c53 Correct server websocket http-request pattern 2019-05-16 12:37:39 +01:00
Tony Garnock-Jones ae97fb1d1e Flow-controlled TCP (except in netstack); flow-controlled server/federation messages; fixes federation startup glitching 2019-05-12 13:07:38 +01:00
Tony Garnock-Jones 12650e2058 Repair test compilation 2019-05-09 11:43:41 +01:00
Tony Garnock-Jones e9b1983408 Move command-line scripts into submodule main, so tests don't get stuck 2019-05-09 11:43:34 +01:00
Tony Garnock-Jones 7f7a6d03d8 Command-line programs for starting various kinds of server 2019-05-09 11:39:49 +01:00
Tony Garnock-Jones 386a66747e Tweak logging levels 2019-05-09 11:39:49 +01:00
Tony Garnock-Jones 2b882cc10a Integrate federation/peering with client/server code; almost but not quite working yet 2019-05-09 11:39:49 +01:00
Tony Garnock-Jones 0dca5bfbe3 Allow specification of host/port/scope in server-chat-client.rkt 2019-05-09 11:16:29 +01:00
Tony Garnock-Jones 88ec80487d Remove unused definition 2019-05-07 14:06:06 +01:00
Tony Garnock-Jones 39906803b2 Move prototype federation code out of the way 2019-05-07 13:45:52 +01:00
Tony Garnock-Jones cf92ae14c5 Select client/server scope on connect; stub out federation/peering; protocol error and disconnection support 2019-05-07 12:56:40 +01:00
Tony Garnock-Jones 0ac2bb768e New "test" illustrating aspects of the turn-based approach taken 2019-05-07 12:07:30 +01:00