57 Commits

Author SHA1 Message Date
Devin Ragotzy
ee6aa35612 StateEvent's event_id method must return owned EventId 2020-12-11 18:04:41 -08:00
Timo Kösters
369703a6fa Expect all state events to have a state key 2020-12-11 18:04:41 -08:00
Timo Kösters
776c476f3c Skip events that fail auth 2020-12-11 18:04:41 -08:00
Timo Kösters
33232f0a63 Disable buggy auth_events check 2020-12-11 18:04:41 -08:00
Timo Kösters
ad4fb6420a Various improvements 2020-12-11 18:04:41 -08:00
Timo Kösters
f587b88a60 Fixes 2020-12-11 18:04:41 -08:00
Devin Ragotzy
acd829336e If no power_level event default to 0 power_level for user 2020-09-08 16:59:29 -04:00
Devin Ragotzy
8ca1726e98 Remove RedactAllowed enum in favor of bool 2020-09-01 15:14:09 -04:00
Devin Ragotzy
3cc4ae2bf7 Remove the last few synapse-ism using only spec event auth 2020-08-31 14:53:20 -04:00
Devin Ragotzy
1eb89941b7 Rename power_event -> control_event and add more docs 2020-08-31 07:21:30 -04:00
Devin Ragotzy
8dbd9aae0b Add error type, more docs, and conduit sorting test
Not resolve sorting just topo/mainline
2020-08-29 16:33:40 -04:00
q-b
e3de44ef2f Fix StateStore get_event() signature in README
5f77bc11a2
2020-08-29 15:18:03 -04:00
Devin Ragotzy
394d26744a Use own Error type for all errors 2020-08-27 20:03:19 -04:00
Devin Ragotzy
b846aec94a Replace membership auth with timo's logic 2020-08-27 15:46:36 -04:00
Devin Ragotzy
aadccdee64 Fix DM room creator rejoining
Check only the previous event is a RoomCreate event not that one exists
2020-08-27 09:08:52 -04:00
Devin Ragotzy
17958665f6 Update docs in event_auth and add first few event_auth tests 2020-08-26 20:51:39 -04:00
Devin Ragotzy
fbcd26c6d2 All of event_auth follows the spec strictly, all the synapse-isms removed 2020-08-26 20:08:48 -04:00
Devin Ragotzy
025c2df752 Allow join room creator only if create event has no prev_events 2020-08-26 11:04:30 -04:00
Devin Ragotzy
36cec22cf3 Follow spec for is_membership_change_allowed
Add checks for caller in room and remove unspec'ed synapse check leave
-> join with join_rule = invite
2020-08-26 10:45:06 -04:00
Devin Ragotzy
e8acae05ff Add test testing conduits event sorting logic
This could possibly be turned into another public function for exporting.
A list of ruma::Pdu (events) and another list of ruma::Pdu (auth_events)
and returns the sorted list of events.
2020-08-26 07:10:47 -04:00
Devin Ragotzy
63be0b550f Add room version check to event auth and room_version to StateEvent 2020-08-22 06:36:22 -04:00
Devin Ragotzy
07807974f7 Update readme add docs 2020-08-21 07:39:02 -04:00
Devin Ragotzy
43e0f20d3b Remove self param from all StateResolution methods 2020-08-20 17:43:04 -04:00
Devin Ragotzy
4e9b428c0d Add depth getter to StateEvent 2020-08-18 16:06:18 -04:00
Devin Ragotzy
bafc2016c6 Add origin getter to StateEvent 2020-08-18 16:03:24 -04:00
Devin Ragotzy
8650f8fea7 Add hashes getter to StateEvent 2020-08-18 16:00:13 -04:00
Devin Ragotzy
ce2d5a0d9b Add license, update readme and add docs for event_auth functions 2020-08-18 13:46:14 -04:00
Devin Ragotzy
789c814089 Update ruma to latest 2020-08-15 13:32:48 -04:00
Devin Ragotzy
85693cc30a Update signatures since Cargo.lock seemed to be using cached ruma 2020-08-14 20:29:15 -04:00
Devin Ragotzy
ccc75313c5 Add docs and rename _get_event -> get_or_load_event 2020-08-14 15:49:43 -04:00
Devin Ragotzy
d22d83522b Make auth_types_for_event take the ruma types instead of StateEvent 2020-08-14 07:39:30 -04:00
Devin Ragotzy
6e0edce35a Continue to update to keep compatibility with conduit 2020-08-13 01:15:57 -04:00
Devin Ragotzy
484f48dc41 Export all of the event_auth mod 2020-08-12 18:39:33 -04:00
Devin Ragotzy
5f77bc11a2 Update ruma with conduit, make event_id return EventId not Option<> 2020-08-12 18:24:58 -04:00
Devin Ragotzy
5a45970266 Update how PDU works this needs to be fixed TODO
I have just added a hack to make the Pdu deserialize correctly in the
tests this has to be fixed!!
2020-08-11 23:53:33 -04:00
Devin Ragotzy
1509ef45c1 Update ruma depricated and use Option<String> for state_key 2020-08-11 23:40:22 -04:00
Devin Ragotzy
9a388fc813 Bump ruma to same rev as conduit federation-p2p branch 2020-08-11 23:22:20 -04:00
Devin Ragotzy
185047918a StateResolution's methods take &self now + more clean up 2020-08-05 23:34:49 -04:00
Devin Ragotzy
8a9f15e01f House keeping, remove &mut self in all methods
Improved perf -7.8220%
2020-07-28 07:09:07 -04:00
Devin Ragotzy
77cbcc7ee2 Clean up logging calls 2020-07-27 17:10:06 -04:00
Devin Ragotzy
4990dac5fe Move all event access to _get_event method
We now use the event_map when possible, only accessing the state store
when event_map fails. A -4.8578% increase in perf was observed.
2020-07-27 16:47:55 -04:00
Devin Ragotzy
d8fb5ca112 Add benchmark for longer auth chain and Error type
This required that the code being run in the benchmark be tested to
verify it works correctly. Now work can begin cleaning up and optimizing
state-res.
2020-07-27 00:09:21 -04:00
Devin Ragotzy
ea0b6ad530 Update readme to more accuratly reflect API 2020-07-25 08:26:26 -04:00
Devin Ragotzy
0ae8c8fe09 Add benchmarks for lexi_topo and state resolve method 2020-07-25 00:03:33 -04:00
Devin Ragotzy
29d86ebf3c Fix separate ignoring missing ids and auth_check details 2020-07-24 23:14:30 -04:00
Devin R
106cab46bc lexi_topo_sort needs to return a neg power_level to sort properly
All tests pass!!! Changed println! to logger calls.
2020-07-23 09:38:47 -04:00
Devin R
a0db51b3bd Room topic reset test fails 2020-07-23 01:12:25 -04:00
Devin R
5842ddf36e Working ban_vs_power_level test, add travis.yml, logging 2020-07-22 23:26:55 -04:00
Devin R
2f443cf41a BUG: follows synapse until get_mainline_depth then it loops forever 2020-07-21 08:55:51 -04:00
Devin R
d69e712dba Working at get_auth_chain_diff 2020-07-21 00:11:03 -04:00