Skip R
9719c6d1d5
add proper support for remote profiles
2026-03-06 21:54:15 -08:00
Skip R
833085bd95
usercache: add self user to cache
2026-03-06 19:57:57 -08:00
Skip R
3f5993e6e4
provisioning: deeply delete portals when unbridging
2026-03-05 18:46:31 -08:00
Skip R
0c0aa7e212
handlematrix: implement bridgev2.MuteHandlingNetworkAPI
...
(When used with Beeper, this is only effectively invoked when the bridge
is being used locally.)
2026-03-05 16:30:43 -08:00
Skip R
1bb9b0c244
chatinfo: bridge discord mute state to matrix
...
Note that mute_only_on_create in the config seems to default to true.
When that is the case, the remote mute state only makes a difference
during initial portal creation.
2026-03-05 16:29:41 -08:00
Skip R
35dcea1f03
client,handlediscord: keep track of user guild settings
...
These contain information about mutes, notification settings, etc.
2026-03-05 16:28:21 -08:00
Skip R
a9eccd574d
dependencies: bump discordgo
...
for user guild settings stuff
2026-03-05 16:23:34 -08:00
Skip R
25cf272ca1
events: remove unused field that made the linter mad
2026-03-04 20:51:04 -08:00
Skip R
03d733da42
router: cope with database failures, making routing infallible
...
Even if the DB is dead for some reason, we should still be able to route
from in-memory data.
2026-03-04 20:47:45 -08:00
Skip R
4c14457c52
lint
2026-03-04 20:43:34 -08:00
Skip R
7e01e8aec3
dbmeta: stash discord channel type in portal metadata
2026-03-04 20:42:02 -08:00
Skip R
55501bf50f
handlediscord: avoid queueing remote events for unbridged channels
...
This avoids the implicit creation of portals that have zero-valued
metadata. Other methods like GetPortalByKey also do this.
2026-03-04 20:42:00 -08:00
Skip R
3c53f7ed2d
connector: fix forward backfill heuristic
2026-03-04 20:37:45 -08:00
Skip R
a2933d989b
msgconv: do not create stub portals when formatting channel mentions
2026-03-04 20:23:23 -08:00
Skip R
cfe1d24d19
connector: handle receivers correctly and consolidate thread routing
...
* The split_portals config option is finally respected.
* This should prevent future room duplication when migrating from the
pre-bridgev2 version of the bridge, as we'll finally address guild
channels properly (that is, without a Receiver set, unless
split_portals is true).
2026-03-04 19:15:46 -08:00
Skip R
786a6712fd
backfill: implement bridgev2.BackfillingNetworkAPIWithLimits
...
This lets DMs backfill properly when the user scrolls to the top of the
room in a Beeper client.
2026-03-03 22:18:10 -08:00
Skip R
8e51cf25aa
msgconv: populate reply information even when target isn't in db
...
We can't rely on the reply target to be in the database because that
won't be true during backwards backfill. Populate it more eagerly.
2026-03-03 22:12:49 -08:00
Skip R
c1f82b9157
backfill: set MarkRead if all messages in a batch are read
2026-03-03 21:25:29 -08:00
Skip R
1ead5baf2f
client: handle read states
2026-03-03 21:23:49 -08:00
Skip R
5d9e2373d9
msgconv/from-discord: propagate reply log to context
2026-03-03 20:13:12 -08:00
Skip R
28f20d8f62
legacymigrate: drop tables in a different order to avoid fkey violation
...
The transaction that runs legacymigrate.sql will eventually fail with:
no such table: main.guild_old
if you drop portal_old without dropping guild_old first. This has
something to do with how the foreign keys and cascading works out on
SQLite's end (especially the self-fk on portal_old).
2026-03-02 15:50:16 -08:00
Skip R
a1ad290a29
ci: set GOTOOLCHAIN again
2026-02-27 07:28:29 -08:00
Skip R
09ace9ce8b
ci: bump Go version
2026-02-27 07:24:52 -08:00
Skip R
bc50b3c79d
migrate: fixup
2026-02-27 06:44:09 -08:00
Skip R
7e20338ea9
migrate: add comments
2026-02-27 06:44:09 -08:00
Skip R
eae5128f91
lint
2026-02-27 06:44:09 -08:00
Skip R
6ff087ef60
migrate: migrate subset of discord_file to custom_emoji
2026-02-27 06:44:09 -08:00
Skip R
661234452f
migrate: init
2026-02-27 06:44:09 -08:00
Skip R
343ae04ea6
handlediscord: simplify threading support
2026-02-27 06:44:09 -08:00
Skip R
55c0272903
handlediscord: initial pass at threads support
2026-02-27 06:44:09 -08:00
Skip R
6a2d8d569e
db: add thread migration
2026-02-27 06:44:09 -08:00
Skip R
ea3052e567
handlediscord: sync roles from guilds
2026-02-27 06:44:09 -08:00
Skip R
0e1ff96e62
db: add model for roles
2026-02-27 06:44:09 -08:00
Skip R
fa25e2784a
db: init roles
2026-02-27 06:44:02 -08:00
Skip R
1bebafcc3d
config: add guild_avatars_in_rooms, disabled by default
2026-02-20 17:38:50 -08:00
Skip R
19cfff24d2
handlediscord: bridge realtime channel updates
2026-02-19 13:24:22 -08:00
Skip R
91f8d2b269
support custom emojis
2026-02-17 19:45:12 -08:00
Skip R
1014576dc0
capabilities: declare support for voice messages
2026-02-16 21:49:38 -08:00
Skip R
dfa9c52974
discordid: make function names more explicit
...
These are fairly wordy but help maintain correctness. A channel portal
ID should not be confused with a guild portal ID.
2026-02-13 21:19:07 -08:00
Skip R
04c15d15a7
handlediscord: bridge categories with proper parenting
2026-02-13 21:05:35 -08:00
Skip R
66badc0709
handlediscord: bridge channel topics
2026-02-13 18:16:09 -08:00
Skip R
d36528400d
handlediscord: don't log upon "unknown" events
...
Due to how discordgo dispatches events, this would be extraneously
logged for every event received.
2026-02-11 19:36:30 -08:00
Skip R
c80fba31d6
handlediscord: bridge typing
2026-02-11 19:36:22 -08:00
Skip R
aba6f5aafc
dbmeta: merge incoming metadata
...
By not implementing MetaMerger, UserLogin metadata such as
BridgedGuildIDs would get clobbered upon reauthing because the metadata
was replaced entirely. Implement CopyFrom so we can gain deeper control
over what is preserved upon reauth. Notably, preserve BridgedGuildIDs so
we can't get into a weird state where a guild is bridged but
simultaneously absent from BridgedGuildIDs, which would cause us to not
subscribe (OP 14) to it properly.
2026-02-11 19:33:46 -08:00
Skip R
6407a3e3e0
connector: set up provisioning in Start instead of Init
...
Doing it in Init happens to work for local bridges, but not when
connecting to a remote Matrix homeserver.
2026-02-11 19:23:33 -08:00
Skip R
40ae884e7f
connector/client: refactor guild subscription, push log onto context
2026-02-11 19:23:19 -08:00
Skip R
07ba87f9d6
handlediscord: bridge guild delete
2026-02-11 17:42:25 -08:00
Skip R
82aab381ab
handlediscord: bridge message edits
2026-02-09 18:04:23 -08:00
Skip R
c8561de9c4
connector: panic with a more useful message when creating nil sender
2026-02-09 15:05:07 -08:00
Skip R
9013e01b49
handlediscord: bridge message deletes
2026-02-09 15:04:47 -08:00