diff --git a/docs/reference/admin/appservices.md b/docs/reference/admin/appservices.md index f0229222..8b3708e5 100644 --- a/docs/reference/admin/appservices.md +++ b/docs/reference/admin/appservices.md @@ -1,12 +1,12 @@ # `!admin appservices` -- Commands for managing appservices +Commands for managing appservices ## `!admin appservices register` -- Register an appservice using its registration YAML +Register an appservice using its registration YAML This command needs a YAML generated by an appservice (such as a bridge), which must be provided in a Markdown code block below the command. @@ -14,16 +14,16 @@ Registering a new bridge using the ID of an existing bridge will replace the old ## `!admin appservices unregister` -- Unregister an appservice using its ID +Unregister an appservice using its ID You can find the ID using the `list-appservices` command. ## `!admin appservices show-appservice-config` -- Show an appservice's config using its ID +Show an appservice's config using its ID You can find the ID using the `list-appservices` command. ## `!admin appservices list-registered` -- List all the currently registered appservices +List all the currently registered appservices diff --git a/docs/reference/admin/check.md b/docs/reference/admin/check.md index 08d4c2c1..14861c5a 100644 --- a/docs/reference/admin/check.md +++ b/docs/reference/admin/check.md @@ -1,7 +1,7 @@ # `!admin check` -- Commands for checking integrity +Commands for checking integrity ## `!admin check check-all-users` diff --git a/docs/reference/admin/debug.md b/docs/reference/admin/debug.md index 536e97e1..26ba3469 100644 --- a/docs/reference/admin/debug.md +++ b/docs/reference/admin/debug.md @@ -1,20 +1,20 @@ # `!admin debug` -- Commands for debugging things +Commands for debugging things ## `!admin debug echo` -- Echo input of admin command +Echo input of admin command ## `!admin debug get-auth-chain` -- Get the auth_chain of a PDU +Get the auth_chain of a PDU ## `!admin debug parse-pdu` -- Parse and print a PDU from a JSON +Parse and print a PDU from a JSON The PDU event is only checked for validity and is not added to the database. @@ -22,23 +22,23 @@ This command needs a JSON blob provided in a Markdown code block below the comma ## `!admin debug get-pdu` -- Retrieve and print a PDU by EventID from the Continuwuity database +Retrieve and print a PDU by EventID from the Continuwuity database ## `!admin debug get-short-pdu` -- Retrieve and print a PDU by PduId from the Continuwuity database +Retrieve and print a PDU by PduId from the Continuwuity database ## `!admin debug get-remote-pdu` -- Attempts to retrieve a PDU from a remote server. **Does not** insert it into the database or persist it anywhere +Attempts to retrieve a PDU from a remote server. **Does not** insert it into the database or persist it anywhere ## `!admin debug get-remote-pdu-list` -- Same as `get-remote-pdu` but accepts a codeblock newline delimited list of PDUs and a single server to fetch from +Same as `get-remote-pdu` but accepts a codeblock newline delimited list of PDUs and a single server to fetch from ## `!admin debug get-room-state` -- Gets all the room state events for the specified room. +Gets all the room state events for the specified room. This is functionally equivalent to `GET /_matrix/client/v3/rooms/{roomid}/state`, except the admin command does *not* check if the sender user is allowed to see state events. This is done because it's implied that server admins here have database access and can see/get room info themselves anyways if they were malicious admins. @@ -46,49 +46,49 @@ Of course the check is still done on the actual client API. ## `!admin debug get-signing-keys` -- Get and display signing keys from local cache or remote server +Get and display signing keys from local cache or remote server ## `!admin debug get-verify-keys` -- Get and display signing keys from local cache or remote server +Get and display signing keys from local cache or remote server ## `!admin debug ping` -- Sends a federation request to the remote server's `/_matrix/federation/v1/version` endpoint and measures the latency it took for the server to respond +Sends a federation request to the remote server's `/_matrix/federation/v1/version` endpoint and measures the latency it took for the server to respond ## `!admin debug force-device-list-updates` -- Forces device lists for all local and remote users to be updated (as having new keys available) +Forces device lists for all local and remote users to be updated (as having new keys available) ## `!admin debug change-log-level` -- Change tracing log level/filter on the fly +Change tracing log level/filter on the fly This accepts the same format as the `log` config option. ## `!admin debug verify-json` -- Verify JSON signatures +Verify JSON signatures This command needs a JSON blob provided in a Markdown code block below the command. ## `!admin debug verify-pdu` -- Verify PDU +Verify PDU This re-verifies a PDU existing in the database found by ID. ## `!admin debug first-pdu-in-room` -- Prints the very first PDU in the specified room (typically m.room.create) +Prints the very first PDU in the specified room (typically m.room.create) ## `!admin debug latest-pdu-in-room` -- Prints the latest ("last") PDU in the specified room (typically a message) +Prints the latest ("last") PDU in the specified room (typically a message) ## `!admin debug force-set-room-state-from-server` -- Forcefully replaces the room state of our local copy of the specified room, with the copy (auth chain and room state events) the specified remote server says. +Forcefully replaces the room state of our local copy of the specified room, with the copy (auth chain and room state events) the specified remote server says. A common desire for room deletion is to simply "reset" our copy of the room. While this admin command is not a replacement for that, if you know you have split/broken room state and you know another server in the room that has the best/working room state, this command can let you use their room state. Such example is your server saying users are in a room, but other servers are saying they're not in the room in question. @@ -96,47 +96,47 @@ This command will get the latest PDU in the room we know about, and request the ## `!admin debug resolve-true-destination` -- Runs a server name through Continuwuity's true destination resolution process +Runs a server name through Continuwuity's true destination resolution process Useful for debugging well-known issues ## `!admin debug memory-stats` -- Print extended memory usage +Print extended memory usage Optional argument is a character mask (a sequence of characters in any order) which enable additional extended statistics. Known characters are "abdeglmx". For convenience, a '*' will enable everything. ## `!admin debug runtime-metrics` -- Print general tokio runtime metric totals +Print general tokio runtime metric totals ## `!admin debug runtime-interval` -- Print detailed tokio runtime metrics accumulated since last command invocation +Print detailed tokio runtime metrics accumulated since last command invocation ## `!admin debug time` -- Print the current time +Print the current time ## `!admin debug list-dependencies` -- List dependencies +List dependencies ## `!admin debug database-stats` -- Get database statistics +Get database statistics ## `!admin debug trim-memory` -- Trim memory usage +Trim memory usage ## `!admin debug database-files` -- List database files +List database files ## `!admin debug tester` -- Developer test stubs +Developer test stubs ### `!admin debug tester panic` diff --git a/docs/reference/admin/federation.md b/docs/reference/admin/federation.md index d9f40962..4136f4e9 100644 --- a/docs/reference/admin/federation.md +++ b/docs/reference/admin/federation.md @@ -1,24 +1,24 @@ # `!admin federation` -- Commands for managing federation +Commands for managing federation ## `!admin federation incoming-federation` -- List all rooms we are currently handling an incoming pdu from +List all rooms we are currently handling an incoming pdu from ## `!admin federation disable-room` -- Disables incoming federation handling for a room +Disables incoming federation handling for a room ## `!admin federation enable-room` -- Enables incoming federation handling for a room again +Enables incoming federation handling for a room again ## `!admin federation fetch-support-well-known` -- Fetch `/.well-known/matrix/support` from the specified server +Fetch `/.well-known/matrix/support` from the specified server Despite the name, this is not a federation endpoint and does not go through the federation / server resolution process as per-spec this is supposed to be served at the server_name. @@ -26,4 +26,4 @@ Respecting homeservers put this file here for listing administration, moderation ## `!admin federation remote-user-in-rooms` -- Lists all the rooms we share/track with the specified *remote* user +Lists all the rooms we share/track with the specified *remote* user diff --git a/docs/reference/admin/index.md b/docs/reference/admin/index.md index 7517497b..741aa78b 100644 --- a/docs/reference/admin/index.md +++ b/docs/reference/admin/index.md @@ -11,13 +11,13 @@ Admin commands allow server administrators to manage the server from within thei ## Categories -- [`!admin appservices`](appservices/) - Commands for managing appservices -- [`!admin users`](users/) - Commands for managing local users -- [`!admin token`](token/) - Commands for managing registration tokens -- [`!admin rooms`](rooms/) - Commands for managing rooms -- [`!admin federation`](federation/) - Commands for managing federation -- [`!admin server`](server/) - Commands for managing the server -- [`!admin media`](media/) - Commands for managing media -- [`!admin check`](check/) - Commands for checking integrity -- [`!admin debug`](debug/) - Commands for debugging things -- [`!admin query`](query/) - Low-level queries for database getters and iterators +- [`!admin appservices`](appservices/): Commands for managing appservices +- [`!admin users`](users/): Commands for managing local users +- [`!admin token`](token/): Commands for managing registration tokens +- [`!admin rooms`](rooms/): Commands for managing rooms +- [`!admin federation`](federation/): Commands for managing federation +- [`!admin server`](server/): Commands for managing the server +- [`!admin media`](media/): Commands for managing media +- [`!admin check`](check/): Commands for checking integrity +- [`!admin debug`](debug/): Commands for debugging things +- [`!admin query`](query/): Low-level queries for database getters and iterators diff --git a/docs/reference/admin/media.md b/docs/reference/admin/media.md index 46b10c88..50cc34cb 100644 --- a/docs/reference/admin/media.md +++ b/docs/reference/admin/media.md @@ -1,16 +1,16 @@ # `!admin media` -- Commands for managing media +Commands for managing media ## `!admin media delete` -- Deletes a single media file from our database and on the filesystem via a single MXC URL or event ID (not redacted) +Deletes a single media file from our database and on the filesystem via a single MXC URL or event ID (not redacted) ## `!admin media delete-list` -- Deletes a codeblock list of MXC URLs from our database and on the filesystem. This will always ignore errors +Deletes a codeblock list of MXC URLs from our database and on the filesystem. This will always ignore errors ## `!admin media delete-past-remote-media` @@ -27,15 +27,15 @@ default. * Delete all remote and local media from 3 days ago, up until now: `!admin media delete-past-remote-media -a 3d ---yes-i-want-to-delete-local-media` +-yes-i-want-to-delete-local-media` ## `!admin media delete-all-from-user` -- Deletes all the local media from a local user on our server. This will always ignore errors by default +Deletes all the local media from a local user on our server. This will always ignore errors by default ## `!admin media delete-all-from-server` -- Deletes all remote media from the specified remote server. This will always ignore errors by default +Deletes all remote media from the specified remote server. This will always ignore errors by default ## `!admin media get-file-info` diff --git a/docs/reference/admin/query.md b/docs/reference/admin/query.md index 87ad0347..40161582 100644 --- a/docs/reference/admin/query.md +++ b/docs/reference/admin/query.md @@ -1,48 +1,48 @@ # `!admin query` -- Low-level queries for database getters and iterators +Low-level queries for database getters and iterators ## `!admin query account-data` -- account_data.rs iterators and getters +account_data.rs iterators and getters ### `!admin query account-data changes-since` -- Returns all changes to the account data that happened after `since` +Returns all changes to the account data that happened after `since` ### `!admin query account-data account-data-get` -- Searches the account data for a specific kind +Searches the account data for a specific kind ## `!admin query appservice` -- appservice.rs iterators and getters +appservice.rs iterators and getters ### `!admin query appservice get-registration` -- Gets the appservice registration info/details from the ID as a string +Gets the appservice registration info/details from the ID as a string ### `!admin query appservice all` -- Gets all appservice registrations with their ID and registration info +Gets all appservice registrations with their ID and registration info ## `!admin query presence` -- presence.rs iterators and getters +presence.rs iterators and getters ### `!admin query presence get-presence` -- Returns the latest presence event for the given user +Returns the latest presence event for the given user ### `!admin query presence presence-since` -- Iterator of the most recent presence updates that happened after the event with id `since` +Iterator of the most recent presence updates that happened after the event with id `since` ## `!admin query room-alias` -- rooms/alias.rs iterators and getters +rooms/alias.rs iterators and getters ### `!admin query room-alias resolve-local-alias` @@ -50,15 +50,15 @@ _(no description)_ ### `!admin query room-alias local-aliases-for-room` -- Iterator of all our local room aliases for the room ID +Iterator of all our local room aliases for the room ID ### `!admin query room-alias all-local-aliases` -- Iterator of all our local aliases in our database with their room IDs +Iterator of all our local aliases in our database with their room IDs ## `!admin query room-state-cache` -- rooms/state_cache iterators and getters +rooms/state_cache iterators and getters ### `!admin query room-state-cache server-in-room` @@ -126,7 +126,7 @@ _(no description)_ ## `!admin query room-timeline` -- rooms/timeline iterators and getters +rooms/timeline iterators and getters ### `!admin query room-timeline pdus` @@ -138,7 +138,7 @@ _(no description)_ ## `!admin query globals` -- globals.rs iterators and getters +globals.rs iterators and getters ### `!admin query globals database-version` @@ -154,19 +154,19 @@ _(no description)_ ### `!admin query globals signing-keys-for` -- This returns an empty `Ok(BTreeMap<..>)` when there are no keys found for the server +This returns an empty `Ok(BTreeMap<..>)` when there are no keys found for the server ## `!admin query sending` -- sending.rs iterators and getters +sending.rs iterators and getters ### `!admin query sending active-requests` -- Queries database for all `servercurrentevent_data` +Queries database for all `servercurrentevent_data` ### `!admin query sending active-requests-for` -- Queries database for `servercurrentevent_data` but for a specific destination +Queries database for `servercurrentevent_data` but for a specific destination This command takes only *one* format of these arguments: @@ -176,7 +176,7 @@ See src/service/sending/mod.rs for the definition of the `Destination` enum ### `!admin query sending queued-requests` -- Queries database for `servernameevent_data` which are the queued up requests that will eventually be sent +Queries database for `servernameevent_data` which are the queued up requests that will eventually be sent This command takes only *one* format of these arguments: @@ -190,7 +190,7 @@ _(no description)_ ## `!admin query users` -- users.rs iterators and getters +users.rs iterators and getters ### `!admin query users count-users` @@ -274,7 +274,7 @@ _(no description)_ ## `!admin query resolver` -- resolver service +resolver service ### `!admin query resolver destinations-cache` @@ -286,15 +286,15 @@ Query the overrides cache ## `!admin query pusher` -- pusher service +pusher service ### `!admin query pusher get-pushers` -- Returns all the pushers for the user +Returns all the pushers for the user ## `!admin query short` -- short service +short service ### `!admin query short short-event-id` @@ -306,56 +306,56 @@ _(no description)_ ## `!admin query raw` -- raw service +raw service ### `!admin query raw raw-maps` -- List database maps +List database maps ### `!admin query raw raw-get` -- Raw database query +Raw database query ### `!admin query raw raw-del` -- Raw database delete (for string keys) +Raw database delete (for string keys) ### `!admin query raw raw-keys` -- Raw database keys iteration +Raw database keys iteration ### `!admin query raw raw-keys-sizes` -- Raw database key size breakdown +Raw database key size breakdown ### `!admin query raw raw-keys-total` -- Raw database keys total bytes +Raw database keys total bytes ### `!admin query raw raw-vals-sizes` -- Raw database values size breakdown +Raw database values size breakdown ### `!admin query raw raw-vals-total` -- Raw database values total bytes +Raw database values total bytes ### `!admin query raw raw-iter` -- Raw database items iteration +Raw database items iteration ### `!admin query raw raw-keys-from` -- Raw database keys iteration +Raw database keys iteration ### `!admin query raw raw-iter-from` -- Raw database items iteration +Raw database items iteration ### `!admin query raw raw-count` -- Raw database record count +Raw database record count ### `!admin query raw compact` -- Compact database +Compact database diff --git a/docs/reference/admin/rooms.md b/docs/reference/admin/rooms.md index cb70eee8..31b4c848 100644 --- a/docs/reference/admin/rooms.md +++ b/docs/reference/admin/rooms.md @@ -1,83 +1,83 @@ # `!admin rooms` -- Commands for managing rooms +Commands for managing rooms ## `!admin rooms list-rooms` -- List all rooms the server knows about +List all rooms the server knows about ## `!admin rooms info` -- View information about a room we know about +View information about a room we know about ### `!admin rooms info list-joined-members` -- List joined members in a room +List joined members in a room ### `!admin rooms info view-room-topic` -- Displays room topic +Displays room topic Room topics can be huge, so this is in its own separate command ## `!admin rooms moderation` -- Manage moderation of remote or local rooms +Manage moderation of remote or local rooms ### `!admin rooms moderation ban-room` -- Bans a room from local users joining and evicts all our local users (including server admins) from the room. Also blocks any invites (local and remote) for the banned room, and disables federation entirely with it +Bans a room from local users joining and evicts all our local users (including server admins) from the room. Also blocks any invites (local and remote) for the banned room, and disables federation entirely with it ### `!admin rooms moderation ban-list-of-rooms` -- Bans a list of rooms (room IDs and room aliases) from a newline delimited codeblock similar to `user deactivate-all`. Applies the same steps as ban-room +Bans a list of rooms (room IDs and room aliases) from a newline delimited codeblock similar to `user deactivate-all`. Applies the same steps as ban-room ### `!admin rooms moderation unban-room` -- Unbans a room to allow local users to join again +Unbans a room to allow local users to join again ### `!admin rooms moderation list-banned-rooms` -- List of all rooms we have banned +List of all rooms we have banned ## `!admin rooms alias` -- Manage rooms' aliases +Manage rooms' aliases ### `!admin rooms alias set` -- Make an alias point to a room +Make an alias point to a room ### `!admin rooms alias remove` -- Remove a local alias +Remove a local alias ### `!admin rooms alias which` -- Show which room is using an alias +Show which room is using an alias ### `!admin rooms alias list` -- List aliases currently being used +List aliases currently being used ## `!admin rooms directory` -- Manage the room directory +Manage the room directory ### `!admin rooms directory publish` -- Publish a room to the room directory +Publish a room to the room directory ### `!admin rooms directory unpublish` -- Unpublish a room to the room directory +Unpublish a room to the room directory ### `!admin rooms directory list` -- List rooms that are published +List rooms that are published ## `!admin rooms exists` -- Check if we know about a room +Check if we know about a room diff --git a/docs/reference/admin/server.md b/docs/reference/admin/server.md index 8e3aa0cb..232b7c28 100644 --- a/docs/reference/admin/server.md +++ b/docs/reference/admin/server.md @@ -1,53 +1,53 @@ # `!admin server` -- Commands for managing the server +Commands for managing the server ## `!admin server uptime` -- Time elapsed since startup +Time elapsed since startup ## `!admin server show-config` -- Show configuration values +Show configuration values ## `!admin server reload-config` -- Reload configuration values +Reload configuration values ## `!admin server list-features` -- List the features built into the server +List the features built into the server ## `!admin server memory-usage` -- Print database memory usage statistics +Print database memory usage statistics ## `!admin server clear-caches` -- Clears all of Continuwuity's caches +Clears all of Continuwuity's caches ## `!admin server backup-database` -- Performs an online backup of the database (only available for RocksDB at the moment) +Performs an online backup of the database (only available for RocksDB at the moment) ## `!admin server list-backups` -- List database backups +List database backups ## `!admin server admin-notice` -- Send a message to the admin room +Send a message to the admin room ## `!admin server reload-mods` -- Hot-reload the server +Hot-reload the server ## `!admin server restart` -- Restart the server +Restart the server ## `!admin server shutdown` -- Shutdown the server +Shutdown the server diff --git a/docs/reference/admin/token.md b/docs/reference/admin/token.md index 8a4d3d44..a2ad459d 100644 --- a/docs/reference/admin/token.md +++ b/docs/reference/admin/token.md @@ -1,17 +1,17 @@ # `!admin token` -- Commands for managing registration tokens +Commands for managing registration tokens ## `!admin token issue` -- Issue a new registration token +Issue a new registration token ## `!admin token revoke` -- Revoke a registration token +Revoke a registration token ## `!admin token list` -- List all registration tokens +List all registration tokens diff --git a/docs/reference/admin/users.md b/docs/reference/admin/users.md index 50b8c6e3..6c1940fd 100644 --- a/docs/reference/admin/users.md +++ b/docs/reference/admin/users.md @@ -1,26 +1,26 @@ # `!admin users` -- Commands for managing local users +Commands for managing local users ## `!admin users create-user` -- Create a new user +Create a new user ## `!admin users reset-password` -- Reset user password +Reset user password ## `!admin users deactivate` -- Deactivate a user +Deactivate a user User will be removed from all rooms by default. Use --no-leave-rooms to not leave all rooms by default. ## `!admin users deactivate-all` -- Deactivate a list of users +Deactivate a list of users Recommended to use in conjunction with list-local-users. @@ -34,13 +34,13 @@ This command needs a newline separated list of users provided in a Markdown code ## `!admin users logout` -- Forcefully log a user out of all of their devices. +Forcefully log a user out of all of their devices. This will invalidate all access tokens for the specified user, effectively logging them out from all sessions. Note that this is destructive and may result in data loss for the user, such as encryption keys. Use with caution. Can only be used in the admin room. ## `!admin users suspend` -- Suspend a user +Suspend a user Suspended users are able to log in, sync, and read messages, but are not able to send events nor redact them, cannot change their profile, and are unable to join, invite to, or knock on rooms. @@ -48,83 +48,83 @@ Suspended users can still leave rooms and deactivate their account. Suspending t ## `!admin users unsuspend` -- Unsuspend a user +Unsuspend a user Reverses the effects of the `suspend` command, allowing the user to send messages, change their profile, create room invites, etc. ## `!admin users lock` -- Lock a user +Lock a user Locked users are unable to use their accounts beyond logging out. This is akin to a temporary deactivation that does not change the user's password. This can be used to quickly prevent a user from accessing their account. ## `!admin users unlock` -- Unlock a user +Unlock a user Reverses the effects of the `lock` command, allowing the user to use their account again. ## `!admin users enable-login` -- Enable login for a user +Enable login for a user ## `!admin users disable-login` -- Disable login for a user +Disable login for a user Disables login for the specified user without deactivating or locking their account. This prevents the user from obtaining new access tokens, but does not invalidate existing sessions. ## `!admin users list-users` -- List local users in the database +List local users in the database ## `!admin users list-joined-rooms` -- Lists all the rooms (local and remote) that the specified user is joined in +Lists all the rooms (local and remote) that the specified user is joined in ## `!admin users force-join-room` -- Manually join a local user to a room +Manually join a local user to a room ## `!admin users force-leave-room` -- Manually leave a local user from a room +Manually leave a local user from a room ## `!admin users force-leave-remote-room` -- Manually leave a remote room for a local user +Manually leave a remote room for a local user ## `!admin users force-demote` -- Forces the specified user to drop their power levels to the room default, if their permissions allow and the auth check permits +Forces the specified user to drop their power levels to the room default, if their permissions allow and the auth check permits ## `!admin users make-user-admin` -- Grant server-admin privileges to a user +Grant server-admin privileges to a user ## `!admin users put-room-tag` -- Puts a room tag for the specified user and room ID. +Puts a room tag for the specified user and room ID. This is primarily useful if you'd like to set your admin room to the special "System Alerts" section in Element as a way to permanently see your admin room without it being buried away in your favourites or rooms. To do this, you would pass your user, your admin room's internal ID, and the tag name `m.server_notice`. ## `!admin users delete-room-tag` -- Deletes the room tag for the specified user and room ID +Deletes the room tag for the specified user and room ID ## `!admin users get-room-tags` -- Gets all the room tags for the specified user and room ID +Gets all the room tags for the specified user and room ID ## `!admin users redact-event` -- Attempts to forcefully redact the specified event ID from the sender user +Attempts to forcefully redact the specified event ID from the sender user This is only valid for local users ## `!admin users force-join-list-of-local-users` -- Force joins a specified list of local users to join the specified room. +Force joins a specified list of local users to join the specified room. Specify a codeblock of usernames. @@ -134,7 +134,7 @@ Requires the `--yes-i-want-to-do-this` flag. ## `!admin users force-join-all-local-users` -- Force joins all local users to the specified room. +Force joins all local users to the specified room. At least 1 server admin must be in the room to reduce abuse. diff --git a/src/admin/admin.rs b/src/admin/admin.rs index 677810a7..4db3393a 100644 --- a/src/admin/admin.rs +++ b/src/admin/admin.rs @@ -19,43 +19,43 @@ use crate::{ #[command(name = conduwuit_core::name(), version = conduwuit_core::version())] pub enum AdminCommand { #[command(subcommand)] - /// - Commands for managing appservices + /// Commands for managing appservices Appservices(AppserviceCommand), #[command(subcommand)] - /// - Commands for managing local users + /// Commands for managing local users Users(UserCommand), #[command(subcommand)] - /// - Commands for managing registration tokens + /// Commands for managing registration tokens Token(TokenCommand), #[command(subcommand)] - /// - Commands for managing rooms + /// Commands for managing rooms Rooms(RoomCommand), #[command(subcommand)] - /// - Commands for managing federation + /// Commands for managing federation Federation(FederationCommand), #[command(subcommand)] - /// - Commands for managing the server + /// Commands for managing the server Server(ServerCommand), #[command(subcommand)] - /// - Commands for managing media + /// Commands for managing media Media(MediaCommand), #[command(subcommand)] - /// - Commands for checking integrity + /// Commands for checking integrity Check(CheckCommand), #[command(subcommand)] - /// - Commands for debugging things + /// Commands for debugging things Debug(DebugCommand), #[command(subcommand)] - /// - Low-level queries for database getters and iterators + /// Low-level queries for database getters and iterators Query(QueryCommand), } diff --git a/src/admin/appservice/mod.rs b/src/admin/appservice/mod.rs index 5e2712a9..905e42c8 100644 --- a/src/admin/appservice/mod.rs +++ b/src/admin/appservice/mod.rs @@ -8,7 +8,7 @@ use crate::admin_command_dispatch; #[derive(Debug, Subcommand)] #[admin_command_dispatch] pub enum AppserviceCommand { - /// - Register an appservice using its registration YAML + /// Register an appservice using its registration YAML /// /// This command needs a YAML generated by an appservice (such as a bridge), /// which must be provided in a Markdown code block below the command. @@ -17,7 +17,7 @@ pub enum AppserviceCommand { /// the old one. Register, - /// - Unregister an appservice using its ID + /// Unregister an appservice using its ID /// /// You can find the ID using the `list-appservices` command. Unregister { @@ -25,7 +25,7 @@ pub enum AppserviceCommand { appservice_identifier: String, }, - /// - Show an appservice's config using its ID + /// Show an appservice's config using its ID /// /// You can find the ID using the `list-appservices` command. #[clap(alias("show"))] @@ -34,7 +34,7 @@ pub enum AppserviceCommand { appservice_identifier: String, }, - /// - List all the currently registered appservices + /// List all the currently registered appservices #[clap(alias("list"))] ListRegistered, } diff --git a/src/admin/debug/mod.rs b/src/admin/debug/mod.rs index 883a629d..2d254687 100644 --- a/src/admin/debug/mod.rs +++ b/src/admin/debug/mod.rs @@ -12,18 +12,18 @@ use crate::admin_command_dispatch; #[admin_command_dispatch] #[derive(Debug, Subcommand)] pub enum DebugCommand { - /// - Echo input of admin command + /// Echo input of admin command Echo { message: Vec, }, - /// - Get the auth_chain of a PDU + /// Get the auth_chain of a PDU GetAuthChain { /// An event ID (the $ character followed by the base64 reference hash) event_id: OwnedEventId, }, - /// - Parse and print a PDU from a JSON + /// Parse and print a PDU from a JSON /// /// The PDU event is only checked for validity and is not added to the /// database. @@ -32,13 +32,13 @@ pub enum DebugCommand { /// the command. ParsePdu, - /// - Retrieve and print a PDU by EventID from the Continuwuity database + /// Retrieve and print a PDU by EventID from the Continuwuity database GetPdu { /// An event ID (a $ followed by the base64 reference hash) event_id: OwnedEventId, }, - /// - Retrieve and print a PDU by PduId from the Continuwuity database + /// Retrieve and print a PDU by PduId from the Continuwuity database GetShortPdu { /// Shortroomid integer shortroomid: ShortRoomId, @@ -47,7 +47,7 @@ pub enum DebugCommand { shorteventid: ShortEventId, }, - /// - Attempts to retrieve a PDU from a remote server. **Does not** insert + /// Attempts to retrieve a PDU from a remote server. **Does not** insert /// it into the database /// or persist it anywhere. GetRemotePdu { @@ -59,7 +59,7 @@ pub enum DebugCommand { server: OwnedServerName, }, - /// - Same as `get-remote-pdu` but accepts a codeblock newline delimited + /// Same as `get-remote-pdu` but accepts a codeblock newline delimited /// list of PDUs and a single server to fetch from GetRemotePduList { /// Argument for us to attempt to fetch all the events from the @@ -71,7 +71,7 @@ pub enum DebugCommand { force: bool, }, - /// - Gets all the room state events for the specified room. + /// Gets all the room state events for the specified room. /// /// This is functionally equivalent to `GET /// /_matrix/client/v3/rooms/{roomid}/state`, except the admin command does @@ -86,7 +86,7 @@ pub enum DebugCommand { room_id: OwnedRoomOrAliasId, }, - /// - Get and display signing keys from local cache or remote server. + /// Get and display signing keys from local cache or remote server. GetSigningKeys { server_name: Option, @@ -97,23 +97,23 @@ pub enum DebugCommand { query: bool, }, - /// - Get and display signing keys from local cache or remote server. + /// Get and display signing keys from local cache or remote server. GetVerifyKeys { server_name: Option, }, - /// - Sends a federation request to the remote server's + /// Sends a federation request to the remote server's /// `/_matrix/federation/v1/version` endpoint and measures the latency it /// took for the server to respond Ping { server: OwnedServerName, }, - /// - Forces device lists for all local and remote users to be updated (as + /// Forces device lists for all local and remote users to be updated (as /// having new keys available) ForceDeviceListUpdates, - /// - Change tracing log level/filter on the fly + /// Change tracing log level/filter on the fly /// /// This accepts the same format as the `log` config option. ChangeLogLevel { @@ -125,34 +125,34 @@ pub enum DebugCommand { reset: bool, }, - /// - Verify JSON signatures + /// Verify JSON signatures /// /// This command needs a JSON blob provided in a Markdown code block below /// the command. VerifyJson, - /// - Verify PDU + /// Verify PDU /// /// This re-verifies a PDU existing in the database found by ID. VerifyPdu { event_id: OwnedEventId, }, - /// - Prints the very first PDU in the specified room (typically + /// Prints the very first PDU in the specified room (typically /// m.room.create) FirstPduInRoom { /// The room ID room_id: OwnedRoomId, }, - /// - Prints the latest ("last") PDU in the specified room (typically a + /// Prints the latest ("last") PDU in the specified room (typically a /// message) LatestPduInRoom { /// The room ID room_id: OwnedRoomId, }, - /// - Forcefully replaces the room state of our local copy of the specified + /// Forcefully replaces the room state of our local copy of the specified /// room, with the copy (auth chain and room state events) the specified /// remote server says. /// @@ -176,7 +176,7 @@ pub enum DebugCommand { event_id: Option, }, - /// - Runs a server name through Continuwuity's true destination resolution + /// Runs a server name through Continuwuity's true destination resolution /// process /// /// Useful for debugging well-known issues @@ -187,7 +187,7 @@ pub enum DebugCommand { no_cache: bool, }, - /// - Print extended memory usage + /// Print extended memory usage /// /// Optional argument is a character mask (a sequence of characters in any /// order) which enable additional extended statistics. Known characters are @@ -196,23 +196,23 @@ pub enum DebugCommand { opts: Option, }, - /// - Print general tokio runtime metric totals. + /// Print general tokio runtime metric totals. RuntimeMetrics, - /// - Print detailed tokio runtime metrics accumulated since last command + /// Print detailed tokio runtime metrics accumulated since last command /// invocation. RuntimeInterval, - /// - Print the current time + /// Print the current time Time, - /// - List dependencies + /// List dependencies ListDependencies { #[arg(short, long)] names: bool, }, - /// - Get database statistics + /// Get database statistics DatabaseStats { property: Option, @@ -220,10 +220,10 @@ pub enum DebugCommand { map: Option, }, - /// - Trim memory usage + /// Trim memory usage TrimMemory, - /// - List database files + /// List database files DatabaseFiles { map: Option, @@ -231,7 +231,7 @@ pub enum DebugCommand { level: Option, }, - /// - Developer test stubs + /// Developer test stubs #[command(subcommand)] #[allow(non_snake_case)] #[clap(hide(true))] diff --git a/src/admin/federation/mod.rs b/src/admin/federation/mod.rs index 48f79a56..4356ef11 100644 --- a/src/admin/federation/mod.rs +++ b/src/admin/federation/mod.rs @@ -9,20 +9,20 @@ use crate::admin_command_dispatch; #[admin_command_dispatch] #[derive(Debug, Subcommand)] pub enum FederationCommand { - /// - List all rooms we are currently handling an incoming pdu from + /// List all rooms we are currently handling an incoming pdu from IncomingFederation, - /// - Disables incoming federation handling for a room. + /// Disables incoming federation handling for a room. DisableRoom { room_id: OwnedRoomId, }, - /// - Enables incoming federation handling for a room again. + /// Enables incoming federation handling for a room again. EnableRoom { room_id: OwnedRoomId, }, - /// - Fetch `/.well-known/matrix/support` from the specified server + /// Fetch `/.well-known/matrix/support` from the specified server /// /// Despite the name, this is not a federation endpoint and does not go /// through the federation / server resolution process as per-spec this is @@ -35,7 +35,7 @@ pub enum FederationCommand { server_name: OwnedServerName, }, - /// - Lists all the rooms we share/track with the specified *remote* user + /// Lists all the rooms we share/track with the specified *remote* user RemoteUserInRooms { user_id: OwnedUserId, }, diff --git a/src/admin/media/mod.rs b/src/admin/media/mod.rs index 07f570a5..47a0e539 100644 --- a/src/admin/media/mod.rs +++ b/src/admin/media/mod.rs @@ -10,20 +10,20 @@ use crate::admin_command_dispatch; #[admin_command_dispatch] #[derive(Debug, Subcommand)] pub enum MediaCommand { - /// - Deletes a single media file from our database and on the filesystem + /// Deletes a single media file from our database and on the filesystem /// via a single MXC URL or event ID (not redacted) Delete { /// The MXC URL to delete #[arg(long)] mxc: Option, - /// - The message event ID which contains the media and thumbnail MXC + /// The message event ID which contains the media and thumbnail MXC /// URLs #[arg(long)] event_id: Option, }, - /// - Deletes a codeblock list of MXC URLs from our database and on the + /// Deletes a codeblock list of MXC URLs from our database and on the /// filesystem. This will always ignore errors. DeleteList, @@ -40,33 +40,33 @@ pub enum MediaCommand { /// * Delete all remote and local media from 3 days ago, up until now: /// /// `!admin media delete-past-remote-media -a 3d - /// --yes-i-want-to-delete-local-media` + ///-yes-i-want-to-delete-local-media` #[command(verbatim_doc_comment)] DeletePastRemoteMedia { - /// - The relative time (e.g. 30s, 5m, 7d) from now within which to + /// The relative time (e.g. 30s, 5m, 7d) from now within which to /// search duration: String, - /// - Only delete media created before [duration] ago + /// Only delete media created before [duration] ago #[arg(long, short)] before: bool, - /// - Only delete media created after [duration] ago + /// Only delete media created after [duration] ago #[arg(long, short)] after: bool, - /// - Long argument to additionally delete local media + /// Long argument to additionally delete local media #[arg(long)] yes_i_want_to_delete_local_media: bool, }, - /// - Deletes all the local media from a local user on our server. This will + /// Deletes all the local media from a local user on our server. This will /// always ignore errors by default. DeleteAllFromUser { username: String, }, - /// - Deletes all remote media from the specified remote server. This will + /// Deletes all remote media from the specified remote server. This will /// always ignore errors by default. DeleteAllFromServer { server_name: OwnedServerName, diff --git a/src/admin/query/account_data.rs b/src/admin/query/account_data.rs index 426a962b..dcbc329c 100644 --- a/src/admin/query/account_data.rs +++ b/src/admin/query/account_data.rs @@ -9,7 +9,7 @@ use crate::{admin_command, admin_command_dispatch}; #[derive(Debug, Subcommand)] /// All the getters and iterators from src/database/key_value/account_data.rs pub enum AccountDataCommand { - /// - Returns all changes to the account data that happened after `since`. + /// Returns all changes to the account data that happened after `since`. ChangesSince { /// Full user ID user_id: OwnedUserId, @@ -19,7 +19,7 @@ pub enum AccountDataCommand { room_id: Option, }, - /// - Searches the account data for a specific kind. + /// Searches the account data for a specific kind. AccountDataGet { /// Full user ID user_id: OwnedUserId, diff --git a/src/admin/query/appservice.rs b/src/admin/query/appservice.rs index f9f15c25..e2f04acf 100644 --- a/src/admin/query/appservice.rs +++ b/src/admin/query/appservice.rs @@ -7,13 +7,13 @@ use crate::Context; #[derive(Debug, Subcommand)] /// All the getters and iterators from src/database/key_value/appservice.rs pub enum AppserviceCommand { - /// - Gets the appservice registration info/details from the ID as a string + /// Gets the appservice registration info/details from the ID as a string GetRegistration { /// Appservice registration ID appservice_id: String, }, - /// - Gets all appservice registrations with their ID and registration info + /// Gets all appservice registrations with their ID and registration info All, } diff --git a/src/admin/query/globals.rs b/src/admin/query/globals.rs index 6e945145..c62627d4 100644 --- a/src/admin/query/globals.rs +++ b/src/admin/query/globals.rs @@ -13,7 +13,7 @@ pub enum GlobalsCommand { LastCheckForAnnouncementsId, - /// - This returns an empty `Ok(BTreeMap<..>)` when there are no keys found + /// This returns an empty `Ok(BTreeMap<..>)` when there are no keys found /// for the server. SigningKeysFor { origin: OwnedServerName, diff --git a/src/admin/query/mod.rs b/src/admin/query/mod.rs index 5b93086b..26bd1214 100644 --- a/src/admin/query/mod.rs +++ b/src/admin/query/mod.rs @@ -28,55 +28,55 @@ use crate::admin_command_dispatch; #[derive(Debug, Subcommand)] /// Query tables from database pub enum QueryCommand { - /// - account_data.rs iterators and getters + /// account_data.rs iterators and getters #[command(subcommand)] AccountData(AccountDataCommand), - /// - appservice.rs iterators and getters + /// appservice.rs iterators and getters #[command(subcommand)] Appservice(AppserviceCommand), - /// - presence.rs iterators and getters + /// presence.rs iterators and getters #[command(subcommand)] Presence(PresenceCommand), - /// - rooms/alias.rs iterators and getters + /// rooms/alias.rs iterators and getters #[command(subcommand)] RoomAlias(RoomAliasCommand), - /// - rooms/state_cache iterators and getters + /// rooms/state_cache iterators and getters #[command(subcommand)] RoomStateCache(RoomStateCacheCommand), - /// - rooms/timeline iterators and getters + /// rooms/timeline iterators and getters #[command(subcommand)] RoomTimeline(RoomTimelineCommand), - /// - globals.rs iterators and getters + /// globals.rs iterators and getters #[command(subcommand)] Globals(GlobalsCommand), - /// - sending.rs iterators and getters + /// sending.rs iterators and getters #[command(subcommand)] Sending(SendingCommand), - /// - users.rs iterators and getters + /// users.rs iterators and getters #[command(subcommand)] Users(UsersCommand), - /// - resolver service + /// resolver service #[command(subcommand)] Resolver(ResolverCommand), - /// - pusher service + /// pusher service #[command(subcommand)] Pusher(PusherCommand), - /// - short service + /// short service #[command(subcommand)] Short(ShortCommand), - /// - raw service + /// raw service #[command(subcommand)] Raw(RawCommand), } diff --git a/src/admin/query/presence.rs b/src/admin/query/presence.rs index ccc3a431..d135593a 100644 --- a/src/admin/query/presence.rs +++ b/src/admin/query/presence.rs @@ -8,13 +8,13 @@ use crate::Context; #[derive(Debug, Subcommand)] /// All the getters and iterators from src/database/key_value/presence.rs pub enum PresenceCommand { - /// - Returns the latest presence event for the given user. + /// Returns the latest presence event for the given user. GetPresence { /// Full user ID user_id: OwnedUserId, }, - /// - Iterator of the most recent presence updates that happened after the + /// Iterator of the most recent presence updates that happened after the /// event with id `since`. PresenceSince { /// UNIX timestamp since (u64) diff --git a/src/admin/query/pusher.rs b/src/admin/query/pusher.rs index 3f294017..76a4147d 100644 --- a/src/admin/query/pusher.rs +++ b/src/admin/query/pusher.rs @@ -6,7 +6,7 @@ use crate::Context; #[derive(Debug, Subcommand)] pub enum PusherCommand { - /// - Returns all the pushers for the user. + /// Returns all the pushers for the user. GetPushers { /// Full user ID user_id: OwnedUserId, diff --git a/src/admin/query/raw.rs b/src/admin/query/raw.rs index 5165b61a..c88cba0c 100644 --- a/src/admin/query/raw.rs +++ b/src/admin/query/raw.rs @@ -20,10 +20,10 @@ use crate::{admin_command, admin_command_dispatch}; #[allow(clippy::enum_variant_names)] /// Query tables from database pub enum RawCommand { - /// - List database maps + /// List database maps RawMaps, - /// - Raw database query + /// Raw database query RawGet { /// Map name map: String, @@ -32,7 +32,7 @@ pub enum RawCommand { key: String, }, - /// - Raw database delete (for string keys) + /// Raw database delete (for string keys) RawDel { /// Map name map: String, @@ -41,7 +41,7 @@ pub enum RawCommand { key: String, }, - /// - Raw database keys iteration + /// Raw database keys iteration RawKeys { /// Map name map: String, @@ -50,7 +50,7 @@ pub enum RawCommand { prefix: Option, }, - /// - Raw database key size breakdown + /// Raw database key size breakdown RawKeysSizes { /// Map name map: Option, @@ -59,7 +59,7 @@ pub enum RawCommand { prefix: Option, }, - /// - Raw database keys total bytes + /// Raw database keys total bytes RawKeysTotal { /// Map name map: Option, @@ -68,7 +68,7 @@ pub enum RawCommand { prefix: Option, }, - /// - Raw database values size breakdown + /// Raw database values size breakdown RawValsSizes { /// Map name map: Option, @@ -77,7 +77,7 @@ pub enum RawCommand { prefix: Option, }, - /// - Raw database values total bytes + /// Raw database values total bytes RawValsTotal { /// Map name map: Option, @@ -86,7 +86,7 @@ pub enum RawCommand { prefix: Option, }, - /// - Raw database items iteration + /// Raw database items iteration RawIter { /// Map name map: String, @@ -95,7 +95,7 @@ pub enum RawCommand { prefix: Option, }, - /// - Raw database keys iteration + /// Raw database keys iteration RawKeysFrom { /// Map name map: String, @@ -108,7 +108,7 @@ pub enum RawCommand { limit: Option, }, - /// - Raw database items iteration + /// Raw database items iteration RawIterFrom { /// Map name map: String, @@ -121,7 +121,7 @@ pub enum RawCommand { limit: Option, }, - /// - Raw database record count + /// Raw database record count RawCount { /// Map name map: Option, @@ -130,7 +130,7 @@ pub enum RawCommand { prefix: Option, }, - /// - Compact database + /// Compact database Compact { #[arg(short, long, alias("column"))] map: Option>, diff --git a/src/admin/query/room_alias.rs b/src/admin/query/room_alias.rs index fac1dd0a..0dc1833a 100644 --- a/src/admin/query/room_alias.rs +++ b/src/admin/query/room_alias.rs @@ -13,13 +13,13 @@ pub enum RoomAliasCommand { alias: OwnedRoomAliasId, }, - /// - Iterator of all our local room aliases for the room ID + /// Iterator of all our local room aliases for the room ID LocalAliasesForRoom { /// Full room ID room_id: OwnedRoomId, }, - /// - Iterator of all our local aliases in our database with their room IDs + /// Iterator of all our local aliases in our database with their room IDs AllLocalAliases, } diff --git a/src/admin/query/sending.rs b/src/admin/query/sending.rs index b6350539..3d18a192 100644 --- a/src/admin/query/sending.rs +++ b/src/admin/query/sending.rs @@ -9,10 +9,10 @@ use crate::Context; #[derive(Debug, Subcommand)] /// All the getters and iterators from src/database/key_value/sending.rs pub enum SendingCommand { - /// - Queries database for all `servercurrentevent_data` + /// Queries database for all `servercurrentevent_data` ActiveRequests, - /// - Queries database for `servercurrentevent_data` but for a specific + /// Queries database for `servercurrentevent_data` but for a specific /// destination /// /// This command takes only *one* format of these arguments: @@ -34,7 +34,7 @@ pub enum SendingCommand { push_key: Option, }, - /// - Queries database for `servernameevent_data` which are the queued up + /// Queries database for `servernameevent_data` which are the queued up /// requests that will eventually be sent /// /// This command takes only *one* format of these arguments: diff --git a/src/admin/room/alias.rs b/src/admin/room/alias.rs index 80e5d297..1be4289c 100644 --- a/src/admin/room/alias.rs +++ b/src/admin/room/alias.rs @@ -9,7 +9,7 @@ use crate::Context; #[derive(Debug, Subcommand)] pub enum RoomAliasCommand { - /// - Make an alias point to a room. + /// Make an alias point to a room. Set { #[arg(short, long)] /// Set the alias even if a room is already using it @@ -22,20 +22,20 @@ pub enum RoomAliasCommand { room_alias_localpart: String, }, - /// - Remove a local alias + /// Remove a local alias Remove { /// The alias localpart to remove (`alias`, not `#alias:servername.tld`) room_alias_localpart: String, }, - /// - Show which room is using an alias + /// Show which room is using an alias Which { /// The alias localpart to look up (`alias`, not /// `#alias:servername.tld`) room_alias_localpart: String, }, - /// - List aliases currently being used + /// List aliases currently being used List { /// If set, only list the aliases for this room room_id: Option, diff --git a/src/admin/room/directory.rs b/src/admin/room/directory.rs index cdefc99b..593fdb54 100644 --- a/src/admin/room/directory.rs +++ b/src/admin/room/directory.rs @@ -7,19 +7,19 @@ use crate::{Context, PAGE_SIZE, get_room_info}; #[derive(Debug, Subcommand)] pub enum RoomDirectoryCommand { - /// - Publish a room to the room directory + /// Publish a room to the room directory Publish { /// The room id of the room to publish room_id: OwnedRoomId, }, - /// - Unpublish a room to the room directory + /// Unpublish a room to the room directory Unpublish { /// The room id of the room to unpublish room_id: OwnedRoomId, }, - /// - List rooms that are published + /// List rooms that are published List { page: Option, }, diff --git a/src/admin/room/info.rs b/src/admin/room/info.rs index e35ddb27..67b2cad4 100644 --- a/src/admin/room/info.rs +++ b/src/admin/room/info.rs @@ -8,7 +8,7 @@ use crate::{admin_command, admin_command_dispatch}; #[admin_command_dispatch] #[derive(Debug, Subcommand)] pub enum RoomInfoCommand { - /// - List joined members in a room + /// List joined members in a room ListJoinedMembers { room_id: OwnedRoomId, @@ -17,7 +17,7 @@ pub enum RoomInfoCommand { local_only: bool, }, - /// - Displays room topic + /// Displays room topic /// /// Room topics can be huge, so this is in its /// own separate command diff --git a/src/admin/room/mod.rs b/src/admin/room/mod.rs index 00baf4c8..f6a668fd 100644 --- a/src/admin/room/mod.rs +++ b/src/admin/room/mod.rs @@ -17,7 +17,7 @@ use crate::admin_command_dispatch; #[admin_command_dispatch] #[derive(Debug, Subcommand)] pub enum RoomCommand { - /// - List all rooms the server knows about + /// List all rooms the server knows about #[clap(alias = "list")] ListRooms { page: Option, @@ -37,22 +37,22 @@ pub enum RoomCommand { }, #[command(subcommand)] - /// - View information about a room we know about + /// View information about a room we know about Info(RoomInfoCommand), #[command(subcommand)] - /// - Manage moderation of remote or local rooms + /// Manage moderation of remote or local rooms Moderation(RoomModerationCommand), #[command(subcommand)] - /// - Manage rooms' aliases + /// Manage rooms' aliases Alias(RoomAliasCommand), #[command(subcommand)] - /// - Manage the room directory + /// Manage the room directory Directory(RoomDirectoryCommand), - /// - Check if we know about a room + /// Check if we know about a room Exists { room_id: OwnedRoomId, }, diff --git a/src/admin/room/moderation.rs b/src/admin/room/moderation.rs index a81bd4b0..53e3acf4 100644 --- a/src/admin/room/moderation.rs +++ b/src/admin/room/moderation.rs @@ -13,7 +13,7 @@ use crate::{admin_command, admin_command_dispatch, get_room_info}; #[admin_command_dispatch] #[derive(Debug, Subcommand)] pub enum RoomModerationCommand { - /// - Bans a room from local users joining and evicts all our local users + /// Bans a room from local users joining and evicts all our local users /// (including server /// admins) /// from the room. Also blocks any invites (local and remote) for the @@ -24,19 +24,19 @@ pub enum RoomModerationCommand { room: OwnedRoomOrAliasId, }, - /// - Bans a list of rooms (room IDs and room aliases) from a newline + /// Bans a list of rooms (room IDs and room aliases) from a newline /// delimited codeblock similar to `user deactivate-all`. Applies the same /// steps as ban-room BanListOfRooms, - /// - Unbans a room to allow local users to join again + /// Unbans a room to allow local users to join again UnbanRoom { /// The room in the format of `!roomid:example.com` or a room alias in /// the format of `#roomalias:example.com` room: OwnedRoomOrAliasId, }, - /// - List of all rooms we have banned + /// List of all rooms we have banned ListBannedRooms { #[arg(long)] /// Whether to only output room IDs without supplementary room diff --git a/src/admin/server/mod.rs b/src/admin/server/mod.rs index cf46d034..aa57c5bc 100644 --- a/src/admin/server/mod.rs +++ b/src/admin/server/mod.rs @@ -10,18 +10,18 @@ use crate::admin_command_dispatch; #[admin_command_dispatch] #[derive(Debug, Subcommand)] pub enum ServerCommand { - /// - Time elapsed since startup + /// Time elapsed since startup Uptime, - /// - Show configuration values + /// Show configuration values ShowConfig, - /// - Reload configuration values + /// Reload configuration values ReloadConfig { path: Option, }, - /// - List the features built into the server + /// List the features built into the server ListFeatures { #[arg(short, long)] available: bool, @@ -33,35 +33,35 @@ pub enum ServerCommand { comma: bool, }, - /// - Print database memory usage statistics + /// Print database memory usage statistics MemoryUsage, - /// - Clears all of Continuwuity's caches + /// Clears all of Continuwuity's caches ClearCaches, - /// - Performs an online backup of the database (only available for RocksDB + /// Performs an online backup of the database (only available for RocksDB /// at the moment) BackupDatabase, - /// - List database backups + /// List database backups ListBackups, - /// - Send a message to the admin room. + /// Send a message to the admin room. AdminNotice { message: Vec, }, - /// - Hot-reload the server + /// Hot-reload the server #[clap(alias = "reload")] ReloadMods, #[cfg(unix)] - /// - Restart the server + /// Restart the server Restart { #[arg(short, long)] force: bool, }, - /// - Shutdown the server + /// Shutdown the server Shutdown, } diff --git a/src/admin/token/mod.rs b/src/admin/token/mod.rs index c51c902f..9265a2f5 100644 --- a/src/admin/token/mod.rs +++ b/src/admin/token/mod.rs @@ -8,7 +8,7 @@ use crate::admin_command_dispatch; #[admin_command_dispatch] #[derive(Debug, Subcommand)] pub enum TokenCommand { - /// - Issue a new registration token + /// Issue a new registration token #[clap(name = "issue")] IssueToken { /// When this token will expire. @@ -16,14 +16,14 @@ pub enum TokenCommand { expires: TokenExpires, }, - /// - Revoke a registration token + /// Revoke a registration token #[clap(name = "revoke")] RevokeToken { /// The token to revoke. token: String, }, - /// - List all registration tokens + /// List all registration tokens #[clap(name = "list")] ListTokens, } diff --git a/src/admin/user/mod.rs b/src/admin/user/mod.rs index d9c9ca16..9bdbf396 100644 --- a/src/admin/user/mod.rs +++ b/src/admin/user/mod.rs @@ -9,7 +9,7 @@ use crate::admin_command_dispatch; #[admin_command_dispatch] #[derive(Debug, Subcommand)] pub enum UserCommand { - /// - Create a new user + /// Create a new user #[clap(alias = "create")] CreateUser { /// Username of the new user @@ -18,7 +18,7 @@ pub enum UserCommand { password: Option, }, - /// - Reset user password + /// Reset user password ResetPassword { /// Log out existing sessions #[arg(short, long)] @@ -29,7 +29,7 @@ pub enum UserCommand { password: Option, }, - /// - Deactivate a user + /// Deactivate a user /// /// User will be removed from all rooms by default. /// Use --no-leave-rooms to not leave all rooms by default. @@ -39,7 +39,7 @@ pub enum UserCommand { user_id: String, }, - /// - Deactivate a list of users + /// Deactivate a list of users /// /// Recommended to use in conjunction with list-local-users. /// @@ -62,7 +62,7 @@ pub enum UserCommand { force: bool, }, - /// - Forcefully log a user out of all of their devices. + /// Forcefully log a user out of all of their devices. /// /// This will invalidate all access tokens for the specified user, /// effectively logging them out from all sessions. @@ -74,7 +74,7 @@ pub enum UserCommand { user_id: String, }, - /// - Suspend a user + /// Suspend a user /// /// Suspended users are able to log in, sync, and read messages, but are not /// able to send events nor redact them, cannot change their profile, and @@ -87,7 +87,7 @@ pub enum UserCommand { user_id: String, }, - /// - Unsuspend a user + /// Unsuspend a user /// /// Reverses the effects of the `suspend` command, allowing the user to send /// messages, change their profile, create room invites, etc. @@ -96,7 +96,7 @@ pub enum UserCommand { user_id: String, }, - /// - Lock a user + /// Lock a user /// /// Locked users are unable to use their accounts beyond logging out. This /// is akin to a temporary deactivation that does not change the user's @@ -107,7 +107,7 @@ pub enum UserCommand { user_id: String, }, - /// - Unlock a user + /// Unlock a user /// /// Reverses the effects of the `lock` command, allowing the user to use /// their account again. @@ -116,13 +116,13 @@ pub enum UserCommand { user_id: String, }, - /// - Enable login for a user + /// Enable login for a user EnableLogin { /// Username of the user to enable login for user_id: String, }, - /// - Disable login for a user + /// Disable login for a user /// /// Disables login for the specified user without deactivating or locking /// their account. This prevents the user from obtaining new access tokens, @@ -132,48 +132,48 @@ pub enum UserCommand { user_id: String, }, - /// - List local users in the database + /// List local users in the database #[clap(alias = "list")] ListUsers, - /// - Lists all the rooms (local and remote) that the specified user is + /// Lists all the rooms (local and remote) that the specified user is /// joined in ListJoinedRooms { user_id: String, }, - /// - Manually join a local user to a room. + /// Manually join a local user to a room. ForceJoinRoom { user_id: String, room_id: OwnedRoomOrAliasId, }, - /// - Manually leave a local user from a room. + /// Manually leave a local user from a room. ForceLeaveRoom { user_id: String, room_id: OwnedRoomOrAliasId, }, - /// - Manually leave a remote room for a local user. + /// Manually leave a remote room for a local user. ForceLeaveRemoteRoom { user_id: String, room_id: OwnedRoomOrAliasId, via: Option, }, - /// - Forces the specified user to drop their power levels to the room + /// Forces the specified user to drop their power levels to the room /// default, if their permissions allow and the auth check permits ForceDemote { user_id: String, room_id: OwnedRoomOrAliasId, }, - /// - Grant server-admin privileges to a user. + /// Grant server-admin privileges to a user. MakeUserAdmin { user_id: String, }, - /// - Puts a room tag for the specified user and room ID. + /// Puts a room tag for the specified user and room ID. /// /// This is primarily useful if you'd like to set your admin room /// to the special "System Alerts" section in Element as a way to @@ -186,20 +186,20 @@ pub enum UserCommand { tag: String, }, - /// - Deletes the room tag for the specified user and room ID + /// Deletes the room tag for the specified user and room ID DeleteRoomTag { user_id: String, room_id: OwnedRoomId, tag: String, }, - /// - Gets all the room tags for the specified user and room ID + /// Gets all the room tags for the specified user and room ID GetRoomTags { user_id: String, room_id: OwnedRoomId, }, - /// - Attempts to forcefully redact the specified event ID from the sender + /// Attempts to forcefully redact the specified event ID from the sender /// user /// /// This is only valid for local users @@ -207,7 +207,7 @@ pub enum UserCommand { event_id: OwnedEventId, }, - /// - Force joins a specified list of local users to join the specified + /// Force joins a specified list of local users to join the specified /// room. /// /// Specify a codeblock of usernames. @@ -222,7 +222,7 @@ pub enum UserCommand { yes_i_want_to_do_this: bool, }, - /// - Force joins all local users to the specified room. + /// Force joins all local users to the specified room. /// /// At least 1 server admin must be in the room to reduce abuse. /// diff --git a/xtask/templates/admin/index.md b/xtask/templates/admin/index.md index 17f4eb6a..3032791a 100644 --- a/xtask/templates/admin/index.md +++ b/xtask/templates/admin/index.md @@ -11,5 +11,5 @@ Admin commands allow server administrators to manage the server from within thei ## Categories {%~ for category in categories %} -- [`!admin {{ category.name }}`]({{ category.name }}/) {{ category.description }} +- [`!admin {{ category.name }}`]({{ category.name }}/): {{ category.description }} {%- endfor %}