Commit graph

869 commits

Author SHA1 Message Date
Jason Volk
25727c162f split admin-room branch from build_and_append_pdu (fixes large stack warning)
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:09:22 +00:00
Jason Volk
bd8b17ef45 use loop condition to account for loole channel close
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:09:22 +00:00
Jason Volk
88ca855215 fix unnecessary re-serializations
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:09:22 +00:00
strawberry
a05b4c355a mark the server user bot as online/offline on shutdown/startup
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-21 22:08:33 +00:00
Jason Volk
61bb4b4fd9 fix aliasid_alias key deserialization
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:08:33 +00:00
Jason Volk
a693b60092 fix trait-solver issue requiring recursion_limit increase
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:08:33 +00:00
Jason Volk
5a27a843ce fix get_all_media_keys deserialization
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:08:33 +00:00
strawberry
aebdf3839a miniscule spaces code optimisations
still terrible though

Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-21 22:08:33 +00:00
strawberry
3940d8372f fix room directory regression
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-21 22:08:33 +00:00
strawberry
16ef0594a8 fix: dont add remote users for push targets, use hashset instead of vec
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-21 22:08:33 +00:00
strawberry
2c2cdd9448 update last_seen_ip and last_seen_ts on updating device metadata
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-21 22:08:33 +00:00
strawberry
c7888160b8 improve UX of admin media deletion commands, ignore errors by default, support deleting local media too
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-21 22:08:33 +00:00
strawberry
f89c22376f add missing feat_sha256_media to fresh database creations
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-21 22:08:33 +00:00
strawberry
3e65ae1cbe add back server name to error sending PDU to remote server
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-21 22:08:33 +00:00
strawberry
4323283f1e add support for reading a registration token from a file
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-21 22:08:33 +00:00
strawberry
a90bb7b0e4 use ok_or_else for a rare error
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-21 22:08:33 +00:00
strawberry
899bf128d3 dont send read receipts and typing indicators from ignored users
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-21 22:08:33 +00:00
strawberry
064b786d0e send EDUs to appservices if in events
to_device is not supported yet

Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-21 22:08:33 +00:00
strawberry
52d87bbb88 tiny micro-optimisations in some config stuff
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-21 22:08:33 +00:00
strawberry
8dc1d9f48d support reading TURN secret from a file (turn_secret_file)
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-21 22:08:33 +00:00
Jason Volk
216a12be4a optimize auth_chain short_id to event_id translation step
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:07:37 +00:00
Jason Volk
ed476069df refactor multi-get to handle result type
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:07:37 +00:00
Jason Volk
739b7fa719 various cleanup tweaks/fixes
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:07:37 +00:00
Jason Volk
96d0211e94 add rocksdb secondary; fix read_only mode.
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:07:37 +00:00
Jason Volk
32e50326aa additional stream tools
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:07:37 +00:00
Jason Volk
d856162ee5 merge rooms/short Data w/ Service; optimize queries
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:07:37 +00:00
Jason Volk
d64b44e61c split remaining map suites
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:07:37 +00:00
strawberry
6327f7dd01 add missing await to first admin room creation
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-21 22:07:37 +00:00
Jason Volk
478a68d4e6 minor auth_chain optimizations/cleanup
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:07:37 +00:00
Jason Volk
8528234d8e handle serde_json for deserialized()
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:07:37 +00:00
Jason Volk
a0b28aa602 Database Refactor
combine service/users data w/ mod unit

split sliding sync related out of service/users

instrument database entry points

remove increment crap from database interface

de-wrap all database get() calls

de-wrap all database insert() calls

de-wrap all database remove() calls

refactor database interface for async streaming

add query key serializer for database

implement Debug for result handle

add query deserializer for database

add deserialization trait for option handle

start a stream utils suite

de-wrap/asyncify/type-query count_one_time_keys()

de-wrap/asyncify users count

add admin query users command suite

de-wrap/asyncify users exists

de-wrap/partially asyncify user filter related

asyncify/de-wrap users device/keys related

asyncify/de-wrap user auth/misc related

asyncify/de-wrap users blurhash

asyncify/de-wrap account_data get; merge Data into Service

partial asyncify/de-wrap uiaa; merge Data into Service

partially asyncify/de-wrap transaction_ids get; merge Data into Service

partially asyncify/de-wrap key_backups; merge Data into Service

asyncify/de-wrap pusher service getters; merge Data into Service

asyncify/de-wrap rooms alias getters/some iterators

asyncify/de-wrap rooms directory getters/iterator

partially asyncify/de-wrap rooms lazy-loading

partially asyncify/de-wrap rooms metadata

asyncify/dewrap rooms outlier

asyncify/dewrap rooms pdu_metadata

dewrap/partially asyncify rooms read receipt

de-wrap rooms search service

de-wrap/partially asyncify rooms user service

partial de-wrap rooms state_compressor

de-wrap rooms state_cache

de-wrap room state et al

de-wrap rooms timeline service

additional users device/keys related

de-wrap/asyncify sender

asyncify services

refactor database to TryFuture/TryStream

refactor services for TryFuture/TryStream

asyncify api handlers

additional asyncification for admin module

abstract stream related; support reverse streams

additional stream conversions

asyncify state-res related

Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:07:37 +00:00
Jason Volk
22adffc40e add expected! macro to checked math expression suite
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:07:37 +00:00
Jason Volk
ce4c7daf83 add str traits for split, between, unquote; consolidate tests
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:07:37 +00:00
Jason Volk
3a07c6a172 simplify service trait bounds and lifetimes
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-21 22:07:37 +00:00
strawberry
d75aebc373 implement generic K-V support for MSC4133, GET/PUT/DELETE
no PATCH still yet

Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-09-14 11:16:49 -04:00
morguldir
a41e63b40e Add back allow_check_for_updates
Signed-off-by: morguldir <morguldir@protonmail.com>
2024-09-12 22:51:31 -04:00
strawberry
cf9b72ce3f remove a few unnecessary muts
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-09-09 21:41:57 -04:00
strawberry
9de780b56c remove unnecessary displayname requirement on making user admin
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-09-09 21:10:56 -04:00
strawberry
f163ebf3bb implement MSC4133 only with MSC4175 for GET/PUT/DELETE
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-09-07 09:27:35 -04:00
strawberry
8849a100fd dont use HTML for initial welcome message
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-09-01 12:11:56 -04:00
Jason Volk
4bac9b33cc propagate config error for cidr range
Signed-off-by: Jason Volk <jason@zemos.net>
2024-09-01 11:15:55 +00:00
strawberry
60605e9579 remove unnecessary loop/allocations on CIDR range init
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-09-01 00:59:43 -04:00
Jason Volk
b45df5f7bd bump appservice requests to v1.7
Signed-off-by: Jason Volk <jason@zemos.net>
2024-08-31 09:55:26 +00:00
strawberry
bceed3c829 dont debug print startup admin command content body
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-08-30 15:01:54 -04:00
strawberry
119cc2eec0 fix typo with reqwest builder for disabling zstd
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-08-30 12:57:50 -04:00
morguldir
9fde835673
syncv3: read receipts extension (MSC3960) 2024-08-30 18:23:42 +02:00
morguldir
77c0c13a83
syncv3: support per room account data 2024-08-30 10:31:08 +02:00
morguldir
85400d15bc
syncv3: reset the connection after restarts 2024-08-24 06:57:31 +02:00
Jason Volk
a934a7f687 freeze remote media via legacy endpoints
Signed-off-by: Jason Volk <jason@zemos.net>
2024-08-30 08:24:52 +00:00
Jason Volk
ea2343850f add remote fetch suite for authenticated media
Signed-off-by: Jason Volk <jason@zemos.net>
2024-08-30 08:24:52 +00:00