31 Commits

Author SHA1 Message Date
Kévin Commaille
8ed8267e5d
Release ruma-state-res 0.11.0 2024-05-09 13:09:14 +02:00
Matthias Ahouansou
8ecbc47e55 state-res: perform extra redaction checks for v1 and v2 rooms rather than v3+ 2024-05-06 14:56:09 +02:00
Kévin Commaille
812625fab4 state-res: Disallow invite->knock membership transition
Due to a spec clarification that reverts the previous spec clarification
2024-02-28 10:34:52 +01:00
Jonas Platte
2600e4c0df
Release ruma-state-res 0.10.0 2023-10-05 17:18:04 +02:00
Kévin Commaille
c8bbcecdc8 docs: Update changelogs for Matrix 1.8 2023-08-24 12:16:29 +02:00
Kévin Commaille
afd8f2f652 state-res: Add RoomVersion::V11
According to MSC3820
2023-08-14 17:23:17 +02:00
Kévin Commaille
8cd72fa892
Release ruma-state-res 0.9.1 2023-02-15 13:12:49 +01:00
Jonas Platte
250d7f84dc
Release ruma-state-res 0.9.0 2023-02-01 14:17:10 +01:00
Kévin Commaille
279c9d0fa6 state-res: Allow invite->knock membership transition
According to spec clarification
2022-10-10 17:29:08 +02:00
Nyaaori
68eecf71af state-res: Fix third party invite validation 2022-10-10 17:20:58 +02:00
Jonas Platte
2c43137f5f
Release ruma-state-res 0.8.0 2022-09-12 21:09:17 +02:00
Kévin Commaille
da462adab1 state-res: Stabilize deserializing stringified integers for PLs
Removes the `compat` feature.
2022-06-27 13:19:25 +02:00
Kévin Commaille
b38efe75c3 state-res: Fix default invite power level
According to matrix-org/matrix-spec#1021
2022-06-27 13:19:25 +02:00
Kévin Commaille
2fcb7315b4 state-res: Add RoomVersion::V10 2022-06-25 18:22:32 +02:00
Kévin Commaille
324c8b09e0
state-res: Add m.federate to the authorization rules 2022-06-25 18:11:57 +02:00
Jonas Platte
4f9e8f0ae5
Release ruma-state-res 0.7.0 2022-04-28 17:56:00 +02:00
gnieto
fca0f6a22b
Minor fix on join member auth rules
Previous code was not checking/enforcing rule 4.3.1
(https://spec.matrix.org/v1.2/rooms/v9/), which states that a room
member event (with a join membership) must be accepted only if it contains
a previous event which `state_key` is the room creator.

On top of that, it simplifies the public interface for `auth_rules`,
removing the need of (externally) compute `prev_event`, which, as a side
effect, should reduce the amount of times the previous event needs to be
fetched: It will only load it if the authorized event is a `m.room_member`
with a `Join` state.

Finally, I've splitted the join conditions so it's (hopefully) more
readable and apply auth rules in the same order as they
appear in the spec.
2022-03-08 08:27:47 +01:00
Jonas Platte
82436b57ba
Release ruma-state-res 0.6.0 2022-02-19 15:05:41 +01:00
Jonas Platte
42db3b3201
Release ruma-state-res 0.5.0 2022-02-19 01:45:06 +01:00
Jonas Platte
9ed75241a6
state-res: Refactor lexicographical_topological_sort
Gets rid of unnecessary copying and makes things more explicit by using
a struct with named fields instead of a tuple for tie breaking.

Co-authored-by: Jonathan de Jong <jonathan@automatia.nl>
2021-11-26 20:22:57 +01:00
Jonas Platte
a9985d7763
events / state-res: Use RawJsonValue over JsonValue for event content 2021-09-15 20:58:42 +02:00
Jonas Platte
09acfb1b0b
Release ruma-state-res 0.4.1 2021-09-01 21:55:04 +02:00
Jonas Platte
50f0327b0b
Release ruma-state-res 0.4.0 2021-08-26 12:33:47 +02:00
Jonas Platte
da5e631640
Release ruma-state-res 0.3.0 2021-08-11 17:56:10 +02:00
Timo Kösters
3a0ee7740f
state-res: Change BTreeMap/Set to HashMap/Set 2021-08-10 15:22:47 +02:00
Timo Kösters
d970501c85
state-res: Revert calculating the auth chain in ruma
In a previous commit I moved the auth chain calculation code to ruma
because I thought I could optimize it by only taking auth chains from
conflicted events instead of all events. It turned out that was wrong
and now I removed that algorithm again (the full auth chains are now
passed in as an argument to state_res::resolve again).
2021-08-10 15:22:47 +02:00
Timo Kösters
17afbabd92
state-res: Calculate auth_events and fix bug when calculating common events 2021-08-10 15:22:46 +02:00
Devin Ragotzy
a4e6cc7c42
state-res: Use closure to fetch unknown events during state-res
state-res: Remove event_map arg from all functions

state-res: Remove get_or_load_event helper func and fix resolve docs
2021-08-10 15:22:26 +02:00
Jonas Platte
5a1192f158
Release ruma-state-res 0.2.0 2021-06-21 18:03:39 +02:00
Jonas Platte
e5e2cde421
Release ruma-state-res 0.1.0 2021-05-17 01:50:19 +02:00
Jonas Platte
6f8d43ccbb
state-res: Prepare for publishing 2021-05-17 01:48:28 +02:00