Commit Graph

652 Commits (8c584887c93735e1035d59461c6c1d4b96c0d7d6)

Author SHA1 Message Date
Ahmed Charles 879aeafa9e Add support for a minimal `r0/account/3pid`. 2021-08-09 12:34:25 -07:00
Timo Kösters 260db9fcc7
improvement: try to load missing prev events 2021-08-09 21:05:41 +02:00
Timo Kösters 1cbc61c558 Merge branch 'badeventfix' into 'master'
fix: handle bad events in db better

See merge request famedly/conduit!148
2021-08-08 19:48:08 +00:00
Timo Kösters d2f406e0e8
fix: handle bad events in db better 2021-08-08 21:33:28 +02:00
Kurt Roeckx 989a20e99c Support creating rooms with a version 2021-08-07 16:25:21 +02:00
Timo Kösters 55a2ff025f
improvement: longer timeout, more descriptive errors 2021-08-04 22:55:03 +02:00
Timo Kösters df727688ef
remove rocksdb 2021-08-04 21:17:40 +02:00
Timo Kösters 902404d48d
improvement: save member count + sled fixes 2021-08-04 21:15:01 +02:00
Timo Kösters b813c34642
improvement: more auth chain caching 2021-08-04 18:30:56 +02:00
Timo Kösters ab7835dedb
fix: early return from state res 2021-08-04 15:19:50 +02:00
Timo Kösters 9bb4c3cd01
improvement: batched inserts for tokenids 2021-08-04 12:54:26 +02:00
Timo Kösters fce22362d4
improvement: better auth chain calculation 2021-08-03 19:18:41 +02:00
Timo Kösters 41ec7cf5d0
improvement: batch inserts for stateids 2021-08-03 16:14:07 +02:00
Timo Kösters 49ade0cfbd
improvement: allow batch inserts 2021-08-03 11:24:21 +02:00
Timo Kösters 0eeba86b32
fix: improve locks 2021-08-03 11:17:39 +02:00
Timo Kösters 6b06fc9707
fix: don't run push rules for users that don't exist 2021-08-03 10:24:20 +02:00
Timo Kösters bd63797213
improvement: make better use of sqlite connections 2021-08-03 10:24:14 +02:00
Timo Kösters 2c4f966d60
improvement: use sqlite properly 2021-08-01 16:59:52 +02:00
Timo Kösters dc85a8fafd
fix: migration and push edu bugs 2021-07-30 18:05:26 +02:00
Timo Kösters 5df6b8cd5f
improvement: better account data implementation 2021-07-30 16:08:24 +02:00
Timo Kösters 5c776e9ba7
feat: heed db backend (LMDB) 2021-07-29 23:11:53 +02:00
Timo Kösters c209775abd
fix: pdu without state bug 2021-07-29 12:33:44 +02:00
Timo Kösters 5e924227b6
feat: add threadpool for iterator threads, bug fixes, tracing_flame support 2021-07-29 08:49:28 +02:00
Timo Kösters e0072eff63 Merge branch 'v5' into 'master'
feat: support room version 5

See merge request famedly/conduit!138
2021-07-21 11:05:59 +00:00
Timo Kösters cae2b200cc Merge branch 'initial_state_keys' into 'master'
Implement From<AnyInitialStateEvent> on PduBuilder

Closes #116

See merge request famedly/conduit!136
2021-07-21 10:03:08 +00:00
Timo Kösters 918df9ca6d
feat: support room version 5 2021-07-21 11:59:56 +02:00
Kurt Roeckx 0d33cc4acd Implement getting room aliases
Signed-off-by: Kurt Roeckx <kurt@roeckx.be>
2021-07-21 10:56:22 +02:00
phesch 666e1d30a3 Implement From<AnyInitialStateEvent> on PduBuilder
The conversion between the two is now direct and thus shouldn't lose the state_keys.
2021-07-21 10:55:23 +02:00
Timo Kösters 1587f2cd52
fix: check events in timeline (not only state) for member changes 2021-07-21 09:39:54 +02:00
Timo Kösters f121978897
fix: state bug 2021-07-20 23:36:03 +02:00
Timo Kösters 80533bfab2
fix: improve code when skipping /state_ids 2021-07-20 22:06:42 +02:00
Timo Kösters 08a3326431
docs: Initial end-to-end encryption over federation support 2021-07-20 21:37:08 +02:00
Timo Kösters fe3b5d32a7
feat: send to-device events over federation 2021-07-20 21:17:15 +02:00
Timo Kösters e20f55970e
feat: call /query/profile over federation when local user asks 2021-07-20 19:49:47 +02:00
Timo Kösters 728e176a06
feat: /keys/query and /keys/claim over federation 2021-07-20 19:40:25 +02:00
Timo Kösters 68cc743f2a
fix: use get_auth_chain method more often 2021-07-20 18:45:21 +02:00
Timo Kösters 56e5d5e3d2
fix: add warning for strange bug 2021-07-20 18:38:17 +02:00
Timo Kösters f0ac7ed933
chore: update ruma again 2021-07-20 15:25:17 +02:00
Timo Kösters 0f8ecdc625
fix: state res fixes 2021-07-20 15:25:17 +02:00
Timo Kösters cfaa900e83
improvement: auth chain cache 2021-07-20 15:25:16 +02:00
Timo Kösters f5273f7eb1
improvement: upgrade ruma and implement blurhashes 2021-07-20 15:25:16 +02:00
Timo Kösters 0fcefa4125
fix: ruma 2021-07-20 15:25:16 +02:00
Timo Kösters d07762f596 Merge branch 'connection-cushion' into 'master'
Spillover connection cushion

See merge request famedly/conduit!133
2021-07-20 10:39:04 +00:00
Jonathan de Jong d253f9236a change fraction type 2021-07-20 11:01:35 +02:00
Jonathan de Jong ec44f3d568 change to f64 2021-07-20 10:47:36 +02:00
Jonathan de Jong e7a51c07d0 log change feedback 2021-07-19 17:17:10 +02:00
Jonathan de Jong 79bf7fc597 some logging shuffling 2021-07-19 16:46:59 +02:00
Jonathan de Jong 7e579f8d34 change to fraction-based approach 2021-07-19 16:25:41 +02:00
Jonathan de Jong 0f2dc9a239 add stuff and bits 2021-07-19 15:56:20 +02:00
Jonathan de Jong faa283d35b review feedback 2021-07-19 13:44:53 +02:00
Jonathan de Jong 3ce75d1f02 apply fix 2021-07-19 11:55:39 +02:00
Timo Kösters f924ebf8a6 Merge branch 'fix-windows-signal' into 'master'
fix signal compiling on windows

See merge request famedly/conduit!126
2021-07-15 16:29:47 +00:00
Jonathan de Jong b1993421c2 fix signal compiling on windows 2021-07-15 18:09:10 +02:00
Jonathan de Jong d76e95e8fc use existing db cache size 2021-07-15 13:47:21 +02:00
Jonathan de Jong 661101c9ae add sled cache_capacity back 2021-07-15 13:29:08 +02:00
Timo Kösters f7ecf83ac3 Merge branch 'stuff' into 'master'
fix: stuck/duplicate messages, e2ee and sync timeouts

See merge request famedly/conduit!123
2021-07-15 08:18:56 +00:00
Jonathan de Jong 952fb75795 add shutdown handler to kick sync 2021-07-14 14:50:07 +02:00
Timo Kösters e12b1ff863
improvement: locks 2021-07-14 13:21:25 +02:00
Timo Kösters e15e6d4405
improvement: efficient /sync, mutex for federation transactions 2021-07-14 13:20:39 +02:00
Timo Kösters 1c25492a7e
fix: stuck messages
Conduit did not send the event in /sync because of a race condition.
There is a brief moment in time where Conduit accepted the event, but
did not store it yet. So when the client /syncs it updates the since
token without sending the event. I hope I fixed it by significantly
shortening the race-condition period.
2021-07-14 13:19:24 +02:00
Timo Kösters 8c44312485
fix: e2ee verification 2021-07-14 13:10:56 +02:00
Timo Kösters ac0027756e
improvement: more efficient state res 2021-07-14 13:10:49 +02:00
Jonathan de Jong e1b89c1248 apply lint suggestions and version bump 2021-07-14 12:31:38 +02:00
Jonathan de Jong 15471d9ac4 update rocket and lock 2021-07-14 11:28:24 +02:00
Jonathan de Jong 9d4fa9a220 Sqlite 2021-07-14 07:07:08 +00:00
Kurt Roeckx dcb5e5900f Getting capabilities requires authentication 2021-07-11 22:07:10 +02:00
Timo Kösters 4732aa6782 Merge branch 'invalid_utf8' into 'master'
Return proper error in case of invalid UTF-8

See merge request famedly/conduit!110
2021-07-11 13:44:27 +00:00
Kurt Roeckx 699f77671f Return proper error in case of invalid UTF-8 in json_body
json_body is used in places that need authentication. In
case an unknown field is set, Ruma doesn't parse the field
and so doesn't give an error on invalid UTF-8. But Conduit
has parsed and on error makes json_body None. Return an
error to the client instead of generating an internal error.
2021-07-11 14:47:13 +02:00
Timo Kösters 13c0beafa6 Merge branch 'lib-fix' into 'master'
Export conduits Config struct and fix clippy warnings

See merge request famedly/conduit!99
2021-07-11 11:42:07 +00:00
Timo Kösters 5711467ad9 Merge branch 'state-res-closure' into 'master'
Remove auth_cache using a closure to fetch events in state-res

See merge request famedly/conduit!108
2021-07-02 10:56:21 +00:00
Aiden McClelland c53cc03ff8
address pr comments 2021-07-01 13:38:25 -06:00
Aiden McClelland f25f61d4a9
fix errors introduced by rebase 2021-07-01 12:48:12 -06:00
Aiden McClelland b2d5516058 add support for arbitrary proxies 2021-07-01 12:41:12 -06:00
Devin Ragotzy 1bb84a8e2d Fix docs for fetch_and_handle_events 2021-06-30 07:48:16 -04:00
Devin Ragotzy 98f1480e2b
Remove auth_cache using a closure to fetch events in state-res 2021-06-30 12:54:19 +02:00
Timo Kösters 05821d6fd5
improvement: pdu cache, /sync cache 2021-06-30 10:31:34 +02:00
Devin Ragotzy 09a8737f24 Export conduits Config struct and fix clipp warningsy 2021-06-29 16:02:12 -04:00
Timo Kösters dcac1361ec
improvement: /search works for multiple rooms 2021-06-21 15:21:00 +02:00
Timo Kösters fee7d3d2e3 Merge branch 'allow_appservice_registration' into 'master'
Always allow appservices to register new users

See merge request famedly/conduit!105
2021-06-21 10:15:48 +00:00
phesch 637d9d3b6f Always allow appservices to register new users 2021-06-19 16:12:05 +02:00
Jonas Platte 808741bcb6
Remove unnecessary Option-wrapping and successive unwrapping 2021-06-17 20:44:29 +02:00
Jonas Platte b291e76572
Use try operator for Option more 2021-06-17 20:37:07 +02:00
Jonas Platte f3e630c064
Fix lots of clippy lints 2021-06-17 20:34:14 +02:00
Jonas Platte af2ce5803e
Remove pointless double deserialization 2021-06-17 20:29:02 +02:00
Jonas Platte 7fa54e4411
Use Ruma-provided default power levels for shorter code 2021-06-17 20:14:37 +02:00
Jonas Platte f6046871f4
Upgrade Ruma 2021-06-17 20:12:36 +02:00
Timo Kösters 67f9592b17
feat: /event_auth 2021-06-14 11:36:40 +02:00
Timo Kösters 77a23f8969
improvement: filter our room directory
Fixes #35
2021-06-14 11:26:41 +02:00
Timo Kösters 3c9ea55938
feat: /state 2021-06-14 11:01:12 +02:00
Timo Kösters e8f6708927
improvement: show more users in our user directory 2021-06-12 18:40:33 +02:00
Timo Kösters cd4bc520d8
improvement: feature flags for sled, rocksdb 2021-06-12 15:13:04 +02:00
hamidreza kalbasi 2078af59d8
fix fmt problems 2021-06-09 22:22:05 +02:00
hamidreza kalbasi 2385bd1cfd
add migrations 2021-06-09 22:22:05 +02:00
hamidreza kalbasi affa124864
create media folder in init 2021-06-09 22:22:05 +02:00
hamidreza kalbasi ff841b73c5
use .keys() and remove unneccery .to_vec() 2021-06-09 22:22:04 +02:00
hamidreza kalbasi 804105479c
fix fmt and clippy warnings 2021-06-09 22:22:04 +02:00
hamidreza kalbasi 972caacdc2
put media in filesystem 2021-06-09 22:22:04 +02:00
Timo Kösters d0ee823254
feat: swappable database backend 2021-06-09 22:21:52 +02:00
Timo Kösters e1e529d818
fix: don't apply push rules for users of other homeservers 2021-05-30 22:01:12 +02:00
Timo Kösters 88cf043f94
fix: deactivate accounts that should be deactivated 2021-05-30 21:56:36 +02:00