This may very well be hidden in the prog macro or something else is going on but at the very least the clippy suggestion is wrong if not the entire warning.
This is my code:
#[cfg(feature = "ssr")]
#[tokio::main]
async fn main() {
use sqlx::migrate::Migrator;
static MIGRATOR: Migrator = sqlx::migrate!("./migrations");
use crate::{
app::App,
db::ssr::{get_db, init_db},
fileserv::file_and_error_handler,
};
use axum::Router;
use leptos::*;
use leptos_axum::{generate_route_list, LeptosRoutes};
// Init the pool into static
init_db().await.expect("Initialization of database failed");
if let Err(e) = MIGRATOR.run(get_db()).await {
eprintln!("{e:?}");
}
// Setting get_configuration(None) means we'll be using cargo-leptos's env values
// For deployment these variables are:
// https://github.com/leptos-rs/start-axum#executing-a-server-on-a-remote-machine-without-the-toolchain
// Alternately a file can be specified such as Some("Cargo.toml")
// The file would need to be included with the executable when moved to deployment
let conf = get_configuration(None).await.unwrap();
let leptos_options = conf.leptos_options;
let addr = leptos_options.site_addr;
let routes = generate_route_list(App);
// build our application with a route
let app = Router::new()
.leptos_routes(&leptos_options, routes, App)
.fallback(file_and_error_handler)
.with_state(leptos_options);
let listener = tokio::net::TcpListener::bind(&addr).await.unwrap();
axum::serve(listener, app.into_make_service()).await.unwrap();
}
And this is the warning I'm getting when running cargo clippy --all-features
warning: unneeded `return` statement
--> src/main.rs:77:63
|
77 | axum::serve(listener, app.into_make_service()).await.unwrap();
| ^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return
= note: `#[warn(clippy::needless_return)]` on by default
help: remove `return`
|
77 | axum::serve(listener, app.into_make_service()).await.unwrap()axum::serve(listener, app.into_make_service()).await.unwrap();
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Now axum::serve(listener, app.into_make_service()).await.unwrap()axum::serve(listener, app.into_make_service()).await.unwrap(); isn't valid rust code for one but I also don't see a return statement?
On the side I tried to suppress the warning and got this:
warning: unneeded `return` statement
--> src/main.rs:77:63
|
77 | axum::serve(listener, app.into_make_service()).await.unwrap();
| ^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return
= note: `#[warn(clippy::needless_return)]` on by default
help: remove `return`
|
77 ~ axum::serve(listener, app.into_make_service()).await.unwrap()#[allow(clippy::needless_return)]
78 ~ axum::serve(listener, app.into_make_service()).await.unwrap();
|
Side note: Adding the #[allow(clippy::needless_return)] to the top of the function works to suppress the warning.
Description
This may very well be hidden in the prog macro or something else is going on but at the very least the clippy suggestion is wrong if not the entire warning.
This is my code:
(Almost unchanged from the leptos starter template)
And this is the warning I'm getting when running
cargo clippy --all-features
Now
axum::serve(listener, app.into_make_service()).await.unwrap()axum::serve(listener, app.into_make_service()).await.unwrap();
isn't valid rust code for one but I also don't see a return statement?On the side I tried to suppress the warning and got this:
Side note: Adding the
#[allow(clippy::needless_return)]
to the top of the function works to suppress the warning.Version
rustc 1.83.0-nightly (7608018cb 2024-09-29) binary: rustc commit-hash: 7608018cbdac9e55d0d13529cf43adc33d53efcf commit-date: 2024-09-29 host: aarch64-apple-darwin release: 1.83.0-nightly LLVM version: 19.1.0
Additional Labels
No response