Tulir Asokan
4bfd3bd644
Fix marking messages as disappearing while backfilling on SQLite
2022-11-10 23:12:08 +02:00
Tulir Asokan
86e739b6a1
Simplify using optional db transactions
2022-11-10 23:12:08 +02:00
Tulir Asokan
f7064812ea
Update dependencies
2022-11-04 12:54:46 +02:00
Tulir Asokan
1105530c9a
Add initial support for WhatsApp message edits
...
Sending will be disabled by default until official WhatsApp clients
start rendering edits. The implementation may also be incorrect.
2022-10-08 17:47:52 +03:00
Tulir Asokan
7a933124fa
Use transaction for saving reactions in backfill
2022-09-28 15:54:08 +03:00
Tulir Asokan
f79efa9037
Update mautrix-go
2022-08-14 19:37:11 +03:00
Tulir Asokan
3617b991c8
Update whatsmeow
2022-08-01 09:49:27 +03:00
Sumner Evans
17cd75654f
Fix the FindPrivateChats SELECT statement
...
The % needs to be escaped in the LIKE statement.
Closes #532
2022-07-18 19:11:23 -06:00
Tulir Asokan
7ccc0d005e
Remove unused dbms migration function
2022-07-12 13:15:49 +03:00
Tulir Asokan
19b4c3093a
Apply periodic resync for group chats too
2022-06-28 16:22:11 +03:00
Tulir Asokan
9f0901f560
Add periodic ghost avatar resync
2022-06-28 14:37:50 +03:00
Tulir Asokan
40ea8a8324
Stop using SELECT *
2022-06-24 17:53:28 +03:00
Tulir Asokan
8012368de5
Fix backfill queue query. Fixes #517
2022-06-17 10:33:47 +03:00
Tulir Asokan
2463f8e60f
Port some more old db schema upgrades
2022-05-26 11:23:15 +03:00
Tulir Asokan
52748374b7
Actually fix first_expected_ts upgrade. Fixes #504
2022-05-25 23:48:39 +03:00
Tulir Asokan
241de2f18f
Fix changing first_expected_ts column type
2022-05-25 18:51:51 +03:00
Sumner Evans
1f292dc1c5
Merge pull request #502 from mautrix/backfill-queue-fixes
...
backfill: fixes and minor refactors
2022-05-25 08:40:44 -06:00
Sumner Evans
b850995888
backfill: block deferred requests on immediate and forward backfills
2022-05-24 17:34:43 -06:00
Sumner Evans
a0ffed43dd
database/backfill_state: change type of first_expected_ts to BIGINT
2022-05-24 17:34:43 -06:00
Tulir Asokan
66cd7cd080
Fix mixed indent in .sql files
2022-05-23 20:00:08 +03:00
Tulir Asokan
a42c7bca17
Remove unused crypto store and fix comment
2022-05-22 22:03:08 +03:00
Tulir Asokan
a948ea0146
Move a bunch of stuff to mautrix-go
...
See d578d1a610
Database upgrades from before v0.4.0 were squashed, users must update
to at least v0.4.0 before updating beyond this commit.
2022-05-22 01:06:30 +03:00
Sumner Evans
4eac1ea719
backfill state: update during backfill
2022-05-20 10:22:30 -06:00
Sumner Evans
89663c2745
backfill state: add table for tracking state
2022-05-20 10:18:24 -06:00
Sumner Evans
feb9f71cb5
backfill: re-dispatch if 15 minutes have elapsed
...
If 15 minutes have passed since the backfill request was dispatched and
backfill hasn't completed, then re-dispatch.
2022-05-20 10:18:17 -06:00
Tulir Asokan
d33f5aa3d2
Stop ignoring errors deleting backfill queue stuff
2022-05-19 11:45:08 +03:00
Tulir Asokan
68b2d663ac
Fix deleting historical messages of chats that won't be bridged
2022-05-19 11:41:18 +03:00
Tulir Asokan
60496e5976
Fix last message timestamp in history_sync_conversation table
2022-05-19 11:41:02 +03:00
Sumner Evans
ec8f75e50e
backfill: add option to mark unread using account data
2022-05-18 10:40:29 -06:00
Tulir Asokan
8b7abe6f7d
Don't send read receipts for errored messages
2022-05-18 01:00:23 +03:00
Sumner Evans
5b73ba7efd
Merge pull request #494 from mautrix/sumner/bri-3309
...
backfill: remove intermediate queues and unblock re-checking DB
2022-05-16 17:13:29 -06:00
Sumner Evans
54f3e8a439
database: combine backfill queue upgrades together
2022-05-16 17:09:47 -06:00
Sumner Evans
df46ca99f9
backfill: remove intermediate buffer for backfill
2022-05-16 14:04:22 -06:00
Tulir Asokan
3ee7c8527a
Send a valid request when doing hacky phone pings
2022-05-16 11:22:41 +03:00
Sumner Evans
f3f6d88e55
backfill: perform batch finish in transaction
2022-05-15 21:43:12 -06:00
Sumner Evans
c1bf0e6555
backfill queue: set the dispatch time instead of completed time
2022-05-15 21:42:42 -06:00
Sumner Evans
17c697445d
history sync: store timestamp when the message got put into the DB
...
This will be useful for debugging issues with missing messages
2022-05-15 21:42:42 -06:00
Sumner Evans
1d70cbff48
backfill queue: add dispatch time, remove time end to table
...
* the dispatch time is going to be what the completed time used to be
* the time end column was always nil, so I got rid of it
2022-05-15 21:42:38 -06:00
Tulir Asokan
c7b0f98f97
Fix scanning null values in timezone column
2022-05-12 20:51:37 +03:00
Sumner Evans
b42aa16684
media backfill: store media key in request
...
This way, we don't have to fetch the event from Matrix in these situations
2022-05-12 11:30:42 -06:00
Sumner Evans
08e77fab29
media backfill: send retry requests at the configured time
...
Only does the batch send of requests if the request method is 'local_time'
2022-05-11 17:10:55 -06:00
Sumner Evans
b5551ee16a
database: add media requests buffer table
2022-05-11 17:10:55 -06:00
Tulir Asokan
4bc4e92877
Remove media backfill queue and just request immediately
2022-05-02 15:00:57 +03:00
Tulir Asokan
4b22e786f5
Make signal store retry if postgres dies
2022-04-29 19:38:44 +03:00
Tulir Asokan
573eec44c8
Fix indentation in SQL query
2022-04-29 17:03:27 +03:00
Tulir Asokan
6b69ea707b
Use single SQL query for fetching backfill queue items
2022-04-29 10:44:22 +03:00
Sumner Evans
caf0a363c9
backfill: delete messages for rooms the user is not in
...
If the chat turns out to be not bridgable due to the user not being in
the room, delete the messages, and stop trying to backfill it.
2022-04-27 08:29:20 -06:00
Sumner Evans
e74bb62fc1
backfill logging: fix logging of Backfill structs
2022-04-19 11:19:42 -06:00
Sumner Evans
f2e762680c
media backfill: add ability to automatically request media not on WA server
...
This adds a new backfill type for media that sends a request to the
phone for every media that is not available on the WA servers. WA
deletes media from their servers after about two weeks, so you have to
ask the phone to re-upload it.
In order to use this, you need to enable
bridge.history_sync.backfill_media and configure the requests that will
be made per portal using bridge.history_sync.media (which is similar to
the deferred backfill config).
If you already have backfilled portals, but want to do a one-off media
backfill for all existing portals, you can set
bridge.history_sync.enqueue_backfill_media_next_start to true.
2022-04-19 08:12:51 -06:00
Tulir Asokan
2c68ccc0a3
Clean up some backfill things
2022-04-18 20:12:24 +03:00