Commit graph

195 commits

Author SHA1 Message Date
Timo Kösters
5e924227b6
feat: add threadpool for iterator threads, bug fixes, tracing_flame support 2021-07-29 08:49:28 +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
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
Jonathan de Jong
952fb75795 add shutdown handler to kick sync 2021-07-14 14:50:07 +02:00
Jonathan de Jong
9d4fa9a220 Sqlite 2021-07-14 07:07:08 +00:00
Timo Kösters
67f9592b17
feat: /event_auth 2021-06-14 11:36:40 +02:00
Timo Kösters
3c9ea55938
feat: /state 2021-06-14 11:01:12 +02:00
Timo Kösters
d0ee823254
feat: swappable database backend 2021-06-09 22:21:52 +02:00
Timo Kösters
5b5cc0574e
feat: implement /claim, handle to-device events 2021-05-28 13:46:15 +02:00
Timo Kösters
57ecd81534
fix: logs for ruma crate 2021-05-24 13:22:30 +02:00
Timo Kösters
09157b2096
improvement: federation get_keys and optimize signingkey storage
- get encryption keys over federation
- optimize signing key storage
- rate limit parsing of bad events
- rate limit signature fetching
- dependency bumps
2021-05-21 13:25:24 +02:00
Timo Kösters
24793891e0
feat: implement GET /presence 2021-05-14 11:05:41 +02:00
Timo Kösters
37b4a1cd0d Merge branch 'dbg_clippy' into 'master'
Add dbg_macro check

See merge request famedly/conduit!75
2021-05-12 18:44:01 +00:00
Timo Kösters
f62258ba35
improvement: bug fixes and refactors
- power level content override adds to the default event instead of
replacing it
- sending code refactored to make edus possible
- remove presence events when restarting conduit
- remove room_id field from read receipts over /sync
- handle incoming read receipts
- fix array bounds bug in server_server.rs
2021-05-12 20:15:24 +02:00
Jonathan de Jong
268ad3441c add dbg_macro check 2021-05-05 16:14:49 +00:00
Jonas Platte
c2b72773d5
Fix clippy warning 2021-04-26 19:02:32 +02:00
Timo Kösters
2fc1ec2ad5
fix: logging 2021-04-24 13:34:35 +02:00
Timo Kösters
23f81bfaf7
chore: update dependencies 2021-04-24 12:18:19 +02:00
Timo Kösters
71ed1b295a
feat: /devices route 2021-04-21 10:51:56 +02:00
Timo Kösters
eedac4fd96
feat: make_join, send_join and /directory 2021-04-16 18:18:29 +02:00
Timo Kösters
abddfc2d2a
Merge remote-tracking branch 'famedly/master' into develop 2021-04-14 10:26:28 +02:00
Timo Kösters
8773e5013d
feat: incoming invites over federation 2021-04-11 21:04:31 +02:00
Timo Kösters
f3f95a73d0
improvement: /event route 2021-04-07 15:57:23 +02:00
Jonas Platte
fe744c856f
Upgrade ruma
… and refactor push rule code along the way.
2021-04-06 17:38:53 +02:00
Timo Kösters
e305889b72
feat: room_account_data endpoints 2021-03-24 08:48:28 +01:00
Timo Kösters
1d00a8c41f
improvement: better logging
Use CONDUIT_LOG or the log setting in the config
2021-03-23 22:06:09 +01:00
Timo Kösters
f775c76d8a
chore: get rid of warnings 2021-03-18 18:33:43 +01:00
Timo Kösters
a77fcd106e
feat: implement /state_ids and fix federation stuff 2021-03-18 00:11:13 +01:00
Timo Kösters
21f785d530
Merge branch 'correct-sendtxn' into pushers 2021-03-15 09:56:04 +01:00
Timo Kösters
6da40225bb
improvement: make state res actually work 2021-03-13 16:30:12 +01:00
Rudi Floren
6309506a48 Allow suspicious_else_formatting
This is probably unfixable because it is caused by macros
2021-03-04 15:26:34 +01:00
Devin Ragotzy
0d55964d24 Run nightly cargo fmt 2021-03-04 08:45:23 -05:00
Devin Ragotzy
d0df8b495c Merge remote-tracking branch 'upstream/master' into correct-sendtxn 2021-03-04 08:39:16 -05:00
Timo Kösters
4155a47db1
feat: opentelemetry/jaeger support 2021-03-02 15:08:54 +01:00
Timo Kösters
dd68031b69
improvement: implement /receipt 2021-03-02 14:33:35 +01:00
Devin Ragotzy
0cc6448dbe Temp disable rust_2018_idioms for CI 2021-02-23 17:21:01 -05:00
Devin Ragotzy
4cf530c55b Abstract event validation/fetching, add outlier and signing key DB trees
Fixed the miss named commented out keys in conduit-example.toml.
2021-02-09 15:24:09 -05:00
Devin Ragotzy
4a92a29b56 State resolution outline for /send 2021-02-09 15:18:47 -05:00
Timo Kösters
6924dfc8ea
improvement: better appservice compatibility and optimizations 2021-02-06 15:28:30 +01:00
Devin Ragotzy
a0ecd76e21 Run cargo fmt using nightly 2021-01-29 21:48:09 -05:00
Timo Kösters
265fab843a
feature: push rule settings 2021-01-28 20:47:19 +01:00
Timo Kösters
a119d858f3
feature: push rule settings 2021-01-24 16:07:49 +01:00
Devin Ragotzy
a897608025 Roll back tokio and rocket update since ruma's request is at 0.2 tokio 2021-01-18 19:59:08 -05:00
Devin Ragotzy
00436a32b0 Update ruma and rocket to latest git rev and tokio to 1.0
Ruma updated the event signing validation code and there was a dep
resolving failure with serde rocket and tokio so I updated rocket latest and
tokio 1.0 to fix.
2021-01-18 19:36:44 -05:00
Devin Ragotzy
851eb555b6 Abstract event validation/fetching, add outlier and signing key DB trees
Fixed the miss named commented out keys in conduit-example.toml.
2021-01-14 21:32:22 -05:00
Devin Ragotzy
690c066064
State resolution outline for /send 2021-01-14 14:28:32 +01:00
Timo Kösters
edfd3c1f34
improvement: better config, better logs 2020-12-31 21:07:55 +01:00
Timo Kösters
6606e41dde
feat: improved state store 2020-12-20 13:34:11 +01:00
Timo Kösters
6e5b35ea92
feat: implement appservices
this also reverts some stateres changes
2020-12-08 12:59:20 +01:00
Timo Kösters
d62f17a91a
improvement: cache actual destination 2020-12-06 11:05:51 +01:00
Timo Kösters
45086b54b3
improvement: upgrade dependencies, fix timeline reload bug 2020-12-05 21:04:34 +01:00
Timo Kösters
9439f2c183
feat: send logs into admin room
Log entries will automatically be deduplicated, so a message won't be
sent if the same line has already been sent in the last 30 mins
2020-12-05 17:34:58 +01:00
Timo Kösters
bcd1fe1856
feat: admin room 2020-10-07 11:51:49 +02:00
Timo Kösters
0d6159c2da
improvement: get_missing_events route and cleanup 2020-10-01 20:49:15 +02:00
Timo Kösters
ea3aaa6b5c
improvement: more efficient /sync with gaps 2020-09-18 10:29:43 +02:00
Timo Kösters
005e00e9b1
fix: remove well-known 2020-09-15 17:16:55 +02:00
Timo Kösters
b7ab57897b
fix: sending slowness 2020-09-15 16:14:59 +02:00
Faelar
df55e8ed0b
Add room upgrade. 2020-08-31 12:01:41 +02:00
Timo Kösters
3f4cb753ee
improvement: add remaining key backup endpoints 2020-08-27 14:52:20 +02:00
timokoesters
e457e19088
feat: search pdus 2020-08-23 16:14:08 +02:00
Timo
3ff17f69ad
fmt 2020-08-23 16:14:07 +02:00
Timo
4be68eba76
feat: allow querying conduit's room list over federation 2020-08-23 16:14:07 +02:00
Timo
04eee089e0
feat: first steps towards joining rooms over federation 2020-08-23 16:14:06 +02:00
timokoesters
f40f1d9f75
docs: endpoint documentation 2020-08-23 16:14:06 +02:00
Jonas Platte
75ea0b3163
Update ruma 2020-08-12 23:42:17 +02:00
timokoesters
c1c62b7eb4
refactor: put endpoints into modules 2020-07-30 18:34:03 +02:00
timokoesters
66bc25fcd3
feat: implement /keys/changes 2020-07-29 18:05:16 +02:00
timokoesters
dd3dab39ae
feat: whoami route 2020-07-29 12:59:40 +02:00
timokoesters
489cbc0a93
refactor: use <_> instead of <_parameter_name> 2020-07-29 12:59:36 +02:00
Devin Ragotzy
42e0102a2a
Conditionally emit rocket::http_verb attr macros if lib/bin 2020-07-27 18:54:43 +02:00
CapsizeGlimmer
4d4969862a
Implement /rooms/<room_id>/joined_members 2020-07-27 18:21:06 +02:00
gnieto
5a8705bd25 Add room tags (#140)
Merge branch 'master' into task/add-tags

Add room tagging support

Co-authored-by: Timo Kösters <timo@koesters.xyz>
Co-authored-by: Guillem Nieto <gnieto.talo@gmail.com>
Reviewed-on: https://git.koesters.xyz/timo/conduit/pulls/140
Reviewed-by: Timo Kösters <timo@koesters.xyz>
2020-07-26 22:33:20 +02:00
aura
630196f0a3 Implement get_joined_rooms (#155)
whitelist /joined_rooms in sytest

Signed-off-by: Aurabindo Pillai <mail@aurabindo.in>

style: fmt

feat: implement /joined_rooms (#78)

Signed-off-by: Aurabindo Pillai <mail@aurabindo.in>

Co-authored-by: Aurabindo Pillai <mail@aurabindo.in>
Co-authored-by: timokoesters <timo@koesters.xyz>
Reviewed-on: https://git.koesters.xyz/timo/conduit/pulls/155
Reviewed-by: Timo Kösters <timo@koesters.xyz>
2020-07-25 18:35:22 +02:00
timokoesters
d8e1248df6
improvement: switch to stable rust 2020-07-22 22:42:01 +02:00
the0
469071e105 feat: implement /event (#144)
Merge branch 'master' into event-route

Event: Implement /event

Co-authored-by: the0 <theo@localhost>
Reviewed-on: https://git.koesters.xyz/timo/conduit/pulls/144
Reviewed-by: Timo Kösters <timo@koesters.xyz>
2020-07-11 14:08:37 +02:00
CapsizeGlimmer
76aa44ead3 Add logout/all route to main 2020-07-05 15:35:03 -04:00
the0
b81939841b feat: account deactivation (#137)
Deactivation: swap unwrap_or(false) to .ok()?

feat: implement deactivate account route

Implement error code on login to deactivated account

Deactivation: Changes requested

Add missing .clone()

Deactivation: Requested changes

Remove unneeded .filter()

Deactivation: badly named signature leads to confusion

Co-authored-by: the0 <theo@localhost>
Reviewed-on: https://git.koesters.xyz/timo/conduit/pulls/137
Reviewed-by: Timo Kösters <timo@koesters.xyz>
2020-07-05 07:48:19 +02:00
the0
67a1f21f5d feat: implement password changing (#138)
Password: Fixes

Password: Implement logging out all devices except current

Password: Implement password changing

Co-authored-by: the0 <theo@localhost>
Reviewed-on: https://git.koesters.xyz/timo/conduit/pulls/138
Reviewed-by: Timo Kösters <timo@koesters.xyz>
2020-07-02 20:38:25 +02:00
timokoesters
a49a572d76
feat: cross-signing 2020-06-26 15:16:15 +02:00
timokoesters
02fe030b2a
improvement: better default push rules 2020-06-16 23:25:14 +02:00
timokoesters
db685e0cf7
fix: update rocket version 2020-06-16 13:53:15 +02:00
timokoesters
2368a90584
refactor: better error handling 2020-06-11 13:14:35 +02:00
timokoesters
b7f7a39973
feat: kick,ban,unban user route 2020-06-04 16:51:36 +02:00
timokoesters
a8df1acdfd
feat: load replies, forward pagination 2020-06-04 13:58:55 +02:00
timokoesters
8328eeb5ac
Make sytest not fail 2020-06-04 09:53:26 +02:00
gnieto
ed9b544ace Implement devices API (#20)
small improvements

Cargo fmt

Simplify insert and update methods

Review feedback

Remove has_device method calls

Load all devices with a single db call

Remove device as in logout

Put all metadata on the same tree

Create userdevice key fucntion

Implement devices API

Implement all the devices endpoints. There's a couple of pending tasks:

- Integrate the "logout" logic once it lands to master (this should
  remove the given device from the database).
- Track and store last seen timestamp and IP.

Co-authored-by: timokoesters <timo@koesters.xyz>
Co-authored-by: Guillem Nieto <gnieto.talo@gmail.com>
2020-06-03 13:41:30 +02:00
timokoesters
4e507ef706
feat: room visibility and aliases 2020-05-31 09:46:11 +02:00
josias
b106d1393b Add logout route and database methods (#21)
Condense keys

Move remove methods to remove_device

Code cleanup

Add method for removing todevice events

Remove unnecessary existence checks

Add logout route and database methods

Co-authored-by: Josias <justjosias@tutanota.com>
2020-05-24 22:10:09 +02:00
timokoesters
61f4f2c716
improvement: implement GET publicRooms 2020-05-19 16:28:03 +02:00
timokoesters
821c608c6a
feat: media 2020-05-18 22:50:42 +02:00
timokoesters
56dd6cb16f
improvement: get state 2020-05-18 09:22:58 +02:00
timokoesters
7fc71b3968
feat: end to end encryption 2020-05-17 19:56:40 +02:00
timokoesters
4fb79ebb4c
chore: update dependencies 2020-05-14 13:56:29 +02:00
Rudi Floren
00a9424719
feat: sytests 2020-05-11 14:44:23 +02:00
timokoesters
8e041f90dd
refactor: make cargo clippy happier 2020-05-11 12:34:48 +02:00
timokoesters
8f67c01efd
refactor: split database into multiple files, more error handling, cleaner code 2020-05-03 21:44:48 +02:00
Marcel
4bc7712ee4 [ClientServer] Add /_matrix/client/r0/register/available endpoint
Took 1 hour 25 minutes
2020-05-01 23:17:25 +02:00
timokoesters
b02c568941
feat: notifications, simple permission systems 2020-05-01 20:28:13 +02:00
timokoesters
1cdf30f38c
Add hostname to Rocket.toml config 2020-04-29 10:27:40 +02:00