Commit graph

413 commits

Author SHA1 Message Date
Bruno Windels
4a8a6168cd add failing test for race between sync & subscribing after openTimeline 2021-06-02 18:41:03 +02:00
Bruno Windels
d8acf63e1d change mock event api a bit to be easier to read 2021-06-02 18:38:16 +02:00
Bruno Windels
31075d601f load power levels before decryption closes the txn 2021-06-02 15:06:30 +02:00
Bruno Windels
cef94fea45 fix lint 2021-06-02 12:38:41 +02:00
Bruno Windels
bf951bd322 fix logging wrong value 2021-06-02 12:34:14 +02:00
Bruno Windels
c3754fdbd4 fix the race, make test succeed 2021-06-02 12:34:02 +02:00
Bruno Windels
87ebdbb0b4 add failing test for unhandled race between sync and send
see comments in code
2021-06-02 12:33:15 +02:00
Bruno Windels
7a96f84cab also show redaction reason for redaction local echo 2021-06-02 12:17:09 +02:00
Bruno Windels
addddf1f26 remove need for transferLocalEchoState, just add local relations again 2021-05-31 16:33:05 +02:00
Bruno Windels
13a4a0169c remove obsolete comments 2021-05-31 16:23:59 +02:00
Bruno Windels
25ce06c9d5 clarify 2021-05-31 15:55:31 +02:00
Bruno Windels
00231443d3 timeline has the own member, so can just use timeline, not ownUserId 2021-05-31 15:18:44 +02:00
Bruno Windels
d68d14358f use lower return 2021-05-31 14:08:45 +02:00
Bruno Windels
492a8fe359 remove extra whiteline 2021-05-31 14:05:37 +02:00
Bruno Windels
5d35caf85f no need to emit, timeline finds out by themselves with remote echo 2021-05-31 14:03:22 +02:00
Bruno Windels
23459aad52 check if you are allowed to redact a message 2021-05-31 13:52:03 +02:00
Bruno Windels
63b371b6ef support findAndUpdate with same predicate semantics in SortedArray too 2021-05-31 10:47:32 +02:00
Bruno Windels
fa37e8fedb findAndUpdate uses predicate, just add callback to update method 2021-05-31 10:46:16 +02:00
Bruno Windels
2da7ef4280 can only look in remote entries here as PEEs never return an event id 2021-05-27 10:28:02 +02:00
Bruno Windels
5e9ce365bf also apply local relations when loading at top 2021-05-27 10:27:44 +02:00
Bruno Windels
a93b1af047 ensure these don't fail on a gap entry 2021-05-27 09:16:25 +02:00
Bruno Windels
afc3db2f33 unrelated todo note for later 2021-05-27 09:11:57 +02:00
Bruno Windels
2b5dcff836 consistent naming 2021-05-27 09:11:13 +02:00
Bruno Windels
da02b5fe2d transfer local echo state when replacing event entry
e.g. after decryption or remote echo of other relation comes in
2021-05-26 13:10:19 +02:00
Bruno Windels
ce7147e463 put redactions in their own view, and allow aborting while still queued 2021-05-26 13:07:56 +02:00
Bruno Windels
af45810582 add support for redactions (and relations) local echo 2021-05-21 16:59:29 +02:00
Bruno Windels
b55efb7f11 ensure updateEntries is always set in the result of GapWriter 2021-05-21 16:58:04 +02:00
Bruno Windels
c934049523 also resolve related event ids when removing remote echo during sync
as /sync races with /send, and remote echo may happen first.
It's important for local echo that the pending redaction/relation
will also get attached to the remote echo before /send returns,
otherwise the remote echo would be "unannotated" until /send returns
2021-05-21 10:52:46 +02:00
Bruno Windels
c3fb35848b emit update when receiving event id for related event ahead in the queue 2021-05-20 15:02:45 +02:00
Bruno Windels
619cf9bcbb this should be filter rather than find, we iterate it 2021-05-20 15:02:24 +02:00
Bruno Windels
f271517446 log redaction during sync 2021-05-20 15:02:14 +02:00
Bruno Windels
8a8c5569dc provide redact method on tile and room
also add some logging
2021-05-20 14:53:17 +02:00
Bruno Windels
9721432a8c remove pending events that failed because of permanent error
so they don't get stuck
2021-05-20 14:52:30 +02:00
Bruno Windels
4ce66fc8a1 allow concurrent removals when iterating pending events
so we can remove failed events in the next commit
2021-05-20 14:51:04 +02:00
Bruno Windels
618a32e6c0 revert last tried pending event status to waiting when offline
so we don't fail the check if we can immediately remove when redacting
2021-05-20 14:49:54 +02:00
Bruno Windels
df9e886f32 fix lint 2021-05-20 13:22:54 +02:00
Bruno Windels
b655c34bbb also show reason for redaction 2021-05-20 13:20:12 +02:00
Bruno Windels
780ad44032 render redacted messages 2021-05-20 13:15:35 +02:00
Bruno Windels
94b0bc82ef writing relations is async 2021-05-20 12:50:16 +02:00
Bruno Windels
814e92ad92 fix missing import 2021-05-20 12:50:16 +02:00
Bruno Windels
39bed4b0fc fix lint here 2021-05-20 12:50:16 +02:00
Bruno Windels
9b923d337d write redactions during sync 2021-05-20 12:50:16 +02:00
Bruno Windels
edaac9f436 draft redaction support, no local echo yet 2021-05-20 12:50:16 +02:00
Bruno Windels
c04a8140a3 offer to rejoin archived room from menu 2021-05-18 11:07:46 +02:00
Bruno Windels
8ff1f91d2c bring down lint error count, delete some old, inactive unit tests 2021-05-17 12:59:04 +02:00
Bruno Windels
f5f25c3019 fix DM room names appearing as "Empty room"
because we weren't properly awaiting the heroes to be loaded
2021-05-12 23:07:25 +02:00
Bruno Windels
b30b62416c add option to forget archived room 2021-05-12 15:38:54 +02:00
Bruno Windels
f331d84292 add options menu in room header with leave room option 2021-05-12 13:59:08 +02:00
Bruno Windels
afd33f4b77 use constant for member event type 2021-05-12 12:19:05 +02:00
Bruno Windels
ca84f485ab fix tests 2021-05-11 17:04:36 +02:00