Jonas Platte
8912182c56
Increase usage of implicit named arguments in format strings
2022-06-03 10:06:28 +02:00
Jonas Platte
73c2963ebd
Enforce consistent semicolons after ()
-typed expressions in blocks
2022-06-03 08:40:16 +02:00
Jonas Platte
5f902851af
Upgrade to Rust 2021
2022-05-27 12:04:23 +02:00
Jonas Platte
6100a0fa12
Use new owned ID types in more places
2022-04-20 10:39:36 +02:00
Jonas Platte
d855ec33d6
identifiers: Update ToOwned implementations to use new types
...
… and a lot of changes that cascaded from that.
2022-04-20 10:39:36 +02:00
Jonas Platte
3ec8218158
state-res: Update fetch_state type
2022-04-15 12:06:09 +02:00
Jonas Platte
b3cea6b998
state-res: Use StateEventType over RoomEventType where applicable
2022-04-09 00:55:14 +02:00
Jonas Platte
77a95e5ac9
state-res: Properly declare room version 7 stable
2022-04-06 11:04:25 +02:00
Jonas Platte
7de3b4b649
events: Rework the event enum hierarchy
2022-04-05 14:29:17 +02:00
Jonas Platte
d87874314b
events: Add 'Original' prefix to unredacted types with a redacted form
2022-04-05 14:29:17 +02:00
Jonas Platte
24bd27a3a9
Remove origin field from PDUs
...
It has been removed from the spec, for details see
https://github.com/matrix-org/matrix-spec/pull/998
2022-03-30 08:44:40 +02:00
Jonas Platte
ce785064a9
Use RoomEventType instead of EventType for PDUs and power levels
2022-03-16 12:20:17 +01:00
Timo Kösters
83e46b6aea
state-res: Fix restricted joins
2022-03-14 15:02:21 +01:00
Timo Kösters
1ab97ddbe5
state-res: Fix knocking support
2022-03-11 12:38:39 +00:00
Kévin Commaille
bdcf07be87
common: Merge ruma-serde into ruma-common
2022-03-10 12:11:00 +01:00
Kévin Commaille
088d1872b7
common: Merge ruma-identifiers into ruma-common
2022-03-09 17:46:51 +00:00
homersimpsons
2ec50bd03c
doc: migrate links from matrix-doc to matrix-spec(-proposals)
2022-03-08 10:24:26 +01: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
43c47ef676
state-res: Fix wrong import location
2022-03-04 17:00:00 +01:00
Kévin Commaille
c3f9a3cb70
common: Merge ruma-events into ruma-common
2022-03-04 11:45:07 +00:00
Jonathan de Jong
936bb64e84
Update links to spec.matrix.org/v1.2
2022-02-18 19:45:04 +01:00
Jonas Platte
215cb35806
Clean up import grouping / ordering
2022-02-18 11:20:39 +01:00
Kévin Commaille
acba6fbbc4
ci: Add the __ci feature
2022-02-11 22:17:49 +01:00
Jonas Platte
a55df1ef9d
state-res: Remove unstable-spec feature
...
Everything that was gated behind it was stabilized with Matrix v1.2.
2022-02-02 23:25:52 +01:00
Jonathan de Jong
eeba51d4d6
state-res: Resolve FIXME comment
2022-02-02 14:27:59 +01:00
Jonas Platte
2706f24688
state-res: Move room version 8, 9 logic from unstable-pre-spec to unstable-spec
2022-02-01 21:37:11 +01:00
Jonas Platte
3ed7c8a643
state-res: Move knocking logic out of unstable-pre-spec
2022-02-01 21:08:19 +01:00
Jonathan de Jong
8348b97091
Improve Synapse compatibility w.r.t. power levels
2022-02-01 15:26:30 +01:00
Jonas Platte
d09c961a0b
state-res: Apply clippy suggestion
2022-01-31 20:16:41 +01:00
Jonas Platte
cb135f5982
state-res: Update spec link and linkify links
2022-01-17 12:13:00 +01:00
Jonas Platte
4c859c5aeb
Introduce a Base64 type and use it where applicable
2022-01-13 16:22:21 +01:00
Jonas Platte
1bdeebbd00
state-res: Reduce indentation by adding early returns
2022-01-13 13:52:43 +01:00
Jonas Platte
7cf3abbaf0
state-res: Remove unnecessary cloning
2021-12-22 17:46:05 +01:00
Jonas Platte
6abfe3ff70
state-res: Remove unnecessary allow attribute
2021-12-22 17:45:50 +01:00
Jonas Platte
7290860019
state-res: Add support for room version 8 join restrictions
...
Co-authored-by: Devin Ragotzy <d6ragotzy@wmich.edu>
2021-12-17 18:58:32 +01:00
Jonas Platte
57cbe491f0
Move RoomVersionId::V7 out of unstable-pre-spec
...
Matrix v1.1 stabilized room version 7.
2021-12-17 18:51:38 +01:00
Jonas Platte
7e3b727d04
Fix / silence clippy lints
2021-12-09 15:50:42 +01:00
Jonas Platte
96374a7517
state-res: Rename RoomVersion::VERSION{num} to RoomVersion::V{num}
2021-12-04 18:59:39 +01:00
Jonas Platte
a1cf04076c
state-res: Remove unused RoomVersion::version field
2021-12-04 18:58:38 +01:00
Devin Ragotzy
7f0913ccd7
state-res: Add membership check for Knock behind unstable feature
2021-12-04 18:48:03 +01:00
Jonas Platte
16f031fabb
state-res: Make the API generic over the event ID storage
2021-11-27 23:18:34 +01:00
Jonas Platte
a9c12f0909
state-res: Remove EventMap type alias
2021-11-27 22:44:34 +01:00
Jonas Platte
399bd7d82d
state-res: Rename generic parameter
2021-11-27 18:13:32 +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
6b76d7813e
identifiers: Shorten RoomVersionId variant names
2021-11-26 01:07:26 +01:00
Jonas Platte
3ce578f384
identifiers: Make UserId a DST
2021-11-26 00:40:40 +01:00
Jonas Platte
2d4dbfe42f
identifiers: Make RoomId a DST
2021-11-26 00:04:28 +01:00
Jonas Platte
52608cc72c
identifiers: Make EventId a DST
2021-11-25 22:34:40 +01:00
Devin Ragotzy
7fbfe59091
state-res: Minor fixes & doc updates
2021-11-15 23:08:12 +01:00
Devin Ragotzy
44db63657f
state-res: Change most RoomVersion constructor functions to constants
2021-11-15 23:04:47 +01:00