Timo Kösters
6da40225bb
improvement: make state res actually work
2021-03-13 16:30:12 +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
Devin Ragotzy
79c9de98cd
Add trusted_servers, filter servers to query keys by trusted_servers
2021-03-01 09:17:53 -05:00
Devin Ragotzy
48601142f8
Use auth_cache to avoid db, save state for every event when joining
2021-02-23 17:21:01 -05:00
Devin Ragotzy
74d530ae0e
Address review issues, fix forward extremity calc
...
Keep track of all prev_events since if we know that an event is a
prev_event it is referenced and does not qualify as a forward extremity.
2021-02-23 17:21:01 -05:00
Devin Ragotzy
64374b4679
Use eventId when saving outliers
2021-02-23 17:21:01 -05:00
Devin Ragotzy
6661de50ab
Fix and integrate outlier tree, build forks after adding event to DB
2021-02-23 17:21:01 -05:00
Devin Ragotzy
6fd3e1d1dd
Append state event that pass resolution to DB, update to tokio 1.1
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
Timo Kösters
d49911c5e0
Add 'm.login.token' authentication
2021-02-07 17:38:45 +01:00
Timo Kösters
ea1e4625d1
fix: default config options
2021-02-07 13:20:00 +01:00
Timo Kösters
6924dfc8ea
improvement: better appservice compatibility and optimizations
2021-02-06 15:28:30 +01:00
Devin Ragotzy
2d69e81699
WIP: send out push notification, impl pusher routes
...
It seems in order to test this I may also have to impl the email 3pid
route? I need to call the set_pusher route somehow.
2021-01-29 21:48:09 -05:00
Devin Ragotzy
56b816a2be
Fix and integrate outlier tree, build forks after adding event to DB
2021-01-29 21:45:33 -05:00
Devin Ragotzy
cd0c5c0566
Append state event that pass resolution to DB, update to tokio 1.1
2021-01-29 11:20:33 -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
Timo Kösters
b4818716b8
improvement: better deploy guide
2021-01-01 22:21:05 +01:00
Timo Kösters
85364a9c27
improvement: change federation_enabled to federation_disabled
...
This enables federation by default
2021-01-01 10:52:43 +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
6e36081573
improvement: more logging
2020-12-05 17:35:00 +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
9f8cffcd22
Admin room improvements
2020-11-09 12:21:57 +01:00
Timo Kösters
2f5df4aac9
improvement: more reliable federation sending
2020-10-27 20:26:27 +01:00
Timo Kösters
6b3934e31d
feat: configurable cache capacity
2020-10-23 14:38:12 +02:00
Timo Kösters
6dbe195695
improvement: flush after every request that manipulates the db
2020-10-23 14:38:07 +02:00
Timo Kösters
b7ab57897b
fix: sending slowness
2020-09-15 16:14:59 +02:00
Timo Kösters
f7816b11de
feat: send messages over federation
2020-09-15 08:17:06 +02:00
Timo Kösters
e6b1f54857
Merge remote-tracking branch 'origin/master' into federation
2020-09-12 22:23:54 +02:00
Timo Kösters
12a8c9badd
fix: join rooms over federation
2020-09-12 21:30:07 +02:00
Faelar
df55e8ed0b
Add room upgrade.
2020-08-31 12:01:41 +02:00
Timo
4954df3cc3
feat: handle txn ids
2020-08-25 21:33:44 +02:00
Timo
33215d6099
fix: send notification count updates when private read receipts change
2020-08-24 10:46:20 +02:00
Devin Ragotzy
d73c6aa8ad
Add roomid_statehash tree, clean up review issues
2020-08-23 16:43:21 -04:00
Devin Ragotzy
c4f5a0a631
Keep track of State at event for state resolution
...
feat: first steps towards joining rooms over federation
Add state-res as a dependency of conduit
Add reverse_topological_power_sort before append_pdu
Implement statehashstatid_pduid tree for keeping track of state
Clean up implementation of state_hash as key for tracking state
2020-08-23 16:43:21 -04:00
Timo
804d097a18
fix: wake up /sync for typing events
2020-08-23 16:14:10 +02:00
timokoesters
e457e19088
feat: search pdus
2020-08-23 16:14:08 +02:00
timokoesters
ce460ea159
fix: send device list updates when user is in no rooms
2020-07-30 14:09:05 +02:00
timokoesters
b67372b11b
refactor: make all mods in database pub
...
Now they can easily export their own structs
2020-07-29 21:48:31 +02:00
Devin Ragotzy
d948f896c0
Turn append_pdu args into struct PduBuilder
2020-07-29 21:47:09 +02:00
Devin Ragotzy
1c6f211933
Create media::FileMeta to represent a file and meta data
2020-07-29 21:33:48 +02:00
timokoesters
e0d0fb4703
fix: only send device_one_time_keys_count when there are updates
2020-07-29 20:44:06 +02:00
timokoesters
d891bbb5dc
improve: presence
2020-07-29 13:05:38 +02:00
timokoesters
489cbc0a93
refactor: use <_> instead of <_parameter_name>
2020-07-29 12:59:36 +02:00
timokoesters
a49a572d76
feat: cross-signing
2020-06-26 15:16:15 +02:00
timokoesters
2368a90584
refactor: better error handling
2020-06-11 13:14:35 +02:00
timokoesters
0067f49d52
feat: close registration with ROCKET_REGISTRATION_DISABLED=true
2020-06-08 11:39:32 +02:00
timokoesters
c85d363d71
feat: user interactive authentication
2020-06-08 11:39:30 +02:00
timokoesters
d404f902bf
fix: send presence too often
2020-06-04 22:36:48 +02:00
timokoesters
168f2281fd
improvement: bundle typing events and only send on changes
...
Fixes #67 and #49
2020-06-04 11:17:36 +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
timokoesters
821c608c6a
feat: media
2020-05-18 22:50:42 +02:00
timokoesters
42ae433b25
fix: send devicekeyupdate users in /sync
2020-05-18 12:46:06 +02:00
timokoesters
7fc71b3968
feat: end to end encryption
2020-05-17 19:56:40 +02:00
Rudi Floren
00a9424719
feat: sytests
2020-05-11 14:44:23 +02:00
timokoesters
1dbde0e1c1
improvement: add option to get device id from token
2020-05-10 18:30:12 +02:00
timokoesters
ee0d6940bd
feat: presence updates
2020-05-09 21:47:09 +02:00
timokoesters
551308e9a8
Update dependencies and send displayname updates again
2020-05-08 21:13:52 +02:00
timokoesters
8f67c01efd
refactor: split database into multiple files, more error handling, cleaner code
2020-05-03 21:44:48 +02:00
timokoesters
b02c568941
feat: notifications, simple permission systems
2020-05-01 20:28:13 +02:00
timokoesters
169dbe6c37
fix: send full state after joining a room
2020-04-29 12:19:09 +02:00
timokoesters
b0d9ccdb2d
Signing, basis for federation
2020-04-29 10:27:38 +02:00
timokoesters
80ddf80f17
work
2020-04-29 10:27:31 +02:00
timokoesters
abcce95dd8
feat: invites, better public room dir, user search
2020-04-14 13:59:25 +02:00
timokoesters
3debb6203c
feat: handle typing events
2020-04-12 21:12:50 +02:00
timokoesters
3b9cadeec2
feat: read receipts
2020-04-11 23:57:56 +02:00
timokoesters
ab8c2f1e5e
Rename pduid_pdus to pduid_pdu
2020-04-11 09:35:06 +02:00
timokoesters
040296c711
Add test support and impl dummy /read_markers
2020-04-10 13:36:57 +02:00
timo
3f2bf208a9
Merge pull request 'Add displayname and avatar_url endpoints' ( #5 ) from MTRNord/matrixserver:accountdata into master
2020-04-09 21:26:57 +02:00
Marcel
49fe5e3271
Rename userid_avatar_url to userid_avatarurl and fix debug print
...
Run cargo fmt
Took 5 minutes
2020-04-09 21:01:39 +02:00
Marcel
b1284fd509
Replace profile_* with userid_*
...
Add a missing dot in the errormessage
Require mxc:// to be present at the start of an avatar_url
Update mxc check TODO
Show displayname or avatar_url if either is available when getting the profile Endpoint
Return the correct data in case of a empty displayname or an empty avatar_url
Took 50 minutes
Took 34 seconds
2020-04-09 20:53:27 +02:00
timokoesters
cd55220a75
fix: room directory duplicates
2020-04-09 19:39:06 +02:00
Marcel
062c5521f0
Add displayname and avatar_url endpoints
...
Add PUT and GET /_matrix/client/r0/profile/{userId}/displayname Endpoint
Add PUT and GET /_matrix/client/r0/profile/{userId}/avatar_url Endpoint
Add GET /_matrix/client/r0/profile/{userId} Endpoint
Took 2 hours 16 minutes
2020-04-09 18:49:27 +02:00
timokoesters
10bb96fcf7
feat: room joining, room based /sync responses
2020-04-06 13:52:46 +02:00
timokoesters
fa3226898c
feat: save pdus
...
PDUs are saved in a pduid -> pdus map. roomid -> pduleaves keeps track
of the leaves of the event graph and eventid -> pduid maps event ids to
pdus.
2020-04-03 17:58:38 +02:00
timokoesters
dba6c46667
Use sled::Tree::prefix_search for deviceids
2020-03-30 13:46:18 +02:00