Added rust-toolchain.toml file; removed nightly-only rustfmt.toml
parent
0b9b5bb8e7
commit
aa3051a6ef
|
@ -0,0 +1,2 @@
|
||||||
|
[toolchain]
|
||||||
|
channel = "1.60"
|
68
rustfmt.toml
68
rustfmt.toml
|
@ -1,68 +0,0 @@
|
||||||
unstable_features = true
|
|
||||||
binop_separator = "Front"
|
|
||||||
blank_lines_lower_bound = 0
|
|
||||||
blank_lines_upper_bound = 1
|
|
||||||
# Trying something new
|
|
||||||
brace_style = "AlwaysNextLine"
|
|
||||||
color = "Auto"
|
|
||||||
combine_control_expr = false
|
|
||||||
comment_width = 80
|
|
||||||
condense_wildcard_suffixes = false
|
|
||||||
control_brace_style = "AlwaysSameLine"
|
|
||||||
disable_all_formatting = false
|
|
||||||
edition = "2018"
|
|
||||||
emit_mode = "Files"
|
|
||||||
empty_item_single_line = true
|
|
||||||
enum_discrim_align_threshold = 0
|
|
||||||
error_on_line_overflow = false
|
|
||||||
error_on_unformatted = false
|
|
||||||
fn_args_layout = "Tall"
|
|
||||||
fn_single_line = false
|
|
||||||
force_explicit_abi = true
|
|
||||||
force_multiline_blocks = false
|
|
||||||
format_code_in_doc_comments = false
|
|
||||||
format_macro_bodies = true
|
|
||||||
format_macro_matchers = false
|
|
||||||
format_strings = false
|
|
||||||
group_imports = "StdExternalCrate"
|
|
||||||
hard_tabs = false
|
|
||||||
hide_parse_errors = false
|
|
||||||
ignore = []
|
|
||||||
imports_granularity = "Crate"
|
|
||||||
imports_indent = "Block"
|
|
||||||
imports_layout = "Mixed"
|
|
||||||
indent_style = "Block"
|
|
||||||
inline_attribute_width = 0
|
|
||||||
license_template_path = ""
|
|
||||||
make_backup = false
|
|
||||||
match_arm_blocks = true
|
|
||||||
match_arm_leading_pipes = "Never"
|
|
||||||
match_block_trailing_comma = true
|
|
||||||
max_width = 100
|
|
||||||
merge_derives = true
|
|
||||||
newline_style = "Auto"
|
|
||||||
normalize_comments = false
|
|
||||||
normalize_doc_attributes = false
|
|
||||||
overflow_delimited_expr = false
|
|
||||||
remove_nested_parens = true
|
|
||||||
reorder_impl_items = false
|
|
||||||
reorder_imports = true
|
|
||||||
reorder_modules = true
|
|
||||||
report_fixme = "Always"
|
|
||||||
report_todo = "Always"
|
|
||||||
skip_children = false
|
|
||||||
space_after_colon = true
|
|
||||||
space_before_colon = false
|
|
||||||
spaces_around_ranges = false
|
|
||||||
struct_field_align_threshold = 0
|
|
||||||
struct_lit_single_line = true
|
|
||||||
tab_spaces = 4
|
|
||||||
trailing_comma = "Vertical"
|
|
||||||
trailing_semicolon = true
|
|
||||||
type_punctuation_density = "Wide"
|
|
||||||
use_field_init_shorthand = false
|
|
||||||
use_small_heuristics = "Default"
|
|
||||||
use_try_shorthand = false
|
|
||||||
version = "One"
|
|
||||||
where_single_line = false
|
|
||||||
wrap_comments = false
|
|
|
@ -14,8 +14,7 @@ use tokio_util::io::StreamReader;
|
||||||
use crate::{DEFAULT_STATIC_SITE, STATIC_DIR_NAME};
|
use crate::{DEFAULT_STATIC_SITE, STATIC_DIR_NAME};
|
||||||
|
|
||||||
#[derive(Deserialize)]
|
#[derive(Deserialize)]
|
||||||
pub struct StaticDirParams
|
pub struct StaticDirParams {
|
||||||
{
|
|
||||||
dir: Option<String>,
|
dir: Option<String>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -23,8 +22,7 @@ pub async fn post_deploy(
|
||||||
Extension(data_dir): Extension<String>,
|
Extension(data_dir): Extension<String>,
|
||||||
Query(params): Query<StaticDirParams>,
|
Query(params): Query<StaticDirParams>,
|
||||||
res: BodyStream,
|
res: BodyStream,
|
||||||
) -> impl IntoResponse
|
) -> impl IntoResponse {
|
||||||
{
|
|
||||||
// This converts a stream into something that implements AsyncRead, which we can then use to
|
// This converts a stream into something that implements AsyncRead, which we can then use to
|
||||||
// asynchronously write the file to disk
|
// asynchronously write the file to disk
|
||||||
let mut read =
|
let mut read =
|
||||||
|
@ -56,8 +54,7 @@ pub async fn post_deploy(
|
||||||
res
|
res
|
||||||
}
|
}
|
||||||
|
|
||||||
fn process_archive(archive_path: &Path, static_dir: &Path) -> Result<(), ()>
|
fn process_archive(archive_path: &Path, static_dir: &Path) -> Result<(), ()> {
|
||||||
{
|
|
||||||
let file = std::fs::File::open(archive_path).map_err(|_| ())?;
|
let file = std::fs::File::open(archive_path).map_err(|_| ())?;
|
||||||
let tar = GzDecoder::new(file);
|
let tar = GzDecoder::new(file);
|
||||||
let mut archive = Archive::new(tar);
|
let mut archive = Archive::new(tar);
|
||||||
|
|
|
@ -2,7 +2,6 @@ use axum::{routing::post, Router};
|
||||||
|
|
||||||
mod deploy;
|
mod deploy;
|
||||||
|
|
||||||
pub fn router() -> Router
|
pub fn router() -> Router {
|
||||||
{
|
|
||||||
Router::new().route("/deploy", post(deploy::post_deploy))
|
Router::new().route("/deploy", post(deploy::post_deploy))
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,8 +20,7 @@ const STATIC_DIR_NAME: &str = "static";
|
||||||
const DEFAULT_STATIC_SITE: &str = "default";
|
const DEFAULT_STATIC_SITE: &str = "default";
|
||||||
|
|
||||||
#[tokio::main]
|
#[tokio::main]
|
||||||
async fn main()
|
async fn main() {
|
||||||
{
|
|
||||||
// Enable tracing
|
// Enable tracing
|
||||||
tracing_subscriber::registry()
|
tracing_subscriber::registry()
|
||||||
.with(tracing_subscriber::EnvFilter::new(
|
.with(tracing_subscriber::EnvFilter::new(
|
||||||
|
|
|
@ -1,19 +1,16 @@
|
||||||
use axum::{response::IntoResponse, routing::get, Json, Router};
|
use axum::{response::IntoResponse, routing::get, Json, Router};
|
||||||
use serde_json::json;
|
use serde_json::json;
|
||||||
|
|
||||||
pub fn router() -> Router
|
pub fn router() -> Router {
|
||||||
{
|
|
||||||
Router::new()
|
Router::new()
|
||||||
.route("/.well-known/matrix/server", get(get_matrix_server))
|
.route("/.well-known/matrix/server", get(get_matrix_server))
|
||||||
.route("/.well-known/matrix/client", get(get_matrix_client))
|
.route("/.well-known/matrix/client", get(get_matrix_client))
|
||||||
}
|
}
|
||||||
|
|
||||||
async fn get_matrix_server() -> impl IntoResponse
|
async fn get_matrix_server() -> impl IntoResponse {
|
||||||
{
|
|
||||||
Json(json!({"m.server": "matrix.rustybever.be:443"}))
|
Json(json!({"m.server": "matrix.rustybever.be:443"}))
|
||||||
}
|
}
|
||||||
|
|
||||||
async fn get_matrix_client() -> impl IntoResponse
|
async fn get_matrix_client() -> impl IntoResponse {
|
||||||
{
|
|
||||||
Json(json!({"m.homeserver": {"base_url": "https://matrix.rustybever.be"}}))
|
Json(json!({"m.homeserver": {"base_url": "https://matrix.rustybever.be"}}))
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,8 +3,7 @@ use std::time::Instant;
|
||||||
use axum::{extract::MatchedPath, http::Request, middleware::Next, response::IntoResponse};
|
use axum::{extract::MatchedPath, http::Request, middleware::Next, response::IntoResponse};
|
||||||
use metrics_exporter_prometheus::{Matcher, PrometheusBuilder, PrometheusHandle};
|
use metrics_exporter_prometheus::{Matcher, PrometheusBuilder, PrometheusHandle};
|
||||||
|
|
||||||
pub fn setup_metrics_recorder() -> PrometheusHandle
|
pub fn setup_metrics_recorder() -> PrometheusHandle {
|
||||||
{
|
|
||||||
const EXPONENTIAL_SECONDS: &[f64] = &[
|
const EXPONENTIAL_SECONDS: &[f64] = &[
|
||||||
0.005, 0.01, 0.025, 0.05, 0.1, 0.25, 0.5, 1.0, 2.5, 5.0, 10.0,
|
0.005, 0.01, 0.025, 0.05, 0.1, 0.25, 0.5, 1.0, 2.5, 5.0, 10.0,
|
||||||
];
|
];
|
||||||
|
@ -20,8 +19,7 @@ pub fn setup_metrics_recorder() -> PrometheusHandle
|
||||||
}
|
}
|
||||||
|
|
||||||
// Taken from the examples section
|
// Taken from the examples section
|
||||||
pub async fn track_metrics<B>(req: Request<B>, next: Next<B>) -> impl IntoResponse
|
pub async fn track_metrics<B>(req: Request<B>, next: Next<B>) -> impl IntoResponse {
|
||||||
{
|
|
||||||
let start = Instant::now();
|
let start = Instant::now();
|
||||||
let path = if let Some(matched_path) = req.extensions().get::<MatchedPath>() {
|
let path = if let Some(matched_path) = req.extensions().get::<MatchedPath>() {
|
||||||
matched_path.as_str().to_owned()
|
matched_path.as_str().to_owned()
|
||||||
|
|
Loading…
Reference in New Issue