Rust Devblog 261 -

If you use #![deny(clippy::pedantic)] or custom lints, they are now more predictable.

Here’s a practical guide covering the key updates from (released February 2025). The focus is on the new proc macro changes , lint stability , cargo script improvements , and standard library additions . Rust Devblog 261 Guide: New Macros, Lints, and Cargo Script 1. Procedural Macros: #[diagnostic] namespace What’s new: You can now emit custom compiler diagnostics from proc macros using the #[diagnostic] attribute. rust devblog 261

error: This usage is invalid --> src/main.rs:3:1 | 3 | my_macro!(bar); | ^^^^^^^^^^^^^^ help: Try using `foo` instead of `bar` Use span methods to point exactly at the problematic token. 2. Lint stability: #[stable] for lints What’s new: Lints can now be marked stable, meaning they won’t change behavior without an edition bump. If you use #

let x = 42u32; assert!(x.is_multiple_of(7)); assert!(!x.is_multiple_of(5)); Avoids division by zero — it’s a panic (same as % ). 5. Cargo: --ignore-rust-version flag What’s new: Build crates even if they require a newer Rust version than your current toolchain. Rust Devblog 261 Guide: New Macros, Lints, and