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: | 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 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;