use actix_files as fs;
use actix_web::{get, web, Responder, middleware, App, HttpServer, HttpResponse, HttpRequest, web::Query};
-use askama::Template;
-use listenfd::ListenFd;
+use askama_actix::Template;
use ron::de::from_reader;
use serde::Deserialize;
use itertools::Itertools;
mod consts;
+mod model;
mod db;
#[derive(Template)]
first_arg[first_arg.rfind(sep).unwrap()+1..].to_string()
}
-#[actix_rt::main]
+#[actix_web::main]
async fn main() -> std::io::Result<()> {
if process_args() { return Ok(()) }
+ std::env::set_var("RUST_LOG", "actix_web=debug");
+ env_logger::init();
+
println!("Starting Recipes as web server...");
let config: Config = {
std::env::set_var("RUST_LOG", "actix_web=info");
- let mut listenfd = ListenFd::from_env();
let mut server =
HttpServer::new(
|| {
App::new()
+ .wrap(middleware::Logger::default())
.wrap(middleware::Compress::default())
.service(home_page)
.service(view_page)
}
);
- server =
- if let Some(l) = listenfd.take_tcp_listener(0).unwrap() {
- server.listen(l).unwrap()
- } else {
- server.bind(&format!("0.0.0.0:{}", config.port)).unwrap()
- };
+ server = server.bind(&format!("0.0.0.0:{}", config.port)).unwrap();
server.run().await
}