Commit Graph

177 Commits

Author SHA1 Message Date
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 9b0437e922 Export asyncCheck from syndicate module 2022-08-31 15:10:50 -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 6701fdb1c7 Assert that pattern capture count matches handlers 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 7f0277fe85 DSL: bind "turn" symbol in during retract handler 2022-06-16 12:13:28 -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 7ca28768d4 DSL support for handler bodies without parameters 2022-06-12 14:09:34 -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 fd47039ca3 DSL documentation and example 2022-04-23 20:05:00 -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 fac3002fc8 Export "stop" from syndicate module 2022-03-18 10:09:52 -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 13fd96420c Export more from syndicate module 2022-03-16 13:00:58 -05:00
Emery Hemingway 67fa320db6 relays: connectStdio 2022-03-16 13:00:58 -05:00
Emery Hemingway 56431ee37b Export more from syndicate module
Applications should only need to import this module
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 d18508371f Remove onRetract macro 2022-03-16 12:59:45 -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 123fb79bbe Mark template within a macros as always used 2021-11-03 19:22:09 +01:00
Emery Hemingway babc58526c Update submodules 2021-11-03 19:21:52 +01:00
Emery Hemingway 515ef22805 Add onRetract sugar to scope of onPublish 2021-11-02 13:11:44 +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
Emery Hemingway 55fcbb0754 cleanup 2021-10-29 18:27:22 +02:00
Emery Hemingway 166152cd84 Re-implement onPublish and onMessage 2021-10-29 18:27:22 +02:00
Emery Hemingway 272b6dfcb7 Idiomatic pattern constructor 2021-10-29 18:27:22 +02:00
Emery Hemingway 29b43eaced Pattern constructors 2021-10-29 18:27:22 +02:00
Emery Hemingway 3b9bbdf0fe Reduce methods to proc pointers 2021-10-29 18:27:22 +02:00
Emery Hemingway 8cf7beeb0d Fix nil dereference in message 2021-10-28 17:41:28 +02:00
Emery Hemingway 3f552edde7 Rename sturdy module to capabilities 2021-10-27 18:54:20 +02:00
Emery Hemingway 77a9ea380f Syndicate with caps 2021-10-26 13:09:54 +02:00
Emery Hemingway 8447822243 Move protocols to a submodule
The code generated from the protocols is commited here so the
submodule doesn't need to be checked out to build.
2021-10-06 11:58:43 +02:00
Emery Hemingway 6cd5887b4c DSL: rename "asserting" to "publish"
This should be more legible if there is less confusion with the
Nim "assert" builtin.
2021-09-22 14:39:30 +02:00
Emery Hemingway b0c92ea5de Make DSL blocks callable procedures 2021-09-21 16:39:57 +02:00
Emery Hemingway 62464a0cc1 Update Preserves submodule 2021-09-21 16:39:43 +02:00
Emery Hemingway ed555776fb isNil(Preserve) is now isFalse 2021-09-21 16:38:15 +02:00
Emery Hemingway 6b15fe98a1 HMAC: Accept strings or bytes for messages without a cast 2021-09-20 18:27:05 +02:00
Emery Hemingway 59e2367131 WiP! SturdyRef 2021-09-07 12:01:42 +02:00
Emery Hemingway 9a0b8caeb5 fixup hmacs 2021-09-07 12:01:28 +02:00
Emery Hemingway cd309ceb7d Add private HMAC-SHA256 implementation 2021-09-06 21:55:00 +02:00
Emery Hemingway a23935b3c5 Add Tupfile for generating protocol code 2021-09-06 18:25:35 +02:00
Emery Hemingway 7f7756ef59 Add 'src/syndicate/protocols/' from commit '0ff8c2c872538c35a199846e84eb5f33fbebc5a3'
git-subtree-dir: src/syndicate/protocols
git-subtree-mainline: 7a7a6f7e4e
git-subtree-split: 0ff8c2c872
2021-09-06 14:22:42 +02:00