From 3cc69ded43a14aa7565472a5b38cc94b755a8911 Mon Sep 17 00:00:00 2001 From: Veetaha Date: Tue, 22 Sep 2026 16:00:20 +0000 Subject: [PATCH 1/3] Bump miri --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e93a5c6b..52f8e713 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -208,7 +208,7 @@ jobs: - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - uses: actions-rust-lang/setup-rust-toolchain@46268bd060767258de96ed93c1251119784f2ab6 # v1.16.1 with: - toolchain: nightly-2025-07-12 + toolchain: nightly-2026-09-22 components: miri, rust-src - run: | From d29e6b1cac8329ef547e7ee5beabc05d0d9c1baa Mon Sep 17 00:00:00 2001 From: Veetaha Date: Tue, 22 Sep 2026 16:04:13 +0000 Subject: [PATCH 2/3] Remove the large futures allow lint --- Cargo.toml | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 52f7fe10..5166fb60 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -28,19 +28,6 @@ manual_let_else = "allow" # by `unwrap_or` or `unwrap_or_else` map_unwrap_or = "allow" -# This lint computes the layout of futures, which makes `clippy` on nightly -# ICE with "unexpected rigid alias in layout_of after normalization" on the -# opaque types generated by `#[builder(into_future)]` in -# `bon/tests/integration/builder/attr_into_future.rs`. A regression from the -# next-generation trait solver being enabled on nightly. The code itself -# compiles fine (`cargo check` passes); only `clippy` crashes. -# -# https://github.com/rust-lang/rust/issues/161495 -# -# The fix landed in rust-lang/rust#161416 (merged 2026-08-24), so this can be -# removed once CI's nightly is newer than that. -large_futures = "allow" - # Turn on lints that are allow by default in `clippy`. # # We set them to a `warn` level instead of `deny` to prevent clippy from From 0d01793dd8c70aeaa8004f1319bfd196c9007159 Mon Sep 17 00:00:00 2001 From: Veetaha Date: Tue, 22 Sep 2026 17:17:21 +0000 Subject: [PATCH 3/3] Fix lints --- bon-sandbox/src/docs_comparison/structs.rs | 3 ++- bon/tests/integration/main.rs | 7 ------- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/bon-sandbox/src/docs_comparison/structs.rs b/bon-sandbox/src/docs_comparison/structs.rs index 342876f9..1d148483 100644 --- a/bon-sandbox/src/docs_comparison/structs.rs +++ b/bon-sandbox/src/docs_comparison/structs.rs @@ -39,8 +39,9 @@ pub mod buildstructor { } /// Example docs generated with `typed-builder` +// `typed-builder` generates an empty enum for the builder's type state. +#[allow(clippy::empty_enums)] pub mod typed_builder { - /// Doc comment on `Struct` #[derive(typed_builder::TypedBuilder)] #[builder(doc)] diff --git a/bon/tests/integration/main.rs b/bon/tests/integration/main.rs index f03c1a96..ae93f5c3 100644 --- a/bon/tests/integration/main.rs +++ b/bon/tests/integration/main.rs @@ -10,13 +10,6 @@ missing_docs, impl_trait_overcaptures, )] -// This catches the problem of `clippy::empty_enum` lint triggering. -// This lint is enabled only when `feature(never_type)` is enabled. -#![cfg_attr( - nightly, - allow(unstable_features, unused_features), - feature(never_type) -)] #[cfg(feature = "alloc")] extern crate alloc;