Commit Graph

460 Commits (3ef0a98a1709f9fc367f3ee9c998a4cc0d2f20bb)
 

Author SHA1 Message Date
noah metz 3ef0a98a17 Fixed broken deserialization of NodeID and uuid.UUID 2023-10-01 20:59:45 -06:00
noah metz bb28d9bc32 Fixed handling of lockable self-success messages 2023-10-01 20:54:53 -06:00
noah metz 96408259d1 Lots of stuff, but mostly sped up NodeID and UUID serialization, can probably generalize to speed up all fixed size arrays 2023-10-01 20:45:44 -06:00
noah metz 5a86334d5a Moved ReqID out of SignalHeader and into ResponseHeader, added ResponseSignal interface for signals that are responses to others 2023-10-01 16:45:03 -06:00
noah metz e93fe50b5f Update for tm 2023-09-27 19:47:48 -06:00
noah metz e013edc656 Fixed bugs found developing tm 2023-09-27 18:28:56 -06:00
noah metz d4e0d855c7 Added serialization for Tree and SerializedType. Changed policies to an array instead of a map 2023-09-20 19:14:28 -06:00
noah metz 0fc6215448 Allow resolution of non-acl fields 2023-09-20 11:28:44 -06:00
noah metz b09e150c46 Added PostDeserialize to GQLExt to initialize temporary maps/slices 2023-09-20 11:05:47 -06:00
noah metz d86d424cd7 Changed Header to return a non-pointer, and removed extension type from GetCtx generic 2023-09-18 21:43:39 -06:00
noah metz ff7046badf Removed unecessary capnp dependency 2023-09-18 20:11:50 -06:00
noah metz ab5b922a7d Forward status signals to resolvers 2023-09-18 19:55:55 -06:00
noah metz d34304f6ad Added logic to not re-resolve nodes if they're cached, and cache nodes as they're resolved 2023-09-18 12:02:30 -06:00
noah metz 9ffa9d6cb2 Reorganized GQL files, and moved from modifying the GQL library to using a NodeCache in ResolveContext 2023-09-18 11:15:58 -06:00
noah metz 21224e8837 Updated with graphql changed, need to make Self delete source of status on message received 2023-09-17 16:00:24 -06:00
noah metz 6bfe339854 Modified graphql library to store the result of the last resolution in a subscription and pass it to the next resolution 2023-09-14 15:50:08 -06:00
noah metz ecaf35f05d Simplified gql resolution a bit, need to work on subscriptions 2023-09-13 16:27:55 -06:00
noah metz eb30b477d5 Passing tests 2023-09-13 10:56:49 -06:00
noah metz 5c70d1b18d Moved type registration to signal/extension/policy registration 2023-09-12 20:30:18 -06:00
noah metz de1a229db6 Made it illegal to serialize/deserialize unregistered structs, and added StartSignal and StopSignal 2023-09-12 19:48:16 -06:00
noah metz de54c87e43 Added serialization of StatusSignal 2023-09-12 19:40:06 -06:00
noah metz dac0f1f273 Removed extra methods from ListenerExt 2023-09-12 19:01:35 -06:00
noah metz 07ce005365 Got serialization to the point that TestGQLDB is passing 2023-09-12 19:00:48 -06:00
noah metz c4e5054e07 Fixed array serialization and added NodeID serialization 2023-09-12 16:56:01 -06:00
noah metz b47c95c5ad Copied slice serialize/deserialize to array. Need to find out why the typestack is becoming corrupt now 2023-09-11 21:54:00 -06:00
noah metz 045304f9f6 Moved int, struct, and interface serialization to functions to make registering types easy 2023-09-11 21:47:53 -06:00
noah metz d0f0fb1b82 Fixed first round of issues with node serialization, now need to actually deserialize structs 2023-09-06 18:29:35 -06:00
noah metz fa5facc5fc Added deserialize for map 2023-09-05 10:48:04 -06:00
noah metz b766aadef9 Added deserialization for map type, nil map, and empty map 2023-09-05 01:02:41 -06:00
noah metz 47107dec1c Moved type definitions to variables 2023-09-05 00:53:58 -06:00
noah metz 15793e1415 Fixed pointer, list, and map serialization after testing nil map types 2023-09-05 00:46:49 -06:00
noah metz e2f34150ef Moved serialization to serialize.go and removed n parameter from DeserializeValue 2023-09-05 00:08:09 -06:00
noah metz 06513a5ad6 Added serialization tests, added deserializers for most Kinds, reworked struct serialization 2023-09-03 17:50:12 -06:00
noah metz 799b6404dd Added deserialize to pointer 2023-09-02 18:49:37 -06:00
noah metz 1888cf428d Think i finished serialization(other than missing types/kinds), now onto deserialization 2023-09-02 17:30:52 -06:00
noah metz 857f04efe3 Ch-ch-ch-ch-changes 2023-08-31 22:31:29 -06:00
noah metz 4daec4d601 Cleanup and move away from capnp to custom TLV serialization 2023-08-31 19:50:32 -06:00
noah metz 7bed89701d Made NewErrorSignal use fmt.Sprintf and tage variable args 2023-08-28 15:09:01 -06:00
noah metz ba344bddcf Fixed policy serializing and added default policy to allow receiving errors, read results, and status updates 2023-08-28 14:52:28 -06:00
noah metz 4ce2a642c5 Changed TestLink to test add and remove 2023-08-15 19:28:15 -06:00
noah metz f398c9659e Removed LinkStartSignal 2023-08-15 19:18:21 -06:00
noah metz 98f05d57f9 Added signals to add and remove requirements from a lockable node 2023-08-15 19:17:13 -06:00
noah metz 98c0b7e807 Fixed lockable to properly fail 2023-08-15 18:23:06 -06:00
noah metz b446c9078a Added WaitForResult and removed context arg from WaitForSignal 2023-08-12 11:26:19 -06:00
noah metz d663314def Test updates 2023-08-11 16:00:36 -06:00
noah metz e26ddcae37 Moved listener to listener.go and user.go to group.go. Fixed some GQL resolving 2023-08-11 13:01:32 -06:00
noah metz 20c7a38044 Policy fun 2023-08-10 23:43:10 -06:00
noah metz f31beade29 Added signature to all signals(signature of serialized signal + source + dest so technically vulnerable to replay) to use for ACL 2023-08-08 14:00:17 -06:00
noah metz 96e842decf Fixed some of the issues with GQL tests, still need to fix ACL 2023-08-07 20:44:56 -06:00
noah metz 8770d6f433 Moved policies to node instead of an extension, need to fix gql tests 2023-08-07 20:26:02 -06:00