1
0
Fork 0
mirror of https://gitlab.com/famedly/conduit.git synced 2025-10-15 19:42:07 +00:00
Commit graph

295 commits

Author SHA1 Message Date
Matthias Ahouansou
5b68ce890d
chore: bump ruma and axum 2025-06-22 18:27:11 +01:00
Matthias Ahouansou
b44b5641f0
chore(rust): upgrade to 1.85.0
required for axum 0.8.x
2025-06-22 14:19:30 +01:00
Matthias Ahouansou
09e1713c30
feat(devices): update the device last seen timestamp on usage 2025-06-06 13:49:07 +01:00
Curious
a1886a1396 Enhance admin commands parsing 2025-05-31 14:33:53 +00:00
Matthias Ahouansou
88c95d36a8
chore(crates): bump 2025-05-09 12:34:03 +01:00
Matthias Ahouansou
ec2c61e277
feat(sync): v4 -> v5 2025-05-08 23:02:25 +01:00
Matthias Ahouansou
a189b66ca6
feat(admin): show media command 2025-05-07 14:14:05 +01:00
Matthias Ahouansou
fd16e9c509
feat(admin): list & query information about media 2025-05-07 14:14:05 +01:00
Matthias Ahouansou
c3fb1b0456
feat(media): retention policies 2025-05-07 14:14:05 +01:00
Matthias Ahouansou
594fe5f98f
feat(media): blocking 2025-05-07 14:14:05 +01:00
Matthias Ahouansou
d76637048a
feat(admin): commands for purging media 2025-05-07 14:14:05 +01:00
Matthias Ahouansou
3171b779c6
feat(media): save user id of uploader 2025-05-06 20:44:03 +01:00
Matthias Ahouansou
19d0ea408c
feat(media): deep hashed directory structure 2025-05-06 20:44:02 +01:00
Matthias Ahouansou
66a14ac802
feat: freeze unauthenticated media 2025-05-06 20:44:02 +01:00
Matthias Ahouansou
70d7f77363
feat(media): use file's sha256 for on-disk name & make directory configurable
In addition, metadata about the file, such as creation time, last access, and
file size, are stored in the database
2025-05-06 20:44:02 +01:00
Matthias Ahouansou
937521fcf1
refactor: allow for post-processing on the config 2025-03-24 12:29:05 +00:00
Matthias Ahouansou
2dce87546a
ci: check for typos 2025-03-24 03:01:57 +00:00
Matthias Ahouansou
d0607b6459
chore(ruma): bump 2025-03-15 00:30:12 +00:00
Matthias Ahouansou
4dc15a4605
refactor: set send_request matrix versions in a single constant 2025-03-08 13:29:12 +00:00
Matthias Ahouansou
21af83ea72
feat: knocking
You may notice that we do no database migration for populating the state cache for knocking.
This is because that in all the places where we use the state cache, it doesn't make a difference:
- For local users, the clients wouldn't have been able to knock on rooms, as the `/knock`
  endpoint wasn't implemented yet, and I am not aware of any client which tries to knock over
  `/state`, as it would fail if the server is not currently in the room
- It is not used for remote users
2025-03-03 18:07:21 +00:00
Matthias Ahouansou
f4d90e9989
refactor: move duplicate code and some other small optimizations 2025-03-03 16:25:43 +00:00
Matthias Ahouansou
4942cc8e55
refactor: remove unecessery async 2025-02-25 14:08:57 +00:00
Matthias Ahouansou
2a7aa6242f
chore: upgrade ruma 2025-02-24 23:56:12 +00:00
Matthias Ahouansou
e20dd1469a Merge branch 'error-parse-image-thumbnail' into 'next'
fix(media): return an error when content is failed to be parsed as an image

See merge request famedly/conduit!734
2025-02-04 16:37:26 +00:00
Matthias Ahouansou
30855cef81
fix(media): return an error when content is failed to be parsed as an image 2025-02-04 16:21:14 +00:00
Matthias Ahouansou
7963a9d23f Merge branch 'turn-config' into 'next'
feat(turn): move config to table & error when no config is set

See merge request famedly/conduit!733
2025-02-04 15:43:14 +00:00
Matthias Ahouansou
dbc1daaefb
feat(turn): move config to table & error when no config is set 2025-02-04 14:37:30 +00:00
Matthias Ahouansou
56a51360e0
feat(spaces): hierarchy over federation
fix(spaces): deal with hierarchy recursion
fix(spaces): properly handle max_depth
refactor(spaces): token scheme to prevent clients from modifying max_depth and suggested_only
perf(spaces): use tokens to skip to room to start populating results at
feat(spaces): request hierarchy from servers in via field of child event
2024-10-11 00:04:54 +01:00
avdb13
423b0928d5
use ruma content disposition type in place of string
Co-Authored-By: Matthias Ahouansou <matthias@ahouansou.cz>
2024-08-22 19:03:32 +01:00
Matthias Ahouansou
6455e918be
fix: don't always assume ruma can generate reference hashes 2024-07-07 21:40:56 +01:00
Matthias Ahouansou
1f313c6807 Merge branch 'finite-servername-cache' into 'next'
fix: don't cache server name lookups indefinitely

See merge request famedly/conduit!702
2024-07-01 09:52:18 +00:00
Matthias Ahouansou
e70d27af98 Merge branch 'timestamped-messaging' into 'next'
feat(appservice): support timestamped messaging

See merge request famedly/conduit!703
2024-07-01 09:36:14 +00:00
Matthias Ahouansou
ba8429cafe
fix: don't cache server name lookups indefinitely 2024-07-01 10:17:01 +01:00
Matthias Ahouansou
2f45a907f9
fix: don't ignore ACLs when there is no content
despite this being very bad behavior, it is required by the spec
2024-06-26 22:06:46 +01:00
Matthias Ahouansou
62f1da053f
feat(appservice): support timestamped messaging 2024-06-25 10:25:58 +01:00
Matthias Ahouansou
9014e43ce1
chore: bump rust to 1.79.0 and apply new lints 2024-06-21 08:29:33 +01:00
Matthias Ahouansou
fd19dda5cb
ci: use nightly rustfmt
we were using this before, but it broke when refactoring the flake out into separate files
2024-06-16 17:28:05 +01:00
Matthias Ahouansou
c453d45598
fix(keys): only use keys valid at the time of PDU or transaction, and actually refresh keys
Previously, we only fetched keys once, only requesting them again if we have any missing, allowing for ancient keys to be used to sign PDUs and transactions
Now we refresh keys that either have or are about to expire, preventing attacks that make use of leaked private keys of a homeserver
We also ensure that when validating PDUs or transactions, that they are valid at the origin_server_ts or time of us receiving the transaction respectfully
As to not break event authorization for old rooms, we need to keep old keys around
We move verify_keys which we no longer see in direct requests to the origin to old_verify_keys
We keep old_verify_keys indefinitely as mentioned above, as to not break event authorization (at least until a future MSC addresses this)
2024-06-12 19:41:43 +02:00
Matthias Ahouansou
144d548ef7
fix: permission checks for aliases 2024-06-12 19:41:31 +02:00
Benjamin Lee
7b259272ce
fix: do not return redacted events from search 2024-06-12 19:41:02 +02:00
Matthias Ahouansou
ba2a5a6115
chore: bump all dependencies 2024-06-11 20:35:56 +01:00
Matthias Ahouansou
b46000fadc
feat: recurse relationships 2024-06-03 13:42:52 +01:00
Matthias Ahouansou
19154a9f70
refactor: add server_user to globals 2024-05-31 21:56:11 +01:00
Matthias Ahouansou
6c2eb4c786
feat(admin): remove alias command 2024-05-29 17:49:51 +01:00
tony
6bcc2f80b8
add command to set the allow registration status
Co-Authored-By: Matthias Ahouansou <matthias@ahouansou.cz>
2024-05-29 09:25:08 +01:00
mikoto
a888c7cb16
OpenID routes
Co-Authored-By: Matthias Ahouansou <matthias@ahouansou.cz>
2024-05-28 15:39:19 +01:00
Matthias Ahouansou
8876d54d78
feat(admin): add hash-and-sign-event command 2024-05-05 17:35:02 +01:00
Matthias Ahouansou
256dae983b
chore: bump rust
and fix new lints that come with it
2024-05-05 13:27:56 +01:00
Matthias Ahouansou
9db1f5a13c
fix(admin): don't allow creation of remote users 2024-05-02 10:45:04 +01:00
Matthias Ahouansou
0074aca0ef Merge branch '244-support-well-known' into 'next'
feat: add .well-known support

Closes #244 and #378

See merge request famedly/conduit!332
2024-05-02 09:35:14 +00:00