Commit Graph

190 Commits

Author SHA1 Message Date
Emery Hemingway ca12c1ae03 Rewrite timers 2023-07-20 19:17:57 +01:00
Emery Hemingway 9614955320 Tracing 2023-07-20 19:17:57 +01:00
Emery Hemingway 7fec2d61ac Actors lineages share a handle allocator
For multiple actors to communicate through the same relay they
must use unique assertion handles.
2023-07-20 19:17:57 +01:00
Emery Hemingway 76d550602f Document relays a bit 2023-07-20 19:17:57 +01:00
Emery Hemingway 91a218f7fb Actors lineages share a handle allocator
For multiple actors to communicate through the same relay they
must use unique assertion handles.
2023-07-12 15:16:20 +01:00
Emery Hemingway b1b0477b8a Add addCallback variant that passes on the value of a Future 2023-07-12 15:15:39 +01:00
Emery Hemingway 219286a84a Recommend runDataspace, not bootDataspace 2023-06-30 09:51:49 +01:00
Emery Hemingway 8bb9fb16d7 patterns: inject variant for dictionaries 2023-06-11 21:22:10 +01:00
Emery Hemingway fc94fa39d8 terminate: fix off-by-inifinity bug 2023-06-11 21:21:07 +01:00
Emery Hemingway 2f4552e7fe patterns: raise uncatchable error for set patterns 2023-06-10 21:27:54 +01:00
Emery Hemingway 0089e1f413 connectStdio: do not constrain receive buffer size 2023-06-10 21:26:20 +01:00
Emery Hemingway 7a36a6e8a4 patterns: unpackLiterals more 2023-06-10 01:00:12 +01:00
Emery Hemingway 209ae51580 patterns: inject into <bind …> 2023-06-08 14:15:03 +01:00
Emery Hemingway 1dd197f102 Add unpackLiterals proc to patterns module 2023-05-30 13:15:47 +01:00
Emery Hemingway 81ec3808a6 Adjust to new syndicate-protocols 2023-05-18 12:22:55 +01:00
Emery Hemingway ad076bdfed actors: tweak addCallback(…) and add onStop(…) 2023-05-17 10:42:54 +01:00
Emery Hemingway f1cc7b336b Build different protocol modules 2023-05-11 22:31:57 +01:00
Emery Hemingway f0328b27cd Switch HMAC to BLAKE2s-256 2023-05-07 09:40:17 +01:00
Emery Hemingway 94fa1efd62 Regenerate protocol modules 2023-05-06 20:22:21 +01:00
Emery Hemingway 0923b8abee Export a different runActor proc 2023-05-06 20:09:45 +01:00
Emery Hemingway 74254dd45b relays: reopen stdin asynchronously
This was preventing futures from being completed until the next
packet was received on stdin. This should fix a lot of problems
and bad behavior.
2023-05-06 16:04:20 +01:00
Emery Hemingway 572e3b76ab Regenerate protocol modules 2023-05-03 20:51:07 +01:00
Emery Hemingway 003bfa0a97 Less use of callSoon 2023-05-03 20:51:07 +01:00
Emery Hemingway 90247e19ce Update build metadata 2023-04-12 15:09:11 -05:00
Emery Hemingway cf05845f15 Remove buffer limit on binary protocol decoder
Buffer exhaustion is a problem for the server not the client.
2023-04-10 16:57:34 -05:00
Emery Hemingway 6364db7f69 Export a default capability generator 2023-04-10 16:56:51 -05:00
Emery Hemingway b1ad08e693 Fix patterns examples 2023-04-10 16:56:22 -05:00
Emery Hemingway 53278d8614 Update to latest Preserves API 2023-03-29 17:59:47 -05:00
Emery Hemingway ac81221faa Add grabDict() pattern generator 2023-03-29 17:59:44 -05:00
Emery Hemingway b1627a491a Patterns: refactor 2023-03-26 19:28:31 -05:00
Emery Hemingway 71955f257d Rename proc facet(…) to proc inFacet(…) 2023-03-26 19:28:08 -05:00
Emery Hemingway 6f2adf573a Check the protocol modules 2023-03-23 14:06:05 -05:00
Emery Hemingway 114088bfe6 Tup: check syndicate module 2023-03-23 12:52:38 -05:00
Emery Hemingway 32d8719c84 Adjust for outer build system 2023-03-01 21:02:03 -06:00
Emery Hemingway 00269c04b1 Use "do ():" for compatibility with Nim 2.0.0 2022-12-21 23:01:06 -06:00
Emery Hemingway a5c2d30ec4 Taps now takes multiple endpoints for connect 2022-12-21 23:00:04 -06:00
Emery Hemingway 589b0772e3 Make the Entity methods compatible with mm:orc 2022-12-21 22:59:16 -06:00
Emery Hemingway 47da042671 Add connectNet
Use Taps to connect to Syndicate peers over TCP. Taps is now a
depedency.
2022-12-13 23:03:38 -06:00
Emery Hemingway 0fab80bcf7 Move swaybar_status_actor out to syndicate_utils repo 2022-12-13 23:03:26 -06:00
Emery Hemingway 1234f97f20 Tup: unify protocols group 2022-12-13 23:03:25 -06:00
Emery Hemingway a43a723bb1 Patterns: some bad casting 2022-12-13 22:58:41 -06:00
Emery Hemingway 49b58f5ce1 Patterns: add pattern generator program 2022-12-13 22:58:41 -06:00
Emery Hemingway e24b06d317 Put a sturdyref generator in capabilities module 2022-12-13 22:58:40 -06:00
Emery Hemingway c4dace1eb7 Regenerate protocol modules 2022-12-13 22:58:18 -06:00
Emery Hemingway 17c7328be8 Export terminate for facets 2022-12-08 00:31:01 -06:00
Emery Hemingway e26c718142 Fix import path of swaybar_status_actor 2022-11-02 14:05:45 -05:00
Emery Hemingway 2aeb20e959 Update Preserves dependency 2022-10-31 10:00:33 -05:00
Emery Hemingway 26d88d7208 Cleanup skeletons 2022-10-31 09:57:57 -05:00
Emery Hemingway 0039792e0b replace: don't bother retracting null handles 2022-10-31 09:54:50 -05:00
Emery Hemingway d9a3570d6f Relays: use BufferedDecoder 2022-10-26 20:12:52 -05:00
Emery Hemingway ec60d9c64a Better error message for pattern handler mismatches 2022-10-26 20:12:52 -05:00
Emery Hemingway d69af0a90d Use binary Preserves over Unix sockets 2022-10-26 20:12:52 -05:00
Emery Hemingway 68a742797c Use binary Preserves over stdio 2022-10-26 20:12:52 -05:00
Emery Hemingway fa5a4a9cbc Add swaybar_status_actor as binary 2022-10-26 20:12:52 -05:00
Emery Hemingway 4e424e7ca8 skeletons: fix walking over compound patterns 2022-10-26 20:11:27 -05:00
Emery Hemingway 3fa7d4225e Tidy dataspaces module 2022-10-26 19:26:43 -05:00
Emery Hemingway 535fb93df3 Add initial swaybar_status_actor utility 2022-10-13 23:22:55 -05:00
Emery Hemingway 96d3bbb500 New "addCallback" proc for processing Futures in Turns 2022-09-04 13:13:02 -05:00
Emery Hemingway 0742665288 Buffer socket reads so long messages come through 2022-08-30 11:46:14 -05:00
Emery Hemingway b0f5ff98e2 Different ?? pattern operator
Make the ?? operator convert a pattern to a pattern of itself and
inject other patterns into it.
2022-08-29 14:49:28 -05:00
Emery Hemingway 831b7194a9 skeletons: only create leaves for additions 2022-08-29 14:49:27 -05:00
Emery Hemingway ef1290d105 Add run(Ref, TurnAction) convenience proc
Developers shouldn't need to work with Facets directly.
2022-07-08 08:16:33 -05:00
Emery Hemingway 6647aeb83b Use BiggestInt in schemas 2022-07-08 07:49:24 -05:00
Emery Hemingway 6281f5467f membranes: remove broken assertion
Membranes are not ref objects making a copy of one and then
checking it for equality against the original won't work.
2022-06-27 10:40:51 -05:00
Emery Hemingway 57e4bb6bad Generate literal patterns by preserving values 2022-06-15 22:27:25 -05:00
Emery Hemingway 07cd833e3d Move literal pattern builder to syndicate module 2022-06-12 23:07:38 -05:00
Emery Hemingway be22238ca3 addDataspace 2022-06-12 14:07:29 -05:00
Emery Hemingway 68432a204c patterns: add recordPattern(…) 2022-06-12 14:04:07 -05:00
Emery Hemingway b4fd18ffcd Generate literal patterns for values 2022-06-08 20:20:45 -05:00
Emery Hemingway 5d78270bb5 Update readme and chat example 2022-06-08 20:20:45 -05:00
Emery Hemingway 9048506981 Replace mutable handles in-place 2022-06-08 20:20:44 -05:00
Emery Hemingway 9648884997 Move `?` operator to DSL module 2022-04-23 20:06:46 -05:00
Emery Hemingway 143febc215 Tidy up connectUnix bootProc 2022-04-23 20:04:02 -05:00
Emery Hemingway a437183863 Add proper "during" macro 2022-04-23 20:04:00 -05:00
Emery Hemingway 4454d19b60 Fix incoming Ref rewriting
ehmry/xdg_open_ng#3
2022-03-18 19:10:50 -05:00
Emery Hemingway 4027da4c5f Cleanup dead code and missing imports 2022-03-18 19:09:43 -05:00
Emery Hemingway 76c9a6377d Make `projectPaths` fail without side-effects
Fix ehmry/xdg_open_ng#2
2022-03-18 10:15:14 -05:00
Emery Hemingway 1171b238ec Do not quit when stdin hangs up 2022-03-16 15:51:47 -05:00
Emery Hemingway 405f3dd5c2 Patterns: flatten objects without pragmas 2022-03-16 13:00:58 -05:00
Emery Hemingway 829c0bf61a Fix Ref rewriting 2022-03-16 13:00:58 -05:00
Emery Hemingway 3d04ecd2c8 Convert Preserve to simple capture pattern 2022-03-16 13:00:58 -05:00
Emery Hemingway 67fa320db6 relays: connectStdio 2022-03-16 13:00:58 -05:00
Emery Hemingway ed1fd2d6ef Make spawnActor more idiomatic 2022-03-16 13:00:58 -05:00
Emery Hemingway cec49c33c4 relay: pass packets not buffers 2022-03-16 13:00:58 -05:00
Emery Hemingway aca382e178 Cleanup actors module
Use methods at Entity rather than proc pointers, but use proc
pointers within the DSL in the syndicate module.
2022-03-16 13:00:58 -05:00
Emery Hemingway 231928f243 Rewrite skeletons for new patterns 2022-03-16 13:00:58 -05:00
Emery Hemingway d4442438fa Add Tupfile for generating protocol modules 2022-03-16 13:00:58 -05:00
Emery Hemingway a101a0ecb3 Generate dataspace patterns from Nim types 2022-03-16 13:00:58 -05:00
Emery Hemingway 1912574ed8 Proper dataspaces 2022-03-16 13:00:50 -05:00
Emery Hemingway d8f6d82956 Update protocols and pattern constructors 2022-03-16 12:59:46 -05:00
Emery Hemingway 0bf6b684fe Refactor match and instantiate 2022-03-16 12:59:46 -05:00
Emery Hemingway d1e196f6f0 Move membranes to seperate module 2022-03-16 12:59:46 -05:00
Emery Hemingway 83113aea6f Increase size of TCP read buffer 2021-12-28 18:29:48 +01:00
Emery Hemingway f710419ead Generate patterns from ref types 2021-12-11 18:36:31 +00:00
Emery Hemingway a8030cce4d Add proc for minting test capabilities 2021-12-04 11:49:29 +00:00
Emery Hemingway 01469f1b42 Disable protocol tracing by default 2021-11-03 19:22:42 +01:00
Emery Hemingway d6e7add10a Fix pattern constructor 2021-11-03 19:22:33 +01:00
Emery Hemingway babc58526c Update submodules 2021-11-03 19:21:52 +01:00
Emery Hemingway dc420c1a22 Cleanly break unix socket recv loop 2021-11-02 13:11:44 +01:00
Emery Hemingway 21bdaeb26b Add observe pattern constructor, cleanup imports 2021-11-02 13:11:44 +01:00