From 4bebfeb74cf0786916b759d043940ac6a1ad3093 Mon Sep 17 00:00:00 2001 From: coco875 Date: Wed, 14 Jan 2026 16:09:50 +0100 Subject: [PATCH 1/9] update azalea --- Cargo.toml | 4 ++-- src/bot.rs | 66 ++++++++++++++++++++++++++++++------------------------ 2 files changed, 39 insertions(+), 31 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 44b7004..d44ada4 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -5,14 +5,14 @@ edition = "2024" license = "MIT" [dependencies] -azalea = { git = "https://github.com/azalea-rs/azalea", rev = "f464f01" } +azalea = { git = "https://github.com/azalea-rs/azalea", rev = "1accbac" } tokio = { version = "1.48", features = ["full"] } serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" anyhow = "1.0" thiserror = "2.0" clap = { version = "4.5", features = ["derive"] } -colored = "2.1" +colored = "3.0" tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } parking_lot = "0.12" diff --git a/src/bot.rs b/src/bot.rs index 19b3ce2..a9aec6a 100644 --- a/src/bot.rs +++ b/src/bot.rs @@ -63,41 +63,49 @@ impl TestBot { let client_handle = state.client_handle.clone(); let in_game = state.in_game.clone(); - // Spawn the bot in a background task + // Spawn the bot in a background thread with LocalSet (required by new azalea version) let server_owned = server.to_string(); - tokio::spawn(async move { - async fn handler(bot: Client, event: Event, state: State) -> anyhow::Result<()> { - match event { - Event::Init => { - *state.client_handle.write() = Some(bot.clone()); - tracing::info!("Bot initialized"); - } - Event::Login => { - // Login event means we're fully in the game state - state.in_game.store(true, Ordering::SeqCst); - tracing::info!("Bot in game state"); - } - Event::Chat(m) => { - // Extract the message content and send it through the channel - let message = m.message().to_string(); - if let Some(ref tx) = state.chat_tx { - let _ = tx.send(message); + std::thread::spawn(move || { + let rt = tokio::runtime::Builder::new_current_thread() + .enable_all() + .build() + .expect("Failed to create tokio runtime"); + + let local = tokio::task::LocalSet::new(); + local.block_on(&rt, async move { + async fn handler(bot: Client, event: Event, state: State) -> anyhow::Result<()> { + match event { + Event::Init => { + *state.client_handle.write() = Some(bot.clone()); + tracing::info!("Bot initialized"); + } + Event::Login => { + // Login event means we're fully in the game state + state.in_game.store(true, Ordering::SeqCst); + tracing::info!("Bot in game state"); + } + Event::Chat(m) => { + // Extract the message content and send it through the channel + let message = m.message().to_string(); + if let Some(ref tx) = state.chat_tx { + let _ = tx.send(message); + } } + _ => {} } - _ => {} + Ok(()) } - Ok(()) - } - let result = ClientBuilder::new() - .set_handler(handler) - .set_state(state) - .start(account, server_owned.as_str()) - .await; + let result = ClientBuilder::new() + .set_handler(handler) + .set_state(state) + .start(account, server_owned.as_str()) + .await; - if let Err(e) = result { - tracing::error!("Bot connection error: {}", e); - } + if let AppExit::Error(e) = result { + tracing::error!("Bot connection error: {}", e); + } + }); }); // Wait for client to initialize From 8604af0f7c0e7fbe84fc1f7e271d3fca323cf843 Mon Sep 17 00:00:00 2001 From: coco875 Date: Wed, 14 Jan 2026 16:28:53 +0100 Subject: [PATCH 2/9] change paper to fabric and update to 1.21.11 --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 7a9b8c2..ea94d1e 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -42,7 +42,7 @@ jobs: mkdir -p minecraft-server cd minecraft-server # Download Paper MC 1.21.9 (latest compatible version) - wget -O server.jar https://fill-data.papermc.io/v1/objects/aec002e77c7566e49494fdf05430b96078ffd1d7430e652d4f338fef951e7a10/paper-1.21.9-59.jar + wget -O server.jar https://meta.fabricmc.net/v2/versions/loader/1.21.11/0.18.4/1.1.1/server/jar echo "eula=true" > eula.txt - name: Configure Minecraft Server From 7d47cbd30e024f2739eba39f4701595a7bffa224 Mon Sep 17 00:00:00 2001 From: coco875 Date: Sun, 18 Jan 2026 22:47:14 +0100 Subject: [PATCH 3/9] Update main.rs --- src/main.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main.rs b/src/main.rs index c243e53..35eb2e7 100644 --- a/src/main.rs +++ b/src/main.rs @@ -134,8 +134,10 @@ async fn main() -> Result<()> { if test_files.is_empty() { let location = if !args.tags.is_empty() { format!("with tags: {:?}", args.tags) + } else if let Some(ref path) = args.path { + format!("at: {}", path.display()) } else { - format!("at: {}", args.path.as_ref().unwrap().display()) + "at default path: FlintBenchmark/tests".to_string() }; eprintln!("{} No test files found {}", "Error:".red().bold(), location); std::process::exit(1); From 3f07ed8b46a63bc514424f591287f484c530172e Mon Sep 17 00:00:00 2001 From: coco875 Date: Sun, 18 Jan 2026 22:47:16 +0100 Subject: [PATCH 4/9] Update Cargo.lock --- Cargo.lock | 585 +++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 438 insertions(+), 147 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index bd1da68..877021e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -146,17 +146,6 @@ dependencies = [ "slab", ] -[[package]] -name = "async-recursion" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "async-task" version = "4.7.1" @@ -192,10 +181,32 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" +[[package]] +name = "aws-lc-rs" +version = "1.15.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e84ce723ab67259cfeb9877c6a639ee9eb7a27b28123abd71db7f0d5d0cc9d86" +dependencies = [ + "aws-lc-sys", + "zeroize", +] + +[[package]] +name = "aws-lc-sys" +version = "0.36.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a442ece363113bd4bd4c8b18977a7798dd4d3c3383f34fb61936960e8f4ad8" +dependencies = [ + "cc", + "cmake", + "dunce", + "fs_extra", +] + [[package]] name = "azalea" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "azalea-auth", "azalea-block", @@ -221,9 +232,9 @@ dependencies = [ "num-format", "num-traits", "parking_lot", + "radix-heap", "rustc-hash", "serde", - "thiserror 2.0.17", "tokio", "tracing", "uuid", @@ -231,8 +242,8 @@ dependencies = [ [[package]] name = "azalea-auth" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "azalea-buf", "azalea-crypto", @@ -241,7 +252,6 @@ dependencies = [ "crypto-bigint", "crypto-primes", "indexmap", - "md-5", "reqwest", "rsa", "serde", @@ -255,8 +265,8 @@ dependencies = [ [[package]] name = "azalea-block" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "azalea-block-macros", "azalea-buf", @@ -265,8 +275,8 @@ dependencies = [ [[package]] name = "azalea-block-macros" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "proc-macro2", "quote", @@ -275,8 +285,8 @@ dependencies = [ [[package]] name = "azalea-brigadier" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "azalea-buf", "azalea-chat", @@ -285,8 +295,8 @@ dependencies = [ [[package]] name = "azalea-buf" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "azalea-buf-macros", "byteorder", @@ -300,8 +310,8 @@ dependencies = [ [[package]] name = "azalea-buf-macros" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "proc-macro2", "quote", @@ -310,8 +320,8 @@ dependencies = [ [[package]] name = "azalea-chat" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "azalea-buf", "azalea-language", @@ -324,8 +334,8 @@ dependencies = [ [[package]] name = "azalea-client" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "async-compat", "azalea-auth", @@ -345,6 +355,7 @@ dependencies = [ "bevy_log", "bevy_tasks", "bevy_time", + "bevy_utils", "chrono", "derive_more", "indexmap", @@ -362,14 +373,15 @@ dependencies = [ [[package]] name = "azalea-core" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "azalea-buf", "azalea-chat", "azalea-registry", "bevy_ecs", "crc32c", + "derive_more", "indexmap", "nohash-hasher", "num-traits", @@ -382,14 +394,16 @@ dependencies = [ [[package]] name = "azalea-crypto" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "aes", "azalea-buf", "cfb8", + "md-5", "num-bigint", "rand 0.10.0-rc.5", + "rand_core 0.10.0-rc-2", "rsa", "rsa_public_encrypt_pkcs1", "sha1", @@ -399,10 +413,9 @@ dependencies = [ [[package]] name = "azalea-entity" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ - "azalea-auth", "azalea-block", "azalea-buf", "azalea-chat", @@ -416,7 +429,6 @@ dependencies = [ "enum-as-inner", "nohash-hasher", "parking_lot", - "simdnbt", "thiserror 2.0.17", "tracing", "uuid", @@ -424,8 +436,8 @@ dependencies = [ [[package]] name = "azalea-inventory" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "azalea-auth", "azalea-buf", @@ -442,8 +454,8 @@ dependencies = [ [[package]] name = "azalea-inventory-macros" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "proc-macro2", "quote", @@ -452,8 +464,8 @@ dependencies = [ [[package]] name = "azalea-language" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "compact_str", "serde_json", @@ -461,8 +473,8 @@ dependencies = [ [[package]] name = "azalea-physics" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "azalea-block", "azalea-core", @@ -478,10 +490,9 @@ dependencies = [ [[package]] name = "azalea-protocol" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ - "async-recursion", "azalea-auth", "azalea-block", "azalea-brigadier", @@ -493,13 +504,13 @@ dependencies = [ "azalea-inventory", "azalea-protocol-macros", "azalea-registry", - "azalea-world", "bevy_ecs", "flate2", "futures", "futures-lite", "hickory-resolver", "indexmap", + "reqwest", "serde", "serde_json", "simdnbt", @@ -513,8 +524,8 @@ dependencies = [ [[package]] name = "azalea-protocol-macros" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "proc-macro2", "quote", @@ -523,8 +534,8 @@ dependencies = [ [[package]] name = "azalea-registry" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "azalea-buf", "azalea-registry-macros", @@ -534,8 +545,8 @@ dependencies = [ [[package]] name = "azalea-registry-macros" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "quote", "syn", @@ -543,8 +554,8 @@ dependencies = [ [[package]] name = "azalea-world" -version = "0.14.0+mc1.21.10" -source = "git+https://github.com/azalea-rs/azalea?rev=f464f01#f464f0152a6450fafc86e1dc993b90e12e395fe7" +version = "0.15.0+mc1.21.11" +source = "git+https://github.com/azalea-rs/azalea?rev=1accbac#1accbac964168af5fa0d87cb170389f0a9d01363" dependencies = [ "azalea-block", "azalea-buf", @@ -556,7 +567,6 @@ dependencies = [ "parking_lot", "rustc-hash", "serde", - "thiserror 2.0.17", "tracing", ] @@ -580,9 +590,9 @@ checksum = "55248b47b0caf0546f7988906588779981c43bb1bc9d0c44087278f80cdb44ba" [[package]] name = "bevy_app" -version = "0.17.2" +version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f582409b4ed3850d9b66ee94e71a0e2c20e7068121d372530060c4dfcba66fa" +checksum = "8e4fc5dfe9d1d9b8233e1878353b5e66a3f5910c2131d3abf68f9a4116b2d433" dependencies = [ "bevy_derive", "bevy_ecs", @@ -603,9 +613,9 @@ dependencies = [ [[package]] name = "bevy_derive" -version = "0.17.2" +version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8c733807158f8fcac68e23222e69ed91a6492ae9410fc2c145b9bb182cfd63e" +checksum = "f9396b256b366a43d7f61d1f230cdab0a512fb4712cbf7d688f3d6fce4c5ea8a" dependencies = [ "bevy_macro_utils", "quote", @@ -614,9 +624,9 @@ dependencies = [ [[package]] name = "bevy_ecs" -version = "0.17.2" +version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69d929d32190cfcde6efd2df493601c4dbc18a691fd9775a544c951c3c112e1a" +checksum = "a7dd5229dd00d00e70ac6b2fc0a139961252f6ce07d3d268cfcac0da86d5bde4" dependencies = [ "arrayvec", "bevy_ecs_macros", @@ -642,9 +652,9 @@ dependencies = [ [[package]] name = "bevy_ecs_macros" -version = "0.17.2" +version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6eeddfb80a2e000663e87be9229c26b4da92bddbc06c8776bc0d1f4a7f679079" +checksum = "c4d83bdd2285af4867e76c691406e0a4b55611b583d0c45b6ac7bcec1b45fd48" dependencies = [ "bevy_macro_utils", "proc-macro2", @@ -654,9 +664,9 @@ dependencies = [ [[package]] name = "bevy_log" -version = "0.17.2" +version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ae217a035714a37b779487f82edc4c7c1223f7088d7ad94054f29f524d61c51" +checksum = "b1a2d4ea086ac4663ab9dfb056c7b85eee39e18f7e3e9a4ae6e39897eaa155c5" dependencies = [ "android_log-sys", "bevy_app", @@ -672,9 +682,9 @@ dependencies = [ [[package]] name = "bevy_macro_utils" -version = "0.17.2" +version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17dbc3f8948da58b3c17767d20fd3cd35fe4721ed19a9a3204a6f1d6c9951bdd" +checksum = "62d984f9f8bd0f0d9fb020492a955e641e30e7a425f3588bf346cb3e61fec3c3" dependencies = [ "parking_lot", "proc-macro2", @@ -685,9 +695,9 @@ dependencies = [ [[package]] name = "bevy_platform" -version = "0.17.2" +version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10cf8cda162688c95250e74cffaa1c3a04597f105d4ca35554106f107308ea57" +checksum = "4691af6d7cfd1b5deb2fc926a43a180a546cdc3fe1e5a013fcee60db9bb2c81f" dependencies = [ "critical-section", "foldhash", @@ -706,15 +716,15 @@ dependencies = [ [[package]] name = "bevy_ptr" -version = "0.17.2" +version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28ab4074e7b781bab84e9b0a41ede245d673d1f75646ce0db27643aedcfb3a85" +checksum = "17d24d7906c7de556033168b3485de36c59049fbaef0c2c44c715a23e0329b10" [[package]] name = "bevy_reflect" -version = "0.17.2" +version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "333df3f5947b7e62728eb5c0b51d679716b16c7c5283118fed4563f13230954e" +checksum = "b5472b91928c0f3e4e3988c0d036b00719f19520f53a0c3f8c2af72f00e693c5" dependencies = [ "assert_type_match", "bevy_platform", @@ -738,9 +748,9 @@ dependencies = [ [[package]] name = "bevy_reflect_derive" -version = "0.17.2" +version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0205dce9c5a4d8d041b263bcfd96e9d9d6f3d49416e12db347ab5778b3071fe1" +checksum = "083784255162fa39960aa3cf3c23af0e515db2daa7f2e796ae34df993f4d3f6c" dependencies = [ "bevy_macro_utils", "indexmap", @@ -752,9 +762,9 @@ dependencies = [ [[package]] name = "bevy_tasks" -version = "0.17.2" +version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18839182775f30d26f0f84d9de85d25361bb593c99517a80b64ede6cbaf41adc" +checksum = "bcbbfa5a58a16c4228434d3018c23fde3d78dcd76ec5f5b2b482a21f4b158dd3" dependencies = [ "async-channel", "async-executor", @@ -771,9 +781,9 @@ dependencies = [ [[package]] name = "bevy_time" -version = "0.17.2" +version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a52edd3d30ed94074f646ba1c9914e407af9abe5b6fb7a4322c855341a536cc" +checksum = "32835c3dbe082fbbe7d4f2f37f655073421f2882d4320ac2d59f922474260de4" dependencies = [ "bevy_app", "bevy_ecs", @@ -786,9 +796,9 @@ dependencies = [ [[package]] name = "bevy_utils" -version = "0.17.2" +version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "080254083c74d5f6eb0649d7cd6181bda277e8fe3c509ec68990a5d56ec23f24" +checksum = "789d04f88c764877a4552e07745b402dbc45f5d0545e6d102558f2f1752a1d89" dependencies = [ "bevy_platform", "disqualified", @@ -865,9 +875,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.10.1" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" +checksum = "b35204fbdc0b3f4446b89fc1ac2cf84a8a68971995d0bf2e925ec7cd960f9cb3" [[package]] name = "castaway" @@ -880,14 +890,22 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.45" +version = "1.2.53" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35900b6c8d709fb1d854671ae27aeaa9eec2f8b01b364e1619a40da3e6fe2afe" +checksum = "755d2fce177175ffca841e9a06afdb2c4ab0f593d53b4dee48147dfaade85932" dependencies = [ "find-msvc-tools", + "jobserver", + "libc", "shlex", ] +[[package]] +name = "cesu8" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" + [[package]] name = "cfb8" version = "0.8.1" @@ -980,6 +998,15 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1d728cc89cf3aee9ff92b05e62b19ee65a02b5702cff7d5a377e32c6ae29d8d" +[[package]] +name = "cmake" +version = "0.1.57" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75443c44cd6b379beb8c5b45d85d0773baf31cce901fe7bb252f4eff3008ef7d" +dependencies = [ + "cc", +] + [[package]] name = "colorchoice" version = "1.0.4" @@ -988,12 +1015,21 @@ checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" [[package]] name = "colored" -version = "2.2.0" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "117725a109d387c937a1533ce01b450cbde6b88abceea8473c4d7a85853cda3c" +checksum = "faf9468729b8cbcea668e36183cb69d317348c2e08e994829fb56ebfdfbaac34" dependencies = [ - "lazy_static", - "windows-sys 0.59.0", + "windows-sys 0.61.2", +] + +[[package]] +name = "combine" +version = "4.6.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" +dependencies = [ + "bytes", + "memchr", ] [[package]] @@ -1037,6 +1073,31 @@ version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0dabb6555f92fb9ee4140454eb5dcd14c7960e1225c6d1a6cc361f032947713e" +[[package]] +name = "convert_case" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "633458d4ef8c78b72454de2d54fd6ab2e60f9e02be22f3c6104cdc8a4e0fceb9" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "core-foundation" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2a6cd9ae233e7f62ba4e9353e81a88df7fc8a5987b8d445b4d90c879bd156f6" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" + [[package]] name = "cpufeatures" version = "0.2.17" @@ -1176,21 +1237,23 @@ dependencies = [ [[package]] name = "derive_more" -version = "2.0.1" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +checksum = "d751e9e49156b02b44f9c1815bcb94b984cdcc4396ecc32521c739452808b134" dependencies = [ "derive_more-impl", ] [[package]] name = "derive_more-impl" -version = "2.0.1" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" +checksum = "799a97264921d8623a957f6c3b9011f3b5492f557bbb7a5a19b7fa6d06ba8dcb" dependencies = [ + "convert_case", "proc-macro2", "quote", + "rustc_version", "syn", "unicode-xid", ] @@ -1251,6 +1314,12 @@ version = "2.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "117240f60069e65410b3ae1bb213295bd828f707b5bec6596a1afc8793ce0cbc" +[[package]] +name = "dunce" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" + [[package]] name = "enum-as-inner" version = "0.6.1" @@ -1309,9 +1378,9 @@ checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" [[package]] name = "find-msvc-tools" -version = "0.1.4" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52051878f80a721bb68ebfbc930e07b65ba72f2da88968ea5c06fd6ca3d3a127" +checksum = "8591b0bcc8a98a64310a2fae1bb3e9b8564dd10e381e6e28010fde8e8e8568db" [[package]] name = "fixedbitset" @@ -1333,7 +1402,7 @@ dependencies = [ [[package]] name = "flint-core" version = "0.1.0" -source = "git+https://github.com/FlintTestMC/flint-core?rev=3bef5a6#3bef5a6921873aee91ba5d20b20392eb2fe084d5" +source = "git+https://github.com/FlintTestMC/flint-core?rev=640d118#640d1180d7075bf62e9128e6e48d9f26404e202b" dependencies = [ "anyhow", "serde", @@ -1380,6 +1449,12 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "fs_extra" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" + [[package]] name = "futures" version = "0.3.31" @@ -1539,12 +1614,13 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.16.0" +version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" +checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" dependencies = [ "equivalent", "serde", + "serde_core", ] [[package]] @@ -1694,7 +1770,6 @@ dependencies = [ "tokio", "tokio-rustls", "tower-service", - "webpki-roots", ] [[package]] @@ -1825,9 +1900,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.12.0" +version = "2.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6717a8d2a5a929a1a2eb43a12812498ed141a0bcfb7e8f7844fbdbe4303bba9f" +checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017" dependencies = [ "equivalent", "hashbrown", @@ -1882,6 +1957,38 @@ version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" +[[package]] +name = "jni" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" +dependencies = [ + "cesu8", + "cfg-if", + "combine", + "jni-sys", + "log", + "thiserror 1.0.69", + "walkdir", + "windows-sys 0.45.0", +] + +[[package]] +name = "jni-sys" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" + +[[package]] +name = "jobserver" +version = "0.1.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33" +dependencies = [ + "getrandom 0.3.4", + "libc", +] + [[package]] name = "js-sys" version = "0.3.82" @@ -2163,6 +2270,12 @@ version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" +[[package]] +name = "openssl-probe" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f50d9b3dabb09ecd771ad0aa242ca6894994c130308ca3d7684634df8037391" + [[package]] name = "parking" version = "2.2.1" @@ -2194,9 +2307,9 @@ dependencies = [ [[package]] name = "pastey" -version = "0.1.1" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35fb2e5f958ec131621fdd531e9fc186ed768cbe395337403ae56c17a74c68ec" +checksum = "b867cad97c0791bbd3aaa6472142568c6c9e8f71937e98379f584cfb0cf35bec" [[package]] name = "pem-rfc7468" @@ -2300,9 +2413,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.103" +version = "1.0.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ee95bc4ef87b8d5ba32e8b7714ccc834865276eab0aed5c9958d00ec45f49e8" +checksum = "535d180e0ecab6268a3e718bb9fd44db66bbbc256257165fc699dadf70d16fe7" dependencies = [ "unicode-ident", ] @@ -2333,6 +2446,7 @@ version = "0.11.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f1906b49b0c3bc04b5fe5d86a77925ae6524a19b816ae38ce1e426255f1d8a31" dependencies = [ + "aws-lc-rs", "bytes", "getrandom 0.3.4", "lru-slab", @@ -2377,6 +2491,12 @@ version = "5.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" +[[package]] +name = "radix-heap" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59ffec9df464013295b499298811e6a3de31bf8128092135826517db12dee601" + [[package]] name = "rand" version = "0.8.5" @@ -2493,9 +2613,9 @@ checksum = "7a2d987857b319362043e95f5353c0535c1f58eec5336fdfcf626430af7def58" [[package]] name = "reqwest" -version = "0.12.24" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d0946410b9f7b082a427e4ef5c8ff541a88b357bc6c637c40db3a68ac70a36f" +checksum = "04e9018c9d814e5f30cc16a0f03271aeab3571e609612d9fe78c1aa8d11c2f62" dependencies = [ "base64", "bytes", @@ -2513,6 +2633,7 @@ dependencies = [ "quinn", "rustls", "rustls-pki-types", + "rustls-platform-verifier", "serde", "serde_json", "serde_urlencoded", @@ -2526,7 +2647,6 @@ dependencies = [ "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "webpki-roots", ] [[package]] @@ -2601,14 +2721,26 @@ version = "0.23.35" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "533f54bc6a7d4f647e46ad909549eda97bf5afc1585190ef692b4286b198bd8f" dependencies = [ + "aws-lc-rs", "once_cell", - "ring", "rustls-pki-types", "rustls-webpki", "subtle", "zeroize", ] +[[package]] +name = "rustls-native-certs" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "612460d5f7bea540c490b2b6395d8e34a953e52b491accd6c86c8164c5932a63" +dependencies = [ + "openssl-probe", + "rustls-pki-types", + "schannel", + "security-framework", +] + [[package]] name = "rustls-pki-types" version = "1.13.0" @@ -2619,12 +2751,40 @@ dependencies = [ "zeroize", ] +[[package]] +name = "rustls-platform-verifier" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d99feebc72bae7ab76ba994bb5e121b8d83d910ca40b36e0921f53becc41784" +dependencies = [ + "core-foundation", + "core-foundation-sys", + "jni", + "log", + "once_cell", + "rustls", + "rustls-native-certs", + "rustls-platform-verifier-android", + "rustls-webpki", + "security-framework", + "security-framework-sys", + "webpki-root-certs", + "windows-sys 0.61.2", +] + +[[package]] +name = "rustls-platform-verifier-android" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f87165f0995f63a9fbeea62b64d10b4d9d8e78ec6d7d51fb2125fda7bb36788f" + [[package]] name = "rustls-webpki" version = "0.103.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2ffdfa2f5286e2247234e03f680868ac2815974dc39e00ea15adc445d0aafe52" dependencies = [ + "aws-lc-rs", "ring", "rustls-pki-types", "untrusted", @@ -2642,12 +2802,53 @@ version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "schannel" +version = "0.1.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "891d81b926048e76efe18581bf793546b4c0eaf8448d72be8de2bbee5fd166e1" +dependencies = [ + "windows-sys 0.61.2", +] + [[package]] name = "scopeguard" version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" +[[package]] +name = "security-framework" +version = "3.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3297343eaf830f66ede390ea39da1d462b6b0c1b000f420d0a83f898bbbe6ef" +dependencies = [ + "bitflags", + "core-foundation", + "core-foundation-sys", + "libc", + "security-framework-sys", +] + +[[package]] +name = "security-framework-sys" +version = "2.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc1f0cbffaac4852523ce30d8bd3c5cdc873501d96ff467ca09b6767bb8cd5c0" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "semver" version = "1.0.27" @@ -2686,15 +2887,15 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.145" +version = "1.0.149" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c" +checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86" dependencies = [ "itoa", "memchr", - "ryu", "serde", "serde_core", + "zmij", ] [[package]] @@ -2793,8 +2994,9 @@ dependencies = [ [[package]] name = "simdnbt" -version = "0.8.0" -source = "git+https://github.com/azalea-rs/simdnbt#3473e8e1f4bfc7f9cd6409430a37d006ca7b723d" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3260d6b36af95a09a37b0c6f33d6e0c55387ddfcb165c1bf17d948850a53c3c4" dependencies = [ "byteorder", "flate2", @@ -2806,8 +3008,9 @@ dependencies = [ [[package]] name = "simdnbt-derive" -version = "0.8.0" -source = "git+https://github.com/azalea-rs/simdnbt#3473e8e1f4bfc7f9cd6409430a37d006ca7b723d" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e9b1c2b979a5d5ce4dcaa0e7fb9077836e92931a79a625b97b6cab8534bf761a" dependencies = [ "proc-macro2", "quote", @@ -2884,9 +3087,9 @@ dependencies = [ [[package]] name = "socks5-impl" -version = "0.7.2" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "214a7c0af583e8f7abbd3394f235b4df7cc65db9b98ef80506cac7c7eefc0c75" +checksum = "e7934490b52d855edf99785b7c059529812a53ecbd3a92057ac89900abf4fc8d" dependencies = [ "async-trait", "bytes", @@ -2940,9 +3143,9 @@ checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "syn" -version = "2.0.110" +version = "2.0.114" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a99801b5bd34ede4cf3fc688c5919368fea4e4814a4664359503e6015b280aea" +checksum = "d4d107df263a3013ef9b1879b0df87d706ff80f65a86ea879bd9c31f9b307c2a" dependencies = [ "proc-macro2", "quote", @@ -3147,9 +3350,9 @@ dependencies = [ [[package]] name = "tower-http" -version = "0.6.6" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adc82fd73de2a9722ac5da747f12383d2bfdb93591ee6c58486e0097890f05f2" +checksum = "d4e6559d53cc268e5031cd8429d05415bc4cb4aefc4aa5d6cc35fbf5b924a1f8" dependencies = [ "bitflags", "bytes", @@ -3177,9 +3380,9 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracing" -version = "0.1.41" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" +checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100" dependencies = [ "pin-project-lite", "tracing-attributes", @@ -3188,9 +3391,9 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.30" +version = "0.1.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903" +checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" dependencies = [ "proc-macro2", "quote", @@ -3199,9 +3402,9 @@ dependencies = [ [[package]] name = "tracing-core" -version = "0.1.34" +version = "0.1.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9d12581f227e93f094d3af2ae690a574abb8a2b9b7a96e7cfe9647b2b617678" +checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a" dependencies = [ "once_cell", "valuable", @@ -3283,6 +3486,12 @@ version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9312f7c4f6ff9069b165498234ce8be658059c6728633667c526e27dc2cf1df5" +[[package]] +name = "unicode-segmentation" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" + [[package]] name = "unicode-xid" version = "0.2.6" @@ -3321,14 +3530,14 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.18.1" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f87b8aa10b915a06587d0dec516c282ff295b475d94abf425d62b57710070a2" +checksum = "e2e054861b4bd027cd373e18e8d8d8e6548085000e41290d95ce0c373a654b4a" dependencies = [ "getrandom 0.3.4", "js-sys", "md-5", - "serde", + "serde_core", "wasm-bindgen", ] @@ -3355,6 +3564,16 @@ version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" +[[package]] +name = "walkdir" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +dependencies = [ + "same-file", + "winapi-util", +] + [[package]] name = "want" version = "0.3.1" @@ -3458,10 +3677,10 @@ dependencies = [ ] [[package]] -name = "webpki-roots" -version = "1.0.4" +name = "webpki-root-certs" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2878ef029c47c6e8cf779119f20fcf52bde7ad42a731b2a304bc221df17571e" +checksum = "36a29fc0408b113f68cf32637857ab740edfafdf460c326cd2afaa2d84cc05dc" dependencies = [ "rustls-pki-types", ] @@ -3487,6 +3706,15 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "72069c3113ab32ab29e5584db3c6ec55d416895e60715417b5b883a357c3e471" +[[package]] +name = "winapi-util" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" +dependencies = [ + "windows-sys 0.61.2", +] + [[package]] name = "windows-link" version = "0.2.1" @@ -3495,27 +3723,27 @@ checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" [[package]] name = "windows-sys" -version = "0.48.0" +version = "0.45.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" dependencies = [ - "windows-targets 0.48.5", + "windows-targets 0.42.2", ] [[package]] name = "windows-sys" -version = "0.52.0" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" dependencies = [ - "windows-targets 0.52.6", + "windows-targets 0.48.5", ] [[package]] name = "windows-sys" -version = "0.59.0" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" dependencies = [ "windows-targets 0.52.6", ] @@ -3538,6 +3766,21 @@ dependencies = [ "windows-link", ] +[[package]] +name = "windows-targets" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", +] + [[package]] name = "windows-targets" version = "0.48.5" @@ -3586,6 +3829,12 @@ dependencies = [ "windows_x86_64_msvc 0.53.1", ] +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" @@ -3604,6 +3853,12 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + [[package]] name = "windows_aarch64_msvc" version = "0.48.5" @@ -3622,6 +3877,12 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" +[[package]] +name = "windows_i686_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + [[package]] name = "windows_i686_gnu" version = "0.48.5" @@ -3652,6 +3913,12 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" +[[package]] +name = "windows_i686_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + [[package]] name = "windows_i686_msvc" version = "0.48.5" @@ -3670,6 +3937,12 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + [[package]] name = "windows_x86_64_gnu" version = "0.48.5" @@ -3688,6 +3961,12 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + [[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" @@ -3706,6 +3985,12 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + [[package]] name = "windows_x86_64_msvc" version = "0.48.5" @@ -3863,3 +4148,9 @@ name = "zlib-rs" version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2f06ae92f42f5e5c42443fd094f245eb656abf56dd7cce9b8b263236565e00f2" + +[[package]] +name = "zmij" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94f63c051f4fe3c1509da62131a678643c5b6fbdc9273b2b79d4378ebda003d2" From ce4bc16a1f6b0faaafe99708d7a1c5dc403d3536 Mon Sep 17 00:00:00 2001 From: coco875 Date: Sun, 18 Jan 2026 22:47:31 +0100 Subject: [PATCH 5/9] fix spam problem --- .github/workflows/test.yml | 102 +++++++++++++++++++++++++++++-------- 1 file changed, 82 insertions(+), 20 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ea94d1e..6f9cc1f 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -41,37 +41,94 @@ jobs: run: | mkdir -p minecraft-server cd minecraft-server - # Download Paper MC 1.21.9 (latest compatible version) + # Download Fabric 1.21.11 (latest compatible version) wget -O server.jar https://meta.fabricmc.net/v2/versions/loader/1.21.11/0.18.4/1.1.1/server/jar echo "eula=true" > eula.txt + + # Download carpet mods + mkdir -p mods + wget -O mods/fabric-carpet.jar "https://cdn.modrinth.com/data/TQTTVgYE/versions/HzPcczDK/fabric-carpet-1.21.11-1.4.194%2Bv251223.jar" + wget -O mods/carpet-tis-addition.jar "https://cdn.modrinth.com/data/jE0SjGuf/versions/BpAKF34C/carpet-tis-addition-v1.74.3-mc1.21.11.jar" + + # Configure carpet rules to disable anticheat and spam protection + mkdir -p world/carpet + cat > world/carpet.conf < server.properties << EOF - enable-command-block=true + #Minecraft server properties + accepts-transfers=false + allow-flight=false + broadcast-console-to-ops=true + broadcast-rcon-to-ops=true + bug-report-link= + difficulty=easy + enable-code-of-conduct=false + enable-jmx-monitoring=false + enable-query=false + enable-rcon=false + enable-status=true + enforce-secure-profile=true + enforce-whitelist=false + entity-broadcast-range-percentage=100 + force-gamemode=false + function-permission-level=2 gamemode=creative - difficulty=peaceful - spawn-protection=0 - max-players=10 + generate-structures=false + generator-settings={} + hardcore=false + hide-online-players=false + initial-disabled-packs= + initial-enabled-packs=vanilla + level-name=world + level-seed= + level-type=minecraft\:flat + log-ips=true + management-server-allowed-origins= + management-server-enabled=false + management-server-host=localhost + management-server-port=0 + management-server-secret=PYFrHIuydP0VRu32cc3Zb3LsiEsuYGWfRsOGASJQ + management-server-tls-enabled=true + management-server-tls-keystore= + management-server-tls-keystore-password= + max-chained-neighbor-updates=1000000 + max-players=20 + max-tick-time=60000 + max-world-size=29999984 + motd=A Minecraft Server + network-compression-threshold=256 online-mode=false - pvp=false + op-permission-level=4 + pause-when-empty-seconds=60 + player-idle-timeout=0 + prevent-proxy-connections=false + query.port=25565 + rate-limit=0 + rcon.password= + rcon.port=25575 + region-file-compression=deflate + require-resource-pack=false + resource-pack= + resource-pack-id= + resource-pack-prompt= + resource-pack-sha1= + server-ip= server-port=25565 - view-distance=10 simulation-distance=10 - level-type=flat - generator-settings={"layers":[{"block":"minecraft:bedrock","height":1},{"block":"minecraft:stone","height":2},{"block":"minecraft:grass_block","height":1}],"biome":"minecraft:plains"} - spawn-monsters=false - spawn-animals=false - spawn-npcs=false - EOF - - # Create spigot.yml to disable spam filter completely - # This prevents "disconnect.spam" kicks when running multiple commands rapidly - cat > spigot.yml << EOF - commands: - spam-exclusions: - - "/" + spawn-protection=16 + status-heartbeat-interval=0 + sync-chunk-writes=true + text-filtering-config= + text-filtering-version=0 + use-native-transport=true + view-distance=10 + white-list=false EOF - name: Start Minecraft Server @@ -97,6 +154,11 @@ jobs: echo "op FlintMC_TestBot" > server_input echo "Sent op command for FlintMC_TestBot" sleep 2 + + # Ensure carpet rules are set (in case carpet.conf wasn't loaded) + echo "carpet antiCheatDisabled true" > server_input + echo "carpet antiSpamDisabled true" > server_input + sleep 1 - name: Build FlintMC run: cargo build --release From ab64f750400b910a2b396de4bbe9019014f12cd2 Mon Sep 17 00:00:00 2001 From: coco875 Date: Sun, 18 Jan 2026 23:07:22 +0100 Subject: [PATCH 6/9] always upload log --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 6f9cc1f..91a7bce 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -178,7 +178,7 @@ jobs: pkill -f "java.*server.jar" || true - name: Upload Server Logs - if: failure() + if: always() uses: actions/upload-artifact@v4 with: name: minecraft-server-logs From d57228ce687b66eabd231c830b21d05510579393 Mon Sep 17 00:00:00 2001 From: coco875 Date: Sun, 18 Jan 2026 23:08:09 +0100 Subject: [PATCH 7/9] rename to lower case name --- .github/workflows/test.yml | 4 ++-- GETTING_STARTED.md | 6 +++--- src/bot.rs | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 91a7bce..1cd5a62 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -151,8 +151,8 @@ jobs: sleep 2 # Op the bot player by writing directly to the pipe - echo "op FlintMC_TestBot" > server_input - echo "Sent op command for FlintMC_TestBot" + echo "op flintmc_testbot" > server_input + echo "Sent op command for flintmc_testbot" sleep 2 # Ensure carpet rules are set (in case carpet.conf wasn't loaded) diff --git a/GETTING_STARTED.md b/GETTING_STARTED.md index 4e45e43..10ee300 100644 --- a/GETTING_STARTED.md +++ b/GETTING_STARTED.md @@ -13,7 +13,7 @@ FlintMC is now ready to use! Here's how to get started. 2. **Minecraft Server** (1.21.8+): - You need a running Minecraft server - The bot needs **operator permissions** to run commands and avoid spam kicks - - Give the bot op: `/op FlintMC_TestBot` + - Give the bot op: `/op flintmc_testbot` - **Important**: Without op permissions, the bot will be kicked for spamming when running multiple tests ## Building @@ -79,7 +79,7 @@ cargo run -- my_test.json --server localhost:25565 ## How It Works -1. Bot connects to server as `FlintMC_TestBot` +1. Bot connects to server as `flintmc_testbot` 2. Time is frozen with `/tick freeze` 3. Actions are executed at their specified tick 4. Between ticks, `/tick step 1` advances time @@ -95,7 +95,7 @@ cargo run -- my_test.json --server localhost:25565 - Ensure the bot can connect (check server whitelist/firewall) ### "Bot needs op permissions" -- Run `/op FlintMC_TestBot` on your server +- Run `/op flintmc_testbot` on your server - The bot needs op to execute `/setblock`, `/fill`, and `/tick` commands ### Assertion failures diff --git a/src/bot.rs b/src/bot.rs index fbd1814..91e52ae 100644 --- a/src/bot.rs +++ b/src/bot.rs @@ -49,7 +49,7 @@ impl TestBot { } pub async fn connect(&mut self, server: &str) -> Result<()> { - let account = Account::offline("FlintMC_TestBot"); + let account = Account::offline("flintmc_testbot"); tracing::info!("Connecting to server: {}", server); From b9720d02d4ac7aabcb8ef4d89c68ba0a672795e2 Mon Sep 17 00:00:00 2001 From: coco875 Date: Sun, 18 Jan 2026 23:16:00 +0100 Subject: [PATCH 8/9] disable carpet --- .github/workflows/test.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 1cd5a62..cc60e1c 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -47,8 +47,8 @@ jobs: # Download carpet mods mkdir -p mods - wget -O mods/fabric-carpet.jar "https://cdn.modrinth.com/data/TQTTVgYE/versions/HzPcczDK/fabric-carpet-1.21.11-1.4.194%2Bv251223.jar" - wget -O mods/carpet-tis-addition.jar "https://cdn.modrinth.com/data/jE0SjGuf/versions/BpAKF34C/carpet-tis-addition-v1.74.3-mc1.21.11.jar" + # wget -O mods/fabric-carpet.jar "https://cdn.modrinth.com/data/TQTTVgYE/versions/HzPcczDK/fabric-carpet-1.21.11-1.4.194%2Bv251223.jar" + # wget -O mods/carpet-tis-addition.jar "https://cdn.modrinth.com/data/jE0SjGuf/versions/BpAKF34C/carpet-tis-addition-v1.74.3-mc1.21.11.jar" # Configure carpet rules to disable anticheat and spam protection mkdir -p world/carpet @@ -156,8 +156,8 @@ jobs: sleep 2 # Ensure carpet rules are set (in case carpet.conf wasn't loaded) - echo "carpet antiCheatDisabled true" > server_input - echo "carpet antiSpamDisabled true" > server_input + # echo "carpet antiCheatDisabled true" > server_input + # echo "carpet antiSpamDisabled true" > server_input sleep 1 - name: Build FlintMC From 3612b3e29460d918bf8a4d3637f42e9106c71f5f Mon Sep 17 00:00:00 2001 From: coco875 Date: Sun, 18 Jan 2026 23:18:06 +0100 Subject: [PATCH 9/9] complete remove carpet --- .github/workflows/test.yml | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index cc60e1c..da8ebc5 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -44,18 +44,6 @@ jobs: # Download Fabric 1.21.11 (latest compatible version) wget -O server.jar https://meta.fabricmc.net/v2/versions/loader/1.21.11/0.18.4/1.1.1/server/jar echo "eula=true" > eula.txt - - # Download carpet mods - mkdir -p mods - # wget -O mods/fabric-carpet.jar "https://cdn.modrinth.com/data/TQTTVgYE/versions/HzPcczDK/fabric-carpet-1.21.11-1.4.194%2Bv251223.jar" - # wget -O mods/carpet-tis-addition.jar "https://cdn.modrinth.com/data/jE0SjGuf/versions/BpAKF34C/carpet-tis-addition-v1.74.3-mc1.21.11.jar" - - # Configure carpet rules to disable anticheat and spam protection - mkdir -p world/carpet - cat > world/carpet.conf < server_input echo "Sent op command for flintmc_testbot" sleep 2 - - # Ensure carpet rules are set (in case carpet.conf wasn't loaded) - # echo "carpet antiCheatDisabled true" > server_input - # echo "carpet antiSpamDisabled true" > server_input - sleep 1 - name: Build FlintMC run: cargo build --release