Tulir Asokan
5bb2db43c0
Add support for PNI portals
2024-03-22 15:37:21 +02:00
Tulir Asokan
a78a88c741
Prevent downgrading ghost user info by default ( #464 )
...
Fixes #396
Closes #449
2024-02-28 15:21:24 +02:00
Tulir Asokan
616c227219
Fix SQLite db migration. Fixes #454
2024-02-16 20:41:01 +02:00
Andrew Ferrazzutti
25ba56bf9b
Fix things in DB migration
...
Closes #451
Might fix #425
2024-02-16 17:58:57 +02:00
Andrew Ferrazzutti
7761199303
Use Stringer with zerolog ( #441 )
...
Satisfies the "zerolog-use-stringer" pre-commit hook
2024-02-10 14:36:05 +02:00
Andrew Ferrazzutti
ea4522bd17
Deduplicate users' UUIDs during schema upgrade ( #429 )
...
Otherwise, upgrading to v16 may hit conflicts if two users share the
same Signal UUID, which was possible in prior DB versions.
---
This is useful only when upgrading a DB from the signald version of the
bridge, where some Matrix users had logged into the same Signal account
(and thus shared the same UUID in the "users" table).
Though this removes Signal UUID associations from Matrix users,
migrating from the signald version requires re-logging in anyways.
The only time this would not be safe is when migrating a DB that had
already been migrated from signald (i.e. a v13-v15 version) and users
logged back in, with some sharing the same Signal UUID.
2024-01-26 14:58:43 +02:00
Tulir Asokan
6d53efde33
Handle edge case in portal table upgrade
2024-01-18 23:12:39 +02:00
Tulir Asokan
959eb7eaf9
Update mautrix-go
2024-01-07 23:19:31 +02:00
Tulir Asokan
1611ae06ad
Fix typo
2024-01-06 17:03:06 +02:00
Tulir Asokan
e2d8a24c99
Refactor group and user info updating
2024-01-05 22:10:59 +02:00
Tulir Asokan
bd319db1a7
Clear duplicate double puppet entries before adding unique constraint
2024-01-04 19:41:34 +02:00
Tulir Asokan
c03b0f84f5
Handle read receipts properly
2024-01-03 17:02:15 +02:00
Tulir Asokan
36425edf2c
Drop user_portal again
2024-01-03 01:18:09 +02:00
Tulir Asokan
8d9ed76ccd
Add support for personal filtering spaces
2024-01-03 01:09:33 +02:00
Tulir Asokan
67077b4667
Update message timestamp when editing
2024-01-02 19:35:57 +02:00
Tulir Asokan
9efe31d789
Refactor Signal -> Matrix message handling
...
Also add support for edits
2024-01-02 19:04:45 +02:00
Tulir Asokan
559da81ffc
Handle duplicate logins (ref #408 )
2024-01-02 17:34:47 +02:00
Tulir Asokan
46bf2fe8b8
Fix mistake in sqlite schema upgrade
2024-01-02 11:42:39 +02:00
Tulir Asokan
584786f438
Drop old reaction entries with fake timestamp
...
Fixes #405
2024-01-01 15:58:37 +02:00
Tulir Asokan
2dac1db3b6
Handle different postgres constraint names
...
Hopefully the rest of the upgrade will still fail if the name is
neither of these options
2023-12-31 19:06:00 +01:00
Tulir Asokan
9fed988e6b
Fix inserting puppets and portals
...
Closes #404
2023-12-31 17:48:02 +01:00
Tulir Asokan
5a424c5e8d
Drop user_portal table for now
2023-12-31 15:20:40 +01:00
Tulir Asokan
35db0abe8b
Refactor database tables and query wrappers ( #402 )
...
* Change most columns to `NOT NULL`, including primary keys
(because SQLite).
* Change columns only storing signal user IDs (portal receiver, message
sender, user uuid) to use the `uuid` type instead of `TEXT`.
* Drop chat ID from message table primary key.
* Add part index to message table to replace timestamp hack for storing
multiple parts of the same message.
* Change query wrappers to use new QureyHelper struct in dbutil, and
pass contexts and errors everywhere.
As a part of changing the portal receiver from phone number to uuid,
old portals whose receiver isn't logged in anymore may be discarded.
The discarded portals will be stored in the lost_portals table for
cleanup or recovery.
2023-12-31 16:12:58 +02:00
Tulir Asokan
0403522df0
Copy delete-portal command from WhatsApp
2023-12-30 21:24:24 +01:00
Tulir Asokan
3fabd67c5b
Rename file
2023-12-18 14:22:49 +02:00
Tulir Asokan
ce93c81271
Remove unused columns in puppet table
2023-12-17 17:25:29 +02:00
Tulir Asokan
49ce1f530c
Add copyright headers
2023-12-17 15:54:35 +02:00
Tulir Asokan
61841ca4f1
Organize imports
2023-12-17 15:21:21 +02:00
Scott Weber
f54556b96f
Small tidy
2023-10-22 23:47:09 -04:00
Scott Weber
4966bda94a
Disappearing messages!
2023-10-22 23:39:59 -04:00
Scott Weber
e4f386b54b
Fix AllLoggedIn() to use user.Scan()
2023-10-18 13:12:20 -04:00
Tulir Asokan
f6652b3509
Fix scanning non-logged-in users from db
2023-10-06 16:16:35 +03:00
Tulir Asokan
0e518f777f
Fix inserting users on postgres
2023-10-04 12:28:25 +03:00
Tulir Asokan
a0110915d5
Remove redundant notice_room column
2023-10-04 12:28:25 +03:00
Tulir Asokan
ce884a4061
Fix postgres migration from legacy signal
2023-09-30 14:34:29 +03:00
Scott Weber
87bd96ca3e
If number is null in DB, return it as null during scan
2023-09-20 16:16:15 -04:00
Scott Weber
152029fe16
Upgrade to mautrix-go 0.16.1 and use it for double puppeting
2023-09-20 15:57:59 -04:00
Scott Weber
24cf5662d7
Migration for user table and missed NULL handling in portal table
2023-09-12 13:45:40 -04:00
Scott Weber
ec31a807e9
Fix DB code to handle NULLs in the DB
2023-09-12 11:32:55 -04:00
Tulir Asokan
2e3d50ce34
Set mx_version in upgrade
2023-09-11 16:19:34 -04:00
Tulir Asokan
aa7b6ba23f
Fix version number
2023-09-11 16:14:24 -04:00
Tulir Asokan
2d731ca4fe
Add db schema upgrade to fix python state store
2023-09-11 16:11:29 -04:00
Scott Weber
9e012e9ca7
Fix DB upgrading
2023-09-11 15:53:53 -04:00
Scott Weber
5c6dbd7aee
Set DB version to v12
2023-09-11 15:32:24 -04:00
Scott Weber
9122c32e66
Bridge reactions (but not reaction redactions) from matrix -> signal
...
Also some substantial message sending refactoring
2023-08-28 17:15:25 -04:00
Scott Weber
988956a60b
Forgot to add database/reaction.go 🤦
2023-08-28 11:11:06 -04:00
Scott Weber
f84ae817a5
Add reactions table and handle reaction redactions
2023-08-28 10:08:08 -04:00
Scott Weber
df8b0db093
Double puppet is working!
2023-07-19 14:54:16 -04:00
Scott Weber
177cb62577
Lots of fixes
...
- Store profile keys
- Fix DB users
- Fix puppets
- Fix prekey bundles (Kyber)
2023-06-22 17:28:11 -04:00
Scott Weber
795e5d93c3
Small fixes
2023-06-17 10:21:47 -04:00