{"record":{"id":"897be4a28f470bdd","repo":"DioxusLabs/dioxus","slug":"expected-middleware-attribute-to-be-a-list-e-g","errorCode":null,"errorMessage":"Expected middleware attribute to be a list, e.g. #[middleware(MyLayer::new())]","messagePattern":"Expected middleware attribute to be a list, e\\.g\\. #\\[middleware\\(MyLayer::new\\(\\)\\)\\]","errorType":"validation","errorClass":"syn::Error","httpStatus":null,"severity":"error","filePath":"packages/fullstack-macro/src/lib.rs","lineNumber":216,"sourceCode":"fn route_impl_with_route(\n    route: Route,\n    item: TokenStream,\n    method_from_macro: Option<Method>,\n) -> syn::Result<TokenStream2> {\n    // Parse the route and function\n    let mut function = syn::parse::<ItemFn>(item)?;\n\n    // Collect the middleware initializers\n    let middleware_layers = function\n        .attrs\n        .iter()\n        .filter(|attr| attr.path().is_ident(\"middleware\"))\n        .map(|f| match &f.meta {\n            Meta::List(meta_list) => Ok({\n                let tokens = &meta_list.tokens;\n                quote! { .layer(#tokens) }\n            }),\n            _ => Err(Error::new(\n                f.span(),\n                \"Expected middleware attribute to be a list, e.g. #[middleware(MyLayer::new())]\",\n            )),\n        })\n        .collect::<Result<Vec<_>>>()?;\n\n    // don't re-emit the middleware attribute on the inner\n    function\n        .attrs\n        .retain(|attr| !attr.path().is_ident(\"middleware\"));\n\n    // Attach `#[allow(unused_mut)]` to all original inputs to avoid warnings\n    let outer_inputs = function\n        .sig\n        .inputs\n        .iter()\n        .enumerate()\n        .map(|(i, arg)| match arg {","sourceCodeStart":198,"sourceCodeEnd":234,"githubUrl":"https://github.com/DioxusLabs/dioxus/blob/393d190a801ccb441d41923e232289b4f8a5c669/packages/fullstack-macro/src/lib.rs#L198-L234","documentation":"Error \"Expected middleware attribute to be a list, e.g. #[middleware(MyLayer::new())]\" thrown in DioxusLabs/dioxus.","triggerScenarios":"Thrown at packages/fullstack-macro/src/lib.rs:216 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"393d190a801ccb441d41923e232289b4f8a5c669","analyzedAt":"2026-08-16T11:27:45.815Z","schemaVersion":2},"datasetVersion":"2026-08-16T13:17:31.715Z"}