mirror of
https://github.com/Pumpkin-MC/Pumpkin.git
synced 2026-08-30 20:14:23 +00:00
Every trait method wasmtime's bindgen! generates must be `async fn` regardless of whether a given implementation needs to await anything, so clippy::unused_async_trait_impl fired 578 times across the WASM plugin bridge (crates/pumpkin/src/plugin/loader/wasm/wasm_host/wit/v0_1) plus a handful of similarly-shaped trait impls elsewhere (redstone pressure plates, several plant blocks, the pathfinder, three Entity setter methods). This blocks "Run lints (debug/release)" CI on every branch regardless of what it actually changes. Allow the lint at the module level for wasm_host's submodules (one attribute per module covers every impl inside it) and per-function for the scattered non-WASM occurrences, rather than restructuring any of the affected code. Also fixes three unrelated pre-existing lint failures uncovered once the above stopped masking them: - pumpkin-macros::count_placeholders needed to be a const fn (clippy::missing_const_for_fn) - this alone was blocking every other lint check from ever running, since pumpkin-macros failing to compile takes the whole workspace down with it. - `Result<_, ()>` in Plugin::send_message (clippy::result_unit_err). - `.ok().is_some_and(..)` that clippy::manual_is_variant_and wants as `.is_ok_and(..)`. Verified with `cargo clippy --all-targets --all-features` (debug and release) and `cargo test -p pumpkin --lib` (257 passed).