diff options
| author | seth <[email protected]> | 2024-08-16 22:14:16 -0400 |
|---|---|---|
| committer | GitHub <[email protected]> | 2024-08-17 02:14:16 +0000 |
| commit | bbc00edc6508ea1910c4d9e6a272f7859900950d (patch) | |
| tree | 538fe23940cb6bca8afa48059e502bfa7d5608cd /crates/bot-commands/src/about.rs | |
| parent | 66ea6f8c225cc2273cfbfb1b948604c170a78e8c (diff) | |
end of summer refactor (#31)
* crates: `bot-*` -> `discord-bot`
I didn't really need all these crates to be split :/
* discord-bot: revamp http impl
also handles the new errors reported by teawieAPI
* crates: split http backend
this can be reused easily
* git-tracker: short-circuit boolean logic
We don't need to check if the commit is a descendant of the HEAD of the
branch if it *is* the HEAD
* nix: fenix -> nixpkgs
* treefmt: add actionlint
* nix: use docker arch names for containers
* ci: use actions-rust-lang actions
* nix: drop ci dev shell
* git-tracker: init ManagedRepository
this logic can be shared
* ci: use nix for clippy scan
* discord-bot: better handle unmerged PRs
* ci: fix treefmt check
* nix: fix clippy check
* .env.template: update crate names
* git-tracker: use remote name for remote name
i was half asleep
* discord-bot: handle merged PRs that aren't found in any tracked branches
* git-tracker: make collect_statuses_in() return a Vec
* discord-bot: add more PR info with response
fixes #18
Diffstat (limited to 'crates/bot-commands/src/about.rs')
| -rw-r--r-- | crates/bot-commands/src/about.rs | 44 |
1 files changed, 0 insertions, 44 deletions
diff --git a/crates/bot-commands/src/about.rs b/crates/bot-commands/src/about.rs deleted file mode 100644 index 2e5efae..0000000 --- a/crates/bot-commands/src/about.rs +++ /dev/null @@ -1,44 +0,0 @@ -use bot_error::Error; -use bot_http::TeawieClientExt; - -use serenity::builder::{ - CreateCommand, CreateEmbed, CreateEmbedFooter, CreateInteractionResponse, - CreateInteractionResponseMessage, -}; -use serenity::model::application::{CommandInteraction, InstallationContext}; -use serenity::prelude::Context; - -const VERSION: &str = env!("CARGO_PKG_VERSION"); -const REPOSITORY: &str = env!("CARGO_PKG_REPOSITORY"); - -pub async fn respond( - ctx: &Context, - http: &bot_http::Client, - command: &CommandInteraction, -) -> Result<(), Error> { - let mut embed = CreateEmbed::new() - .title("About nixpkgs-tracker-bot") - .description("I help track what branches PRs to nixpkgs have reached. If you've used [Nixpkgs Pull Request Tracker](https://nixpk.gs/pr-tracker.html), you probably know what this is about.") - .fields([ - ("Version", VERSION, true), - ("Source code", &format!("[getchoo/nixpkgs-tracker-bot]({REPOSITORY})"), true), - ("Issues/Feature Requests", &format!("[getchoo/nixpkgs-tracker-bot/issues]({REPOSITORY}/issues)"), true) - ]); - - if let Some(teawie_url) = http.random_teawie().await? { - let footer = CreateEmbedFooter::new("Images courtesy of @sympathytea"); - embed = embed.image(teawie_url).footer(footer); - }; - - let message = CreateInteractionResponseMessage::new().embed(embed); - let response = CreateInteractionResponse::Message(message); - command.create_response(&ctx, response).await?; - - Ok(()) -} - -pub fn register() -> CreateCommand { - CreateCommand::new("about") - .description("Learn more about me") - .add_integration_type(InstallationContext::User) -} |
