Bump deps, fix errors. Still need to fix warnings

This commit is contained in:
Joey Hines 2025-03-15 12:23:59 -06:00
parent 59e33a32a9
commit 8175444a0d
Signed by: joeyahines
GPG Key ID: 38BA6F25C94C9382
12 changed files with 1972 additions and 980 deletions

2827
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -6,30 +6,27 @@ edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
config = "0.14.0"
config = "0.15.11"
structopt = "0.3.26"
reqwest = { version = "0.12.5", features = ["json", "multipart"] }
serde = "1.0.195"
toml = "0.8.8"
rand = "0.8.5"
rand = "0.9.0"
tera = "1.19.1"
ndm = "0.9.10"
regex = "1.10.2"
magick_rust = "0.20.0"
songbird = "0.4.0"
magick_rust = "1.0.0"
songbird = "0.5.0"
json = "0.12.4"
axum = "0.7.4"
axum-macros = "0.4.1"
axum = "0.8.1"
sha3 = "0.10.8"
base64 = "0.22.0"
j_db = { version = "0.1.2", registry = "jojo-dev" }
chrono = { version = "0.4.31", features = ["serde"] }
chrono-tz = "0.8.5"
log = "0.4.20"
chrono-tz = "0.10.1"
serde_json = "1.0.113"
raas_types = { version = "0.0.9", registry = "jojo-dev"}
prost = "0.12.6"
tonic = "0.11.0"
tonic = "0.12.3"
prost = "0.13.5"
emojis = "0.6.2"
[dependencies.serenity]

View File

@ -8,8 +8,8 @@ use emojis::Group;
use raas_types::raas::bot::roll::{roll_response, Roll, RollCmd};
use raas_types::raas::resp::response::Resp;
use raas_types::raas::service::raas_client::RaasClient;
use rand::prelude::SliceRandom;
use rand::thread_rng;
use rand::prelude::IndexedRandom;
use rand::rng;
use reqwest::Client;
use serde::{Deserialize, Serialize};
use serenity::all::{CreateAttachment, CreateMessage};
@ -277,11 +277,9 @@ async fn real_roll(ctx: &Context, msg: &Message, _args: Args) -> CommandResult {
})),
};
let grpc_request = tonic::Request::new(roll_request);
msg.reply(&ctx.http, "Sent roll request, please hang on!")
.await?;
let response = client.send_request(grpc_request).await?;
let response = client.send_request(roll_request).await?;
let raas_response = response.into_inner();
@ -421,10 +419,7 @@ async fn emoji_8ball(ctx: &Context, msg: &Message) -> CommandResult {
emojis.append(&mut unicode_emojis);
let emoji_msg: Vec<String> = emojis
.choose_multiple(&mut thread_rng(), 3)
.cloned()
.collect();
let emoji_msg: Vec<String> = emojis.choose_multiple(&mut rng(), 3).cloned().collect();
msg.reply(&ctx.http, emoji_msg.join("")).await?;

View File

@ -2,8 +2,8 @@ use crate::config::GlobalData;
use crate::models::lil_fren;
use crate::models::lil_fren::{AliveState, LilFren, LilFrenState};
use crate::{command, group};
use rand::prelude::SliceRandom;
use rand::{thread_rng, Rng};
use rand::prelude::IndexedRandom;
use rand::{rng, Rng};
use serenity::client::Context;
use serenity::framework::standard::{Args, CommandResult};
use serenity::model::channel::Message;
@ -120,7 +120,7 @@ async fn feed(ctx: &Context, msg: &Message, args: Args) -> CommandResult {
if let Some(mut lil_fren) = lil_fren {
if lil_fren.is_alive() == AliveState::Alive {
let feed: f32 = thread_rng().gen_range(-0.1..=1.0);
let feed: f32 = rng().gen_range(-0.1..=1.0);
lil_fren.hunger = (lil_fren.hunger + feed).clamp(-1.0, 1.0);
let guild = msg.guild_id.unwrap();
@ -170,7 +170,7 @@ async fn give_water(ctx: &Context, msg: &Message, _args: Args) -> CommandResult
msg.reply(&ctx.http, "Lil buddy be drinking!").await?;
global_data.db.insert(lil_fren)?;
let drink = if thread_rng().gen_bool(0.20) {
let drink = if rng().gen_bool(0.20) {
":beer:"
} else {
":cup_with_straw:"
@ -200,14 +200,14 @@ async fn play(ctx: &Context, msg: &Message, _args: Args) -> CommandResult {
if let Some(mut lil_fren) = lil_fren {
if lil_fren.is_alive() == AliveState::Alive {
lil_fren.entertainment =
(lil_fren.entertainment + thread_rng().gen_range(0.10..1.0)).clamp(-1.0, 1.0);
(lil_fren.entertainment + rng().gen_range(0.10..1.0)).clamp(-1.0, 1.0);
let guild = msg.guild_id.unwrap();
let lil_fren_emoji = guild.emoji(&ctx.http, lil_fren.emoji).await?;
global_data.db.insert(lil_fren)?;
let toy = global_data.cfg.toys.choose(&mut thread_rng()).unwrap();
let toy = global_data.cfg.toys.choose(&mut rng()).unwrap();
msg.reply(&ctx.http, lil_fren::draw_feed(&lil_fren_emoji, toy))
.await?;
} else {

View File

@ -58,7 +58,7 @@ pub async fn create_motivation_image(motivation: Motivation) -> Result<Vec<u8>,
text_color_wand.set_color("white")?;
text_wand.set_fill_color(&text_color_wand);
text_wand.set_font_size(0.07 * (wand.get_image_width() as f64));
text_wand.set_text_alignment(magick_rust::bindings::AlignType_CenterAlign);
text_wand.set_text_alignment(magick_rust::AlignType::Center);
wand.annotate_image(&text_wand, text_pos_x, text_pos_y, 0.0, &text)?;
Ok(wand.write_image_blob("jpg")?)
}

View File

@ -6,8 +6,8 @@ use crate::models::motivation::MotivationConfig;
use crate::models::task::{Task, TaskType};
use crate::user::{User, UserError};
use crate::{command, group, GlobalData};
use rand::prelude::SliceRandom;
use rand::{thread_rng, Rng};
use rand::prelude::IndexedRandom;
use rand::{rng, Rng};
use serenity::all::{
parse_user_mention, CreateAttachment, CreateMessage, EditRole, GuildId, Member,
};
@ -245,7 +245,7 @@ async fn use_item(ctx: &Context, msg: &Message, args: Args) -> CommandResult {
"Yes, I am happy for you!",
"||YES||",
];
let fortune = good_fortunes.choose(&mut thread_rng()).unwrap();
let fortune = good_fortunes.choose(&mut rng()).unwrap();
msg.reply(&ctx.http, fortune.to_string()).await?;
}
@ -447,37 +447,31 @@ pub async fn restock_shop(ctx: &Context, global_data: &GlobalData) -> Result<(),
bot_user.inventory.inventory.clear();
bot_user.inventory.give_item(
ItemType::TheConceptOfLove,
thread_rng().gen_range(0..=5),
None,
);
bot_user
.inventory
.give_item(ItemType::GoodFortune, thread_rng().gen_range(0..10), None);
bot_user.inventory.give_item(
ItemType::CancelInsurance,
thread_rng().gen_range(1..=3),
None,
);
bot_user.inventory.give_item(
ItemType::LicenseToBeHorny,
thread_rng().gen_range(0..=25),
None,
);
.give_item(ItemType::TheConceptOfLove, rng().gen_range(0..=5), None);
bot_user
.inventory
.give_item(ItemType::KillGun, thread_rng().gen_range(1..=3), None);
.give_item(ItemType::GoodFortune, rng().gen_range(0..10), None);
bot_user
.inventory
.give_item(ItemType::CancelRay, thread_rng().gen_range(1..=3), None);
.give_item(ItemType::CancelInsurance, rng().gen_range(1..=3), None);
bot_user
.inventory
.give_item(ItemType::Helmet, thread_rng().gen_range(1..=3), None);
.give_item(ItemType::LicenseToBeHorny, rng().gen_range(0..=25), None);
bot_user
.inventory
.give_item(ItemType::KillGun, rng().gen_range(1..=3), None);
bot_user
.inventory
.give_item(ItemType::CancelRay, rng().gen_range(1..=3), None);
bot_user
.inventory
.give_item(ItemType::Helmet, rng().gen_range(1..=3), None);
bot_user
.inventory
.give_item(ItemType::TacticalNuke, thread_rng().gen_range(0..=1), None);
.give_item(ItemType::TacticalNuke, rng().gen_range(0..=1), None);
loop {
let mut dir = tokio::fs::read_dir(&global_data.cfg.nft_path).await?;

View File

@ -1,6 +1,6 @@
use crate::config::{BotConfig, Channel};
use crate::{command, group, GlobalData};
use rand::prelude::SliceRandom;
use rand::prelude::{IndexedRandom, SliceRandom};
use rand::thread_rng;
use regex::Regex;
use serenity::client::Context;

View File

@ -2,8 +2,8 @@ use crate::error::Error;
use base64::{engine::general_purpose, Engine as _};
use j_db::database::Database;
use j_db::model::JdbModel;
use rand::distributions::Alphanumeric;
use rand::{thread_rng, Rng};
use rand::distr::Alphanumeric;
use rand::{rng, Rng};
use serde::{Deserialize, Serialize};
use serenity::model::id::UserId;
use sha3::digest::FixedOutput;
@ -33,7 +33,7 @@ impl JdbModel for Apikey {
impl Apikey {
pub fn new(name: &str, user_id: Option<UserId>) -> (Self, String) {
let secret: String = thread_rng()
let secret: String = rng()
.sample_iter(&Alphanumeric)
.take(64)
.map(char::from)

View File

@ -1,8 +1,9 @@
use crate::error::Error;
use j_db::database::Database;
use j_db::model::JdbModel;
use rand::prelude::IndexedRandom;
use rand::rng;
use rand::seq::SliceRandom;
use rand::thread_rng;
use serde::{Deserialize, Serialize};
use std::collections::HashMap;
use tera::{Context, Tera};
@ -27,7 +28,7 @@ impl RandomResponseTemplate {
context.insert("target", target);
for (key, words) in &self.word_bank {
context.insert(key, &words.choose(&mut thread_rng()).unwrap());
context.insert(key, &words.choose(&mut rng()).unwrap());
}
Ok(Tera::one_off(&self.template, &context, false)?)
@ -50,7 +51,7 @@ impl RandomResponseTemplate {
target: &str,
) -> Result<Option<String>, Error> {
let templates = Self::get_all_responses_for_type(db, resp_type)?;
let template = templates.choose(&mut thread_rng());
let template = templates.choose(&mut rng());
if let Some(template) = template {
Ok(Some(template.render(target)?))

View File

@ -2,8 +2,8 @@ use crate::config::GlobalData;
use crate::error::Error;
use j_db::database::Database;
use j_db::model::JdbModel;
use rand::distributions::{Distribution, Standard};
use rand::{thread_rng, Rng};
use rand::distr::{Distribution, StandardUniform};
use rand::{rng, Rng};
use serde::{Deserialize, Serialize};
use serenity::model::guild::Emoji;
use serenity::model::id::{EmojiId, GuildId};
@ -190,7 +190,7 @@ pub enum LilFrenState {
PhasedIntoYourReality,
}
impl Distribution<LilFrenState> for Standard {
impl Distribution<LilFrenState> for StandardUniform {
fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> LilFrenState {
match rng.gen_range(0..10) {
0 => LilFrenState::Standing,
@ -251,8 +251,8 @@ impl LilFren {
thirst: 1.0,
entertainment: 1.0,
state: LilFrenState::Standing,
smarts: thread_rng().gen_range(0.0..0.5),
metabolism: thread_rng().gen_range(0.2..0.75),
smarts: rng().gen_range(0.0..0.5),
metabolism: rng().gen_range(0.2..0.75),
}
}
@ -296,9 +296,9 @@ impl LilFren {
lil_fren.thirst =
(lil_fren.entertainment + entertainment_diff * self.smarts).clamp(-1.0, 1.0);
if thread_rng().gen_bool(0.75) {
if rng().gen_bool(0.75) {
println!("fren is now {:?}", self.state);
lil_fren.state = thread_rng().gen();
lil_fren.state = rng().random();
}
db.insert(lil_fren)?;

View File

@ -4,8 +4,8 @@ use crate::models::random::RandomConfig;
use j_db::database::Database;
use j_db::error::JDbError;
use j_db::model::JdbModel;
use rand::prelude::SliceRandom;
use rand::thread_rng;
use rand::prelude::IndexedRandom;
use rand::rng;
use serde::{Deserialize, Serialize};
use std::fmt::Debug;
@ -90,9 +90,7 @@ impl MotivationConfig {
}
}
let image = images
.choose(&mut thread_rng())
.ok_or(Error::NoAlbumFound)?;
let image = images.choose(&mut rng()).ok_or(Error::NoAlbumFound)?;
let actions = RandomConfig::get_random(db, ACTION_RANDOM_GROUP)?.unwrap_or_default();
let goals = RandomConfig::get_random(db, GOAL_RANDOM_GROUP)?.unwrap_or_default();

View File

@ -1,7 +1,7 @@
use crate::error::Error;
use j_db::database::Database;
use j_db::model::JdbModel;
use rand::distributions::WeightedIndex;
use rand::distr::weighted::WeightedIndex;
use rand::prelude::Distribution;
use rand::thread_rng;
use serde::{Deserialize, Serialize};