Commit Graph

58 Commits

Author SHA1 Message Date
Patrick Cloke
3b8872299a
Do not allow cross-room relations, per MSC2674. () 2021-12-09 13:16:01 -05:00
Patrick Cloke
494ebd7347
Include bundled aggregations in /sync and related fixes ()
Due to updates to MSC2675 this includes a few fixes:

* Include bundled aggregations for /sync.
* Do not include bundled aggregations for /initialSync and /events.
* Do not bundle aggregations for state events.
* Clarifies comments and variable names.
2021-12-06 15:51:15 +00:00
Patrick Cloke
379f2650cf
Bundle relations of relations into the /relations result. ()
Per updates to MSC2675 which now states that bundled
aggregations should be included from the `/relations`
endpoint.
2021-11-30 11:33:33 -05:00
Patrick Cloke
3d893b8cf2
Store arbitrary relations from events. ()
Instead of only known relation types. This also reworks the background
update for thread relations to crawl events and search for any relation
type, not just threaded relations.
2021-11-22 12:01:47 -05:00
Patrick Cloke
4bd54b263e
Do not allow MSC3440 threads to fork threads ()
Adds validation to the Client-Server API to ensure that
the potential thread head does not relate to another event
already. This results in not allowing a thread to "fork" into
other threads.

If the target event is unknown for some reason (maybe it isn't
visible to your homeserver), but is the target of other events
it is assumed that the thread can be created from it. Otherwise,
it is rejected as an unknown event.
2021-11-18 13:43:09 +00:00
Patrick Cloke
ba00e20234
Add a thread relation type per MSC3440. ()
Adds experimental support for MSC3440's `io.element.thread` relation
type (and the aggregation for it).
2021-10-21 14:39:16 -04:00
Patrick Cloke
1609ccf8fe
Fix-up some type hints in the relations tests. () 2021-10-14 09:19:35 -04:00
David Robertson
ecd823d766
Flatten tests/rest/client/{v1,v2_alpha} too () 2021-08-20 17:50:44 +01:00