Commit Graph

1258 Commits (9453dbc7408c2ad043c5801bd0f25edd2f1769b7)

Author SHA1 Message Date
Nyaaori 9efd9f06c6
refactor: prepare splitting src/service/rooms/state.rs to src/service/rooms/state/data.rs 2 years ago
Nyaaori d0cbe46ff0
refactor: prepare splitting src/service/rooms/state.rs to src/service/rooms/state/mod.rs 2 years ago
Timo Kösters 025b64befc
refactor: renames and split room.rs 2 years ago
Nyaaori 92e59f14e0
refactor: Preparation commit to split src/database/rooms.rs 2 years ago
Nyaaori 7989c7cdda
refactor: prepare splitting src/database/rooms.rs to src/service/rooms/timeline.rs 2 years ago
Nyaaori e22f5fef1f
refactor: prepare splitting src/database/rooms.rs to src/service/rooms/user.rs 2 years ago
Nyaaori 64a022a4d2
refactor: prepare splitting src/database/rooms.rs to src/service/rooms/state.rs 2 years ago
Nyaaori 751be39376
refactor: prepare splitting src/database/rooms.rs to src/service/rooms/state_cache.rs 2 years ago
Nyaaori d05b84d0f5
refactor: prepare splitting src/database/rooms.rs to src/service/rooms/state_compressor.rs 2 years ago
Nyaaori 54bf91b76e
refactor: prepare splitting src/database/rooms.rs to src/service/rooms/outlier.rs 2 years ago
Nyaaori 8ed79a00fd
refactor: prepare splitting src/database/rooms.rs to src/service/rooms/pdu_metadata.rs 2 years ago
Nyaaori 8dffdadfd3
refactor: prepare splitting src/database/rooms.rs to src/service/rooms/search.rs 2 years ago
Nyaaori 2dbfbd45a2
refactor: prepare splitting src/database/rooms.rs to src/service/rooms/short.rs 2 years ago
Nyaaori 249440115b
refactor: prepare splitting src/database/rooms.rs to src/service/rooms/lazy_loading.rs 2 years ago
Nyaaori baa8224cce
refactor: prepare splitting src/database/rooms.rs to src/service/rooms/metadata.rs 2 years ago
Nyaaori bd7b49b098
refactor: prepare splitting src/database/rooms.rs to src/service/rooms/mod.rs 2 years ago
Nyaaori 27e2f0d545
refactor: prepare splitting src/database/rooms.rs to src/service/rooms/alias.rs 2 years ago
Nyaaori 4dc14e1580
refactor: prepare splitting src/database/rooms.rs to src/service/rooms/directory.rs 2 years ago
Zeyphros 1c31f7905f
Update command comment to coincide with the default action 2 years ago
Zeyphros f6183e457d
Implement command to deactivate user from admin channel
Use `leave_room` in `leave_all_rooms`

WIP: Add command to delete a list of users
also implements a flag to prevent the user from being removed from their joined rooms.

Report user deactivation failure reason

Don't send leave events by default when mass deactivating user accounts

Don't stop leaving rooms if an error was encountered

WIP: Rename command, make flags consistent, don't deactivate admin accounts.
Accounts should be deactivated as fast as possible and removing users from joined groups is completed afterwards.

Fix admin safety logic, improve command output

Continue leaving rooms if a room_id is invalid

Ignore errors from leave_room

Add notice to the list-local-users command
Output form list-local-users can be used directly without modification with the deactivate-all command

Only get mutex lock for admin room when sending message
2 years ago
Dietrich 7bee9c1c69 Length of passwords consistently use the constant 2 years ago
Timo Kösters 0bc03e90a1
improvement: make more things async 2 years ago
Timo Kösters 9b898248c7
feat: more admin commands, better logging 2 years ago
Timo Kösters f8547ecba4 Merge branch 'create-user-command' into 'next'
added a command to the admin bot to create a new user, even with registration disabled

See merge request famedly/conduit!354
2 years ago
Timo Kösters 0286a804f4 Merge branch 'filter-users' into 'next'
Hide users from user directory if they are only in private rooms and they don't share a room

Closes #24

See merge request famedly/conduit!325
2 years ago
Radek Stępień 7239243163 Hide users from user directory if they are only in private rooms and they don't share a room 2 years ago
Timo Kösters 124471199c Merge branch 'registration-without-username' into 'next'
Allow registration without username

Closes #111

See merge request famedly/conduit!340
2 years ago
Radek Stępień 84ec057f6e Allow registration without username 2 years ago
Timo Kösters 84cb0667f3 Merge branch 'to_device-existing-txn-id' into 'next'
feat: if txn id exists in the db, skip the event

See merge request famedly/conduit!353
2 years ago
Jakub Kubík c3924b566b feat: if txn id exists in the db, skip the event 2 years ago
Jakub Doboš 8a63a2cc68 Fix FluffyChat Compatibility 2 years ago
Timo Kösters 39bc84d81c Merge branch 'fix_panic_on_long_message' into 'next'
Don't panic when signing event fails.

Closes #232

See merge request famedly/conduit!343
2 years ago
= bb033fe02a added a command to the admin bot to create a new user, even with registration disabled 2 years ago
Jan Christian Grünhage efe9d5000e enable FedDest doc-test
Doc rendering is exactly as before, but it now actually tests the code
2 years ago
Zeyphros 090d0fe684
Fix typo 2 years ago
Jakub Kubík 729d66aa11
feat: register missing add_backup_keys route 2 years ago
Zeyphros 07a3a6fa9a
Return an error when signing an event fails
Prevents the server from crashing/become unresponsive when overly long
messages are sent
2 years ago
Timo Kösters 00b362b43b
fix: cors warning 2 years ago
Timo Kösters b6b27b66c8
fix: don't allow unjoined users to send typing notifications 2 years ago
Timo Kösters 3573d40027
fix warnings 2 years ago
Timo Kösters e4600ccfef
bump ruma 2 years ago
Timo Kösters 0ae39807a4
Add V9 to list of allowed versions 2 years ago
Timo Kösters 686319e2e3
fix: error handling 2 years ago
Nyaaori d655f4c1be
Cleanup rooms.rs, globals.rs, and pdu.rs 2 years ago
Nyaaori 4b28146ee7
Support room version 3 2 years ago
Nyaaori d8a3b257f2
Enable room version 4 2 years ago
Nyaaori 714873694d
Refactor room version support, add default room version config 2 years ago
Timo Kösters d81216cad7
improvement: preparing for room version 9 2 years ago
Timo Kösters 9e29dc808f Merge branch '198-support-user-password-resets' into 'next'
feat: support user password resets

Closes #198

See merge request famedly/conduit!339
2 years ago
Jakub Kubík ada07de204 feat: support user password resets 2 years ago
Timo Kösters df4c38cb61
fix: remove warnings 2 years ago
Timo Kösters 2808dd2000
Ruma upgrade 2 years ago
Timo Kösters 17ad5f0595
fix: checks for incoming cross signing changes 2 years ago
Timo Kösters b8411ae2fd
refactor: rename endpoints to match ruma 2 years ago
Timo Kösters 566833111c
refactor: small improvements 2 years ago
chenyuqide ee96a03d60
Update ruma 2 years ago
chenyuqide 21bc099ccf
Update ruma 2 years ago
Timo Kösters 1ce03059a0 Merge branch 'next' into 'next'
Fix wrong associated type in OutgoingKind::Appservice

See merge request famedly/conduit!324
2 years ago
Timo Kösters 9ed352d4c0 Merge branch '199-fix-kick-ban-over-federation' into 'next'
fix: fix kick and ban events over federation

Closes #199

See merge request famedly/conduit!338
2 years ago
Jakub Kubík a08c667230
docs: add comments for clarification of recent changes 2 years ago
Jakub Kubík 414c7c40c4
fix: remove our server from the list of servers to send the event PDU to 2 years ago
Jakub Kubík 1712e63e06
fix: fix kick and ban events over federation
Fix the scenario where a MembershipState change event was not sent to the server of a user kicked/banned from a room on a Conduit instance if there were not any other users from that server in the room.
2 years ago
Andrej Kacian 9046223e7f Send PDU to appservice if state_key is their user ID
Fixes #110.
2 years ago
Timo Kösters 0066f20bdd Merge branch 'trailingslash' into 'next'
fix: allow trailing slashes for /state/<type>/ again

See merge request famedly/conduit!336
2 years ago
Timo Kösters a5465dfd3e
fix: allow trailing slashes for /state/<type>/ again 2 years ago
Timo Kösters 8086bee146 Merge branch 'show-config' into 'next'
Add show-config admin command

See merge request famedly/conduit!295
2 years ago
Timo Kösters b11a3b80bc Merge branch 'shutdown-msg' into 'next'
Log caught Ctrl+C or SIGTERM for operator feedback

See merge request famedly/conduit!319
2 years ago
Timo Kösters 554146f46e Merge branch 'notify-admin-room-on-user-register' into 'next'
Notify admin room for user registrations, deactivations and password changes

See merge request famedly/conduit!318
2 years ago
Timo Kösters 7bc84dc971 Merge branch 'jplatte/up-axum' into 'next'
Upgrade axum to 0.5

See merge request famedly/conduit!335
2 years ago
Timo Kösters d89141100c Merge branch 'insensitive-login' into 'next'
Case insensitive username login

Closes #248

See merge request famedly/conduit!323
2 years ago
Jonas Platte db0659cb3d
Upgrade axum to 0.5 2 years ago
LordMZTE 4a12a7cbc8
Fix crash when a bad user ID is in the database
To my understanding, a bad user ID can sometimes make it into the
database, which lead to a panic prior to this change.
2 years ago
Andrej Kacian b5b8181851 Notify admin room for user registrations, deactivations and password changes 2 years ago
chenyuqide 5695121f38 Fix wrong associated type in OutgoingKind::Appservice 2 years ago
reti4 8bafdc4623 fixed location of lowercase fn 2 years ago
reti4 9385ea0e7c fmt fix 2 years ago
reti4 9f059ad4c3 make username login case insensitive 2 years ago
Andrej Kacian 65fa4b2ca4 Fix proxy config examples in config/proxy.rs 2 years ago
Andrej Kacian 3b2b35aab7 Log caught Ctrl+C or SIGTERM for operator feedback 2 years ago
Andrej Kacian 196c83939c Add show-config admin room command 2 years ago
Jonathan de Jong 557d119bee change search_events_v3 to search_events::v3 2 years ago
Jonathan de Jong e9f87e1952 update ruma 2 years ago
Timo Kösters b8eaa3be85 Merge branch 'redactfix' into 'next'
Redaction fix

Closes #235

See merge request famedly/conduit!298
2 years ago
Jonas Platte 27692a2f14
Remove useless serde roundtrips 2 years ago
Timo Kösters 6602f6114c
fix: redacts can't error anymore 2 years ago
Jonas Platte 3aece38e9d
Add a not-found route 2 years ago
Jonas Platte aee6bf7e7a Change this to handler 2 years ago
Jonathan de Jong b8d92d3cec take advantage of multiple paths 2 years ago
Timo Kösters 0c4b42ac13 Merge branch 'parse-pdu-command-panic' into 'next'
fix: do not panic on a JSON not containing the PDU

Closes #236

See merge request famedly/conduit!304
2 years ago
M0dEx d4217007fe
fix: do not panic on a JSON not containing the PDU
Do not panic on a JSON not containing the PDU when executing the parse-pdu admin command.
2 years ago
Jonathan de Jong 35b82d51cf fix compilations 2 years ago
Timo Kösters 2b644ef7b7 Merge branch 'tracing-cleanup' into 'next'
Remove unnecessary tracing::instrument attributes

See merge request famedly/conduit!302
2 years ago
Jonas Platte 0ad6eac4f8
Remove all tracing::instrument attributes from database::abstraction::* 2 years ago
Jonas Platte accdb77315
Clean up tracing::instrument attributes
Remove it from request handler since there's already the context of the
request path, added through TraceLayer.
2 years ago
Timo Kösters 914152fcbd Merge branch 'syncfast' into 'next'
improvement: faster /syncs

Closes #231

See merge request famedly/conduit!297
2 years ago
Timo Kösters 2a00c547a1
improvement: faster /syncs 2 years ago
Jonas Platte adeb8ee425
Remove no-op conversions 2 years ago
Jonas Platte d74074ad53
Remove tracing::instrument attribute from util functions
They don't ever log anything, so the extra context is never used.
2 years ago
Timo Kösters 0565b5a6c8 Merge branch 'show-dns-setup-error' into 'next'
Display actual error message from TokioAsyncResolver, if any

See merge request famedly/conduit!296
2 years ago
Timo Kösters f3502beb94 Merge branch 'welcome-message-command-hint' into 'next'
feat: add welcome message command hint

See merge request famedly/conduit!299
2 years ago
Timo Kösters d6b9874b35 Merge branch 'fix-admin-self-commands' into 'next'
Fix admin room processing commands from its own messages

See merge request famedly/conduit!293
2 years ago
Jonas Platte 50b24b37c2
Upgrade Ruma 2 years ago
Jonas Platte 9db0473ed5
Improve error messages in Ruma wrapper FromRequest impl 2 years ago
Jonas Platte 5d8c80b170
Strip quotes from X-Matrix fields 2 years ago
Jonas Platte 21ae63d46b
Rewrite query parameter parsing 2 years ago
Jonas Platte c8951a1d9c
Use axum-server for direct TLS support 2 years ago
Jonas Platte 5fa9190117
Simplify return type of most route handlers 2 years ago
Jonas Platte 77a87881c9
Add message to unsupported HTTP method panic 2 years ago
Jonas Platte 7bf538f549
Fix axum route conflicts 2 years ago
Jonas Platte a5757ab195
Generalize RumaHandler 2 years ago
Jonas Platte d1d2217019
Clean up error handling for server_server::get_server_keys_route 2 years ago
Jonas Platte 1f7b3fa4ac
Port from Rocket to axum 2 years ago
Jonas Platte 5db4c001d1
Remove another unnecessary use of an event enum 2 years ago
Jonas Platte 583ec51f9f
Remove unnecessary use of event enum 2 years ago
M0dEx f602d32aaa
feat: add the actual server name to the welcome message 2 years ago
M0dEx a6976e6d2d
feat: add 'available' to the help command line in the welcome message 2 years ago
M0dEx f2b8aa28f3
feat: add a line with the help command to the welcome message 2 years ago
Andrej Kacian bfbefb0cd2 Display actual error message from TokioAsyncResolver, if any 2 years ago
Andrei Vasiliu 31918bb990 Fix admin room processing commands from its own messages 2 years ago
Timo Kösters d55992dc83 Merge branch 'jemallocfeature' into 'next'
feat: allow disabling jemalloc via feature

See merge request famedly/conduit!285
2 years ago
Timo Kösters eb0b2c429f
fix: crash on empty search 2 years ago
Timo Kösters 8d8edddb2e
feat: allow disabling jemalloc via feature 2 years ago
Timo Kösters 72cd52e57c
fix: lazy loading for /context 2 years ago
Timo Kösters 8db7d2c025 Merge branch 'asonix/encourage-reqwest-reuse' into 'next'
Re-use a basic reqwest client in all possible cases

See merge request famedly/conduit!265
2 years ago
Andrei Vasiliu e1c0dcb6bb Create admin room and hide migration messages on first run 2 years ago
Jonas Platte d23d6fbb37
Upgrade Ruma 2 years ago
Jonas Platte 92571d961f
Remove mutation from default_config and set default log_level to off 2 years ago
Andrei Vasiliu b56efcdc2a Merge remote-tracking branch 'origin/next' into command-refactor
Fixed a small conflict in admin.rs
2 years ago
Andrei Vasiliu 6399a7fe4e Remove dash from admin command help 2 years ago
Jonas Platte 974c10e739
Move Config out of database module 2 years ago
Jonas Platte ce60fc6859
Stop using set_env to configure tracing-subscriber 2 years ago
Jonas Platte abb4b4cf0b
Remove TryFrom, TryInto imports
They are no longer needed in the 2021 edition.
2 years ago
Andrei Vasiliu 4bbff69a24 Merge remote-tracking branch 'origin/next' into command-refactor
Fixed conflict with commit 78502aa6b1
2 years ago
Timo Kösters b4755ba15b Merge branch 'tests' into 'next'
Bug fixes

See merge request famedly/conduit!278
2 years ago
Timo Kösters 9ef3abacd4
fix: initial state deserialize->serialize error 2 years ago
Andrei Vasiliu 87225e70c3 Parse admin command body templates from doc comments 2 years ago
Timo Kösters a5f004d7e9
fix: signature mismatch on odd send_join servers 2 years ago
Timo Kösters caf9834e50
feat: cache capacity modifier 2 years ago
Timo Kösters 23aecb78c7
fix: use to_lowercase on /register/available username 2 years ago
Timo Kösters e17bbdd42d
tests 2 years ago
Torsten Flammiger 28d3b348d2 Return the ID of the appservice that was created by register_appservice 2 years ago
Torsten Flammiger 78502aa6b1 add error handling for register_appservice too 2 years ago
Torsten Flammiger cc13112592 Cleanup appservice events after removing the appservice 2 years ago
Andrei Vasiliu 677f044d13 Refactor admin code to always defer command processing 2 years ago
Aode (lion) b39ddf7be9 Rename reqwest clients, mention cheap client clones in comment 2 years ago
Andrej Kacian 529e88c7f9 Do not copy mxc string unnecessarily in db.get_thumbnail() 2 years ago
Aode (lion) 1059f35fdc use pre-constructed client for well-known requests also 2 years ago
Aode (Lion) f8d1c1a8af Re-use a basic request in all possible cases 2 years ago
Andrej Kacian 0f6d232cb1 Style fixes from 'cargo fmt' 2 years ago
Andrej Kacian ccfc243c2c Make get_remote_content() return Result instead of ConduitResult 2 years ago
Timo Kösters f7148def90 Merge branch 'up-ruma' into 'next'
Upgrade Ruma

See merge request famedly/conduit!268
2 years ago
Timo Kösters 63309e52f8 Merge branch 'media-download-with-filename' into 'next'
Media download with filename

See merge request famedly/conduit!266
2 years ago
Andrej Kacian c4317a7a96 Reduce code duplication in media download route handlers 2 years ago
Jonas Platte 9c2000cb89
Upgrade Ruma 2 years ago
Andrej Kacian 52873c88b7 Fix incorrect HTTP method in doc comments of two media routes 2 years ago
Andrej Kacian 8472eff277 Implement media download with custom filename 2 years ago
Andrei Vasiliu 7505548b94 Merge remote-tracking branch 'refs/remotes/origin/next' into command-refactor
Resolved conflict for the new list_local_users command
2 years ago
Timo Kösters f50bdb6010 Merge branch 'list_local_users' into 'next'
Implement list_local_users command

See merge request famedly/conduit!260
2 years ago
Timo Kösters f88523988e
improvement: use jemalloc for lower memory usage 2 years ago
Andrei Vasiliu 57979da28c Change structopt to clap, remove markdown dependency 2 years ago
Timo Kösters 5d3ba5c628 Merge branch 'WIP_persy_batch_next' into 'next'
feat: Integration with persy using background ops

See merge request famedly/conduit!231
2 years ago
Torsten Flammiger 960ba8bd99 Merged current next 2 years ago
Torsten Flammiger ba6d72f3f9 Reformatted 2 years ago
Andrei Vasiliu cc3ef1a8be Improve help text for admin commands 2 years ago
Andrei Vasiliu f244c0e2ce Merge remote-tracking branch 'refs/remotes/origin/next' into command-refactor 2 years ago
Andrei Vasiliu e378bc4a2c Refactor admin commands to use structopt 2 years ago
Jonas Platte 6bb1081b71
Use BTreeMap::into_values
Stable under new MSRV.
2 years ago
Jonas Platte 756a41f22d
Fix rustc / clippy warnings 2 years ago
Jonas Platte a0fc5eba72
Remove unnecessary Result 2 years ago
Jonas Platte c6277c72a1
Fix warnings in database::abstraction 2 years ago
Jonas Platte 13a48c4577
Clean up mod and use statements in lib.rs and main.rs 2 years ago
Timo Kösters 53de350908
fix: less load when lazy loading 2 years ago
Torsten Flammiger fd6427a83f Update/Revert code comment 2 years ago
Torsten Flammiger fc39b3447c Little bit of refactoring 2 years ago
Torsten Flammiger 4aefc29650 Merge branch 'list_local_users_test' into list_local_users 2 years ago
Timo Kösters 03b174335c
improvement: lower default pdu cache capacity 2 years ago
Timo Kösters 8c90e7adfb
refactor: fix warnings 2 years ago
Timo Kösters ee8e72f7a8
feat: implement server ACLs 2 years ago
Torsten Flammiger 50430cf4ab Name function after command: list_local_users 2 years ago
Torsten Flammiger 52284ef9e2 Add some debug/info if user was found 2 years ago
Torsten Flammiger 3e79d15495 Updated function documentation 2 years ago
Andrei Vasiliu 13ae036ca0 Move and refactor admin commands into admin module 2 years ago
Torsten Flammiger 9205c07048 Update get_local_users description 2 years ago
Torsten Flammiger c03bf6ef11 name the function after its purpose: iter_locals -> get_local_users 2 years ago
Torsten Flammiger 91eb6c4d08 Return a Result instead of a vector 2 years ago
Torsten Flammiger fb19114bd9 rename iter_locals to get_local_users; make get_local_users skip on parse errors; remove deprecated function count_local_users 2 years ago
Tglman f9977ca64f fix: changes to update to the last database engine trait definition 2 years ago
Tglman 1cc41937bd refactor:use generic watcher in persy implementation 2 years ago
Tglman ab15ec6c32 feat: Integration with persy using background ops 2 years ago
Timo Kösters d434dfb3a5
feat: config option for rocksdb max open files 2 years ago
Timo Kösters 80e51986c4
improvement: better default cache capacity 2 years ago
Timo Kösters 16f826773b
refactor: fix warnings 2 years ago
Timo Kösters 6fa01aa982
fix: remove dbg 2 years ago
Timo Kösters a336027b0e
fix: better memory usage message 2 years ago
Timo Kösters 447639054e
improvement: higher default pdu capacity 2 years ago
Timo Kösters 9e77f7617c
fix: disable direct IO again 2 years ago
Timo Kösters 7f27af032b
improvement: optimize rocksdb for spinning disks 2 years ago
Timo Kösters b96822b617
fix: use db options for column families too 2 years ago
Timo Kösters 0bb7d76dec
improvement: rocksdb configuration 2 years ago
Timo Kösters 077e9ad438
improvement: memory usage for caches 2 years ago
Andrej Kacian 68ee1a5408
Add rocksdb implementation of memory_usage() 2 years ago
Andrej Kacian ff243870f8
Add "database_memory_usage" AdminCommand 2 years ago
Andrej Kacian 71431f330a
Add memory_usage() to DatabaseEngine trait 2 years ago
Timo Kösters fa6d7f7ccd
feat: database backend selection at runtime 2 years ago
Timo Kösters 4f39d36e98
docs: lazy loading 2 years ago
Timo Kösters c6d88359d7
fix: incremental lazy loading 2 years ago
Timo Kösters f285c89006
fix: make incremental sync efficient again 2 years ago
Timo Kösters 93d225fd1e
improvement: faster way to load required state 2 years ago
Timo Kösters 1bd9fd74b3
feat: partially support sync filters 2 years ago
Timo Kösters 68e910bb77
feat: lazy loading 2 years ago
Timo Kösters 5bcc1324ed
fix: auth event fetch order 2 years ago
Timo Kösters 54f4d39e3e
improvement: don't fetch event multiple times 2 years ago
Timo Kösters b1d9ec3efc
fix: atomic increment 2 years ago
Timo Kösters ee3d2db8e0
improvement, maybe not safe 2 years ago
Timo Kösters 83a9095cdc
fix? 2 years ago
Timo Kösters 74951cb239
dbg 2 years ago
Timo Kösters 4b4afea2ab
fix auth event fetching 2 years ago
Timo Kösters c9c9974641
fix: stack overflows when fetching auth events 2 years ago
Timo Kösters a30b588ede
rocksdb as default 2 years ago
Timo Kösters 1d647a1a9a
improvement: allow rocksdb again 2 years ago
Timo Kösters b25354c747 Merge branch 'add_remove_appservice' into 'next'
Add ability to remove an appservice

See merge request famedly/conduit!236
2 years ago
Torsten Flammiger eecd664c43 Reformat code 2 years ago
Jonas Platte bcf4ede0bc
Restore compatibility with Rust 1.53 2 years ago
Jonas Platte 84862352ba
Replace to_string calls on string literals with to_owned 2 years ago
Jonas Platte cf54185a1c
Use struct literals for consistency 2 years ago
Jonas Platte 349865d3cc
Upgrade Ruma 2 years ago
Timo Kösters 8e12b47df4 Merge branch 'no-passwords-in-db' into 'next'
Do not store uiaa requests in database

See merge request famedly/conduit!219
2 years ago
Timo Kösters 0ec26b7e96 Merge branch 'next' into 'next'
refactor:moved key watch wake logic to specific module

See merge request famedly/conduit!238
2 years ago
Torsten Flammiger 8d51359668 Fix typo and remove unneeded newline 3 years ago
Torsten Flammiger a69eb277d4 Update count users: It's now list_local_users and contains the number and the usernames 3 years ago
Torsten Flammiger 39787b41cb Rename admin command CountUsers -> CountLocalUsers; Update comments 3 years ago
Torsten Flammiger 2281bcefc6 Finalize count_local_users function 3 years ago
Torsten Flammiger d21030566c Rename/Add count methods to count_local_users 3 years ago
Torsten Flammiger 567cf6dbe9 Add command count_local_users to database/rooms.rs 3 years ago
Torsten Flammiger 7c1b2625cf Prepare to add an option to list local user accounts from your homeserver 3 years ago
Tglman a889e884e6 refactor:moved key watch wake logic to specific module 3 years ago
Jonas Platte aba95b20f3
Upgrade Ruma 3 years ago
Moritz Bitsch c4a438460e Use Box to store UserID and DeviceID
Userid and DeviceID are of unknown size, use Box to be able to store
them into the userdevicesessionid_uiaarequest BTreeMap
3 years ago
Torsten Flammiger 7f2445be6c On unregister_appservice(service_name), remove the appservice service_name from cache too 3 years ago
Torsten Flammiger b6c9582cf4 Fix doc style comment according to Rust; VSCode added line breaks 3 years ago
Torsten Flammiger 7857da8a0b Add ability to remove an appservice 3 years ago
Moritz Bitsch 720a54b3bb Use String to store UserId for uiaa request
Fixes compilation error after ruma upgrade
3 years ago
Moritz Bitsch 0725b69abb Clean up userdevicesessionid_uiaarequest BTreeMap
There is no need to encode or decode anything as we are not
saving to disk
3 years ago
Moritz Bitsch fe8cfe0556 Add database migration to remove stored passwords
uiaarequests can contain plaintext passwords, which were stored on disk
3 years ago
Moritz Bitsch 3d25d46dc5 Use simple BTreeMap to store uiaa requests
some uiaa requests contain plaintext passwords which should never be
persisted to disk.

Currently there is no cleanup implemented (you have to restart conduit)
3 years ago
Jonas Platte 34d3f74f36
Use Arc for EventIds in PDUs
Upgrades Ruma again to make this work.
3 years ago
Jonas Platte 0183d003d0
Revert rename of Ruma<_> parameters 3 years ago
Jonas Platte f712455047
Reduce EventId copying 3 years ago
Jonas Platte 58ea081762
Use int! macro instead of Int::from 3 years ago
Jonas Platte bffddbd487
Simplify identifier parsing code 3 years ago
Jonas Platte 41fef1da64
Remove unnecessary .to_string() calls 3 years ago
Jonas Platte 892a0525f2
Upgrade Ruma 3 years ago
Jonas Platte 1fc616320a
Use struct init shorthand 3 years ago
Moritz Bitsch 9fccbb014a Implement TURN server authentication with hmac
This is a prefered method to allow limited access to the TURN server
3 years ago
Moritz Bitsch 109892b4b7 Implement turn server settings
this fills out the infos in /_matrix/client/r0/voip/turnServer with
values specified in the server config
3 years ago
Jonas Platte 24a835647c Merge branch 'nyaaori/fix-room-creation' into 'next'
Make createRoom follow spec for m.room.create, allowing creation of spaces

See merge request famedly/conduit!220
3 years ago
Nyaaori c4bce1d0c7
Cleanup room.rs; replace unwraps with map_err 3 years ago
Nyaaori 86177faae7
Fix join panic bug 3 years ago
Nyaaori d5d25fb064
Preserve all m.room.create entries when performing room upgrades 3 years ago
Nyaaori 8087a26a35
Make createRoom follow spec for m.room.create, allowing creation of spaces 3 years ago
Nyaaori bbe16f8467
Update Ruma 3 years ago
Nyaaori 50f931a2fd
Cleanup and fix validation in report.rs, lower max report length, better html 3 years ago
Nyaaori 1541b93f45
Make reports look nicer and reduce spam potential, increase max report length to 1000 characters 3 years ago
Nyaaori ccf501a420
Initial implementation of /report, fixing #13 3 years ago
Nyaaori 484a044b50
Remove device_one_time_keys_count from is_empty() sync checks, fixing sync issue as reported by Nekron 3 years ago
Timo Kösters e88929e154 Merge branch 'nyaaori/fix-otk-reporting' into 'next'
Always send device_one_time_keys_count, fixing #178

Closes #169 and #178

See merge request famedly/conduit!213
3 years ago
Nyaaori d996d1b0e6
Always send device_one_time_keys_count, fixing #178 3 years ago
Timo Kösters dc8bc4a880 Merge branch 'up-ruma' into 'next'
Upgrade Ruma

See merge request famedly/conduit!210
3 years ago
Timo Kösters 335027e739 Merge branch 'nyaaori/admin-check' into 'next'
Implement admin check and add config option for allowing room creation

See merge request famedly/conduit!211
3 years ago
Nyaaori 9082a531c9
Make allow_encryption work again, fixing #115 3 years ago
Jonas Platte 91afa1e0e0
Make Result alias usable with any error type 3 years ago
Jonas Platte f2ef5677e0
Reduce turbofish usage
Should make the code a little bit easier to read.
3 years ago
Jonas Platte 1c4d9af586
Enable more lints and apply their suggestions 3 years ago
Jonas Platte 09895a20c8
Upgrade Ruma
Co-authored-by: Timo Kösters <timo@koesters.xyz>
3 years ago
Nyaaori 6bc8fb2ae7
Implement admin check and add config option for allowing room creation 3 years ago
Timo Kösters 5c02dc7830
improvement: batch inserts for inserting pdus 3 years ago
Timo Kösters b64538c6f1 Merge branch 'efficient-sqlite' into 'next'
improvement: more efficient sqlite

See merge request famedly/conduit!199
3 years ago
Timo Kösters 178451e9b5 Merge branch 'deduplicate-watchers' into 'next'
improvement: deduplicate watchers

See merge request famedly/conduit!201
3 years ago
Timo Kösters cbee7fe111
improvement: deduplicate watchers 3 years ago
Jonas Platte d68c93b5fa
Clean up (mostly automated with cargo clippy --fix) 3 years ago
Jonas Platte 979ec6b4fa
Upgrade ruma 3 years ago
Jonas Platte 910ad7fed1
Get rid of more unnecessary intermediate collections 3 years ago
Timo Kösters 2c8412fe58
improvement: more efficient sqlite 3 years ago
Jonathan de Jong 23c5ec8099 fix sync not firing on new events in room 3 years ago
Rasmus Thomsen 51245d34f1
fix(database): handle errors in config parsin or database creation
Showing the user a backtrace can be pretty confusing, so just printing
a nice error message makes errors easier to understand for end users.

fixes #121
3 years ago
Timo Kösters 71341ea05a
fix: make sure old events don't sneek into the timeline 3 years ago
Timo Kösters 2770ce2cf6
fix: avoid panic 3 years ago
Timo Kösters 43d693ca19
revert Arc<EventId> commit 3 years ago
Timo Kösters 875b345a5f
docs: update readme and version 3 years ago
Jonas Platte 487601a249
Remove unneeded intermediary container collection 3 years ago
Timo Kösters 4b39d7cb64
fix: batch key fetching 3 years ago
Kurt Roeckx c53d79e287
fixup! Get required keys in batch when joining a room 3 years ago
Kurt Roeckx 984ad5ecd6
fixup! Get required keys in batch when joining a room 3 years ago
Kurt Roeckx b546a5bf15
Let our server signing be valid for 1 week
It was valid for 2 minutes, which can result in the server being
asked too much for something that never changes.
3 years ago
Kurt Roeckx a87519fb71
Get required keys in batch when joining a room
We now ask the trusted server for all keys in 1 request, instead of
asking each server individual for it's own keys.
3 years ago
Timo Kösters 8518d59a0b Merge branch 'clippy' into 'master'
Fix a bunch of clippy lints

See merge request famedly/conduit!178
3 years ago
Timo Kösters 73d876643c
improvement: make pdu cache capacity configurable 3 years ago
Timo Kösters 33738dbbc2
improvement: stop prev event fetching if too many events fail 3 years ago
Jonas Platte a6bb9bbe68
Fix a bunch of clippy lints 3 years ago
Timo Kösters b9eb39a9c6
docs: documentation for every endpoint 3 years ago
Jonathan de Jong 9ec8b7f2b3 registration default true 3 years ago
Jonathan de Jong 69df9a0145 add tls 3 years ago
Timo Kösters bd4ea14a29
improvement: call /state_ids less often by using state res 3 years ago
Timo Kösters 1b25e78e3a
fix: inviting dendrite users 3 years ago
Timo Kösters d57c19802d
improvement: don't do state updates if the event was soft failed 3 years ago
Timo Kösters 632a1343eb
fix: make appservices more efficient 3 years ago
Timo Kösters 1601027605
add warning if calculated event id != requested event id 3 years ago
Timo Kösters afca61fe7c
fix: don't retry soft failed events 3 years ago
Devin Ragotzy 9bff276fa9
Use Arc<EventId> in place of most EventIds 3 years ago
Timo Kösters 19b89ab91f
fix: server resolution 3 years ago
Timo Kösters 0330d3e270
fix: server resolution with well-known files 3 years ago
Timo Kösters a1e8a99db5
improvement: less IO for auth chains 3 years ago
Timo Kösters 33172a70e6
fix: improve key fetching 3 years ago
Timo Kösters 41d07be97b
improvement: persist cached auth chains in db 3 years ago
Timo Kösters bef4fe50ce
fix: better migration, force e2ee device key updates 3 years ago
Timo Kösters 9152b877a7
fix: wrong soft fail check, too many events in /sync state response 3 years ago
Timo Kösters 9f8c45c763
fix: e2ee over federation
to device events were not being sent
3 years ago
Timo Kösters dd87066546
improvement: more efficient auth chain cache 3 years ago
Timo Kösters 81e056417c
improvement: better e2ee over fed, faster incoming event handling 3 years ago
Timo Kösters 72dd95f500 Merge branch 'createwarnings' into 'master'
fix: correct create event warnings

See merge request famedly/conduit!161
3 years ago
Timo Kösters 4f8cf3bed4 Merge branch 'send_join_v1' into 'master'
Implement federation/v1/send_join

See merge request famedly/conduit!141
3 years ago
Timo Kösters b3ea6adc9c Merge branch 'get-pdu-json' into 'master'
Consistent and escaped response in get_pdu

See merge request famedly/conduit!160
3 years ago
Timo Kösters 6d83954c40
fix: room upgrades 3 years ago
Timo Kösters 667ffb4239
fix: correct create event warnings 3 years ago
Kurt Roeckx 48494c9464 Implement federation/v1/send_join 3 years ago
Tom Smeding 2ef23b213a
Consistent and escaped response in get_pdu
1. The fallback text of the get_pdu admin room command response message
   now contains the same text as the formatted_body content (namely, the
   json instead of Debug-formatting of a serde type).
2. The formatted_body content of the get_pdu response is now
   html-escaped.
3 years ago
Timo Kösters 3b78e43a18
fmt 3 years ago
Timo Kösters 4956fb9fba
improvement: limit prev event fetching 3 years ago
Timo Kösters b09499c2df
fix: don't save empty tokens 3 years ago
Timo Kösters 46d8a46e1f
improvement: faster incoming transaction handling 3 years ago
Timo Kösters bf7e019a68
improvement: better prev event fetching, perf improvements 3 years ago
Timo Kösters 75ba8bb565
fix: faster room joins 3 years ago
Timo Kösters 0823506d05
fix: don't load endless prev events and fix room join bug 3 years ago
Timo Kösters 2c3bee34a0
improvement: better sqlite 3 years ago
Timo Kösters a4310f840e
improvement: state info cache 3 years ago
Timo Kösters 5bd5b41c70
fix: fetch event multiple times 3 years ago
Timo Kösters f9a2edc0dd
fix: also fetch prev events that are outliers already 3 years ago
Timo Kösters ecd1e45a44
fix: fetch more than one prev event 3 years ago
Timo Kösters 1d46569929
fix: don't use recursion for prev events 3 years ago
Timo Kösters 1e3a8ca35d
fmt 3 years ago
Timo Kösters 0cb22996be
remove prev event fetch limit 3 years ago
Timo Kösters 38effda799
fix: delta calculation 3 years ago
Timo Kösters 3cf0145bc5
fix: room exists panic 3 years ago
Timo Kösters 3eabaa2a95
finish implementing better state store 3 years ago
Timo Kösters 31f60ad6fd
improvement: migrations, batch inserts 3 years ago
Timo Kösters 41dd620d74
WIP improvement: much better state storage 3 years ago
Timo Kösters 9410d3ef9c
fix: long prev event fetch times for huge rooms 3 years ago
Timo Kösters 665aee11c0
less warnings 3 years ago
Timo Kösters 5173d0deb5
improvement: cache for short event ids 3 years ago
Timo Kösters c2c6a8673e
improvement: use u64s in auth chain cache 3 years ago