Commit Graph

57 Commits (c63ad9125200b17c03a35fa04886cd74fbfcec42)

Author SHA1 Message Date
noah metz 302f0f42fe Added 'changed' field to 'Process' 2023-10-07 23:00:07 -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 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 e2f34150ef Moved serialization to serialize.go and removed n parameter from DeserializeValue 2023-09-05 00:08:09 -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 4ce2a642c5 Changed TestLink to test add and remove 2023-08-15 19:28:15 -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
noah metz 147f44e5ff hehe 2023-08-01 20:55:15 -06:00
noah metz fde2f3ddd4 Renamed signals and added ErrorSignal 2023-07-30 23:42:47 -06:00
noah metz 96c2b84b6f * 2023-07-30 10:09:04 -06:00
noah metz dca4de183e Think I got the interface registering figured out, need to test it out with self-referrential fields(list and single) from LockableExt 2023-07-29 19:16:33 -06:00
noah metz f87571edcf Moved test 'WaitForX' functions to a generic function in signal.go that can be used to wait for arbitrary signals 2023-07-28 19:32:27 -06:00
noah metz 5fb1cb6d17 Changed node ids to be derived from signing keys 2023-07-28 15:07:38 -06:00
noah metz b92cebbe74 Added message buffer size to node header and NewNode 2023-07-28 13:45:14 -06:00
noah metz 5678c79798 Made 10k test run faster, need to look at node memory usage 2023-07-28 13:12:17 -06:00
noah metz 5f409def03 Removed extra logging from tests 2023-07-28 12:46:27 -06:00
noah metz 61de2669e2 Added test to create 10K lockables and link them to a single lockable 2023-07-28 12:46:06 -06:00
noah metz 08288f88af Added basic test for read result with ACL 2023-07-28 11:59:01 -06:00
noah metz fc69bc3d0d Added read signal, and modified policies to use non-pointer receivers 2023-07-28 11:21:18 -06:00
noah metz b3de3144cc Reworked actions to be lists of parts, and added wildcards for both multi-level and single-level 2023-07-28 10:04:31 -06:00
noah metz 27687add1b Changed acl from using SignalType to Action, and added Permission() method to Signal interface that returns the Action the signal is trying to take 2023-07-28 00:39:27 -06:00
noah metz a16cf6bb38 Added merging to policies, need to make another interface for the shared all/per node policies to make a shared loading function 2023-07-28 00:32:43 -06:00
noah metz c763725a34 Fixed lockable link sequences 2023-07-27 23:05:19 -06:00
noah metz 027bb74887 Added unlock, need to update link to match pattern and see if it can be generalized 2023-07-27 22:25:00 -06:00
noah metz a1ce4238cc Implemented locking over signals, TODO: implement unlock 2023-07-27 19:53:43 -06:00
noah metz a44b00bc97 Made it easier to make a lockable extension 2023-07-27 18:37:06 -06:00
noah metz 200e19eea7 Added signalling to lockable test 2023-07-27 18:16:37 -06:00
noah metz 98893de442 Added naive locking sequence with short test 2023-07-27 18:08:43 -06:00
noah metz 78c29d2f74 Changed context to dynamically load nodes as they're signalled 2023-07-27 16:48:39 -06:00
noah metz 7ebb519cd0 Started lockable_test.go 2023-07-27 16:21:27 -06:00
noah metz e347a3f232 start maniacal rewrite, main goal is to combine node and lockable to remove any sync mutex deadlocks. Another goal is to make read contexts get copies of the state to ensure they don't modify and no lock is required to ensure no value changes, and write contexts use the lockable locks instead of mutex 2023-07-22 20:21:17 -06:00
noah metz 374fd6e487 Changed NodeID from string to UUID, filled in more auth 2023-07-19 20:03:13 -06:00
noah metz 84af718071 Started to add authentication for GQL endpoint 2023-07-19 14:45:05 -06:00
noah metz 5c416a4a3f We do a little refactoring, hehe 2023-07-09 14:30:30 -06:00
noah metz 0e2b6ccb2a enhance tests for race conditions 2023-07-05 23:54:11 -06:00
noah metz c42ca80d47 Modified SendUpdate to require it to be called from inside a UseStates context. 2023-07-04 18:45:23 -06:00
noah metz 4b64fb1ef2 Removed state argument from LockLockable and UnlockLockable 2023-07-03 17:13:00 -06:00
noah metz 64171c6c85 Added UnlinkLockables and UnlinkThreads 2023-07-03 16:03:56 -06:00
noah metz c9d9b9ac03 Update a bunch of stuff 2023-07-02 12:14:04 -06:00
noah metz d2b32bac5e Moved GQL context information out of node runtime state and into context 2023-07-01 13:03:28 -06:00
noah metz 04771b7816 Added BaseLockable and BaseThread nested saving/loading 2023-06-30 13:25:35 -06:00