Commit Graph

1451 Commits

Author SHA1 Message Date
Tony Garnock-Jones 3c7838d5ab server-session-connected avoids assert-lock of server-connected 2019-09-11 16:07:54 +01:00
Tony Garnock-Jones 0167cddc58 Update to new preserves API 2019-09-11 15:10:44 +01:00
Tony Garnock-Jones 345e940833 Default TCP port 21369 2019-06-23 14:01:30 +01:00
Tony Garnock-Jones f4beff6fb9 Cope with echo-server minimart-benchmark test: flat new-connection cost 2019-06-21 16:43:59 +01:00
Tony Garnock-Jones 257cc5a807 Remove out-of-date example expansions 2019-06-21 16:43:24 +01:00
Tony Garnock-Jones 047dcbd98b On start, only relay subs with active holders 2019-06-20 22:54:59 +01:00
Tony Garnock-Jones d865087b7d Must be able to disable heartbeats for testing 2019-06-20 12:19:45 +01:00
Tony Garnock-Jones 9004725341 Proper heartbeats 2019-06-20 11:55:29 +01:00
Tony Garnock-Jones fb184e95ff Update HOWITWORKS.md 2019-06-18 18:01:40 +01:00
Tony Garnock-Jones 5c514b7ff6 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 b10f0b668f Cosmetic: indicate protocol grouping 2019-06-13 12:51:20 +01:00
Tony Garnock-Jones e463f56cf5 Terminate federation link facet on receipt of Err 2019-06-13 12:51:11 +01:00
Tony Garnock-Jones b6a3200dfa Repair error: an End was missing 2019-06-13 12:50:55 +01:00
Tony Garnock-Jones d1269bbc33 Improved error signalling 2019-06-12 00:23:39 +01:00
Tony Garnock-Jones c04fea1ab9 Switch to federated-link-ready 2019-06-11 18:47:56 +01:00
Tony Garnock-Jones a648ab7c8a Command-line control of nickname in server-chat-client 2019-06-11 18:34:25 +01:00
Tony Garnock-Jones 65c99e24b4 Line-based buffering of stdout in server-chat-client 2019-06-11 18:34:14 +01:00
Tony Garnock-Jones 3d93dc5570 Turn-based federation and client/server protocol 2019-06-11 18:33:37 +01:00
Tony Garnock-Jones 7acf72469b Bag no longer used in federation 2019-05-23 11:13:47 +01:00
Tony Garnock-Jones 71447a0428 Repair ws-recv usage; requires rfc6455 package v2.0 or newer 2019-05-22 23:45:15 +01:00
Tony Garnock-Jones 5f766d5b12 Clean up empty entries in subscription-matches 2019-05-20 22:07:02 +01:00
Tony Garnock-Jones b5bae7f8f6 Update federation to match latest paper-journal work: proper propagation of Add/Del 2019-05-20 21:49:19 +01:00
Tony Garnock-Jones 104b87cd56 Improve distributed debug output 2019-05-20 21:45:40 +01:00
Tony Garnock-Jones cd32fe631d 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 06362c6.
2019-05-16 23:14:39 +01:00
Tony Garnock-Jones 4c852e0eb8 Fix (observe (server-envelope A B)) => (server-proposal A (observe B)) 2019-05-16 23:13:56 +01:00
Tony Garnock-Jones 06362c6674 Change federation protocol to be transport-neutral, carried via Syndicate itself 2019-05-16 22:28:42 +01:00
Tony Garnock-Jones bcc7848e76 Move away from use of "broker" 2019-05-16 20:14:19 +01:00
Tony Garnock-Jones 4d828a5ad2 Remove federation-prototype 2019-05-16 15:48:51 +01:00
Tony Garnock-Jones 81034e017e Close input/output ports in web.rkt once connection is logically over 2019-05-16 14:58:33 +01:00
Tony Garnock-Jones 8899807216 Disconnect websocket service on error 2019-05-16 13:12:21 +01:00
Tony Garnock-Jones eafd5771b5 Drain ws-ch in an additional, previously-overlooked case 2019-05-16 12:39:16 +01:00
Tony Garnock-Jones 12c255bb40 Handle "Ping" requests from peers in federated mode 2019-05-16 12:38:26 +01:00
Tony Garnock-Jones 7dd217be6a Accept and discard "Pong" replies from clients 2019-05-16 12:38:06 +01:00
Tony Garnock-Jones 6c44843f63 Correct server websocket http-request pattern 2019-05-16 12:37:39 +01:00
Tony Garnock-Jones 9839e5946c 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 8478a27e1f Repair test compilation 2019-05-09 11:43:41 +01:00
Tony Garnock-Jones 9d58c01795 Move command-line scripts into submodule main, so tests don't get stuck 2019-05-09 11:43:34 +01:00
Tony Garnock-Jones 573bf36057 Command-line programs for starting various kinds of server 2019-05-09 11:39:49 +01:00
Tony Garnock-Jones 73feb539dd Tweak logging levels 2019-05-09 11:39:49 +01:00
Tony Garnock-Jones 83af353d9d Integrate federation/peering with client/server code; almost but not quite working yet 2019-05-09 11:39:49 +01:00
Tony Garnock-Jones 82e327e21f Allow specification of host/port/scope in server-chat-client.rkt 2019-05-09 11:16:29 +01:00
Tony Garnock-Jones d20addd642 Remove unused definition 2019-05-07 14:06:06 +01:00
Tony Garnock-Jones c987ac0592 Move prototype federation code out of the way 2019-05-07 13:45:52 +01:00
Tony Garnock-Jones 611be53725 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 0f926e7940 New "test" illustrating aspects of the turn-based approach taken 2019-05-07 12:07:30 +01:00
Tony Garnock-Jones 28fd0809e0 The Great Renaming broker -> server, part 2 2019-05-05 16:51:23 +01:00
Tony Garnock-Jones 9f03dbb6d3 The Great Renaming broker -> server, part 1 2019-05-05 16:37:03 +01:00
Tony Garnock-Jones 5d657d6a95 Remove unnecessary require 2019-05-05 15:58:01 +01:00
Tony Garnock-Jones 244436da45 Use definitions from wire-protocol.rkt in federation 2019-05-05 15:57:51 +01:00
Tony Garnock-Jones 322aa5b478 Move federation protocol a step closer to client/server protocol 2019-05-05 15:54:28 +01:00