1
0
mirror of https://github.com/matrix-org/matrix-authentication-service.git synced 2025-08-07 17:03:01 +03:00

Fix embedded templates loading

This commit is contained in:
Quentin Gliech
2021-12-13 17:56:35 +01:00
parent ac211a5aa0
commit daf5542e6d
5 changed files with 28 additions and 41 deletions

View File

@@ -9,7 +9,7 @@ license = "Apache-2.0"
tokio = { version = "1.14.0", features = ["full"] }
futures = "0.3.18"
anyhow = "1.0.51"
clap = { version = "3.0.0-rc.1", features = ["derive"] }
clap = { version = "3.0.0-rc.4", features = ["derive"] }
dotenv = "0.15.0"
schemars = { version = "0.8.8", features = ["url", "chrono"] }
tower = { version = "0.4.11", features = ["full"] }

View File

@@ -10,7 +10,7 @@ dev = []
[dependencies]
tracing = "0.1.29"
tokio = "1.14.0"
tokio = { version = "1.14.0", features = ["macros"] }
anyhow = "1.0.51"
thiserror = "1.0.30"

View File

@@ -115,17 +115,12 @@ impl Templates {
let mut tera = Tera::default();
info!("Loading builtin templates");
for (name, source) in EXTRA_TEMPLATES {
if let Some(source) = source {
tera.add_raw_template(name, source)?;
}
}
for (name, source) in TEMPLATES {
if let Some(source) = source {
tera.add_raw_template(name, source)?;
}
}
tera.add_raw_templates(
EXTRA_TEMPLATES
.into_iter()
.chain(TEMPLATES)
.filter_map(|(name, content)| content.map(|c| (name, c))),
)?;
Ok(tera)
}
@@ -183,9 +178,7 @@ impl Templates {
self::functions::register(&mut tera);
let loaded: HashSet<_> = tera.get_template_names().collect();
let needed: HashSet<_> = std::array::IntoIter::new(TEMPLATES)
.map(|(name, _)| name)
.collect();
let needed: HashSet<_> = TEMPLATES.into_iter().map(|(name, _)| name).collect();
debug!(?loaded, ?needed, "Templates loaded");
let missing: HashSet<_> = needed.difference(&loaded).collect();
@@ -219,7 +212,7 @@ impl Templates {
.await
.context("could not create destination folder")?;
let templates = std::array::IntoIter::new(TEMPLATES).chain(EXTRA_TEMPLATES);
let templates = TEMPLATES.into_iter().chain(EXTRA_TEMPLATES);
let mut options = OpenOptions::new();
if overwrite {
@@ -285,9 +278,9 @@ impl warp::reject::Reject for TemplateError {}
register_templates! {
extra = {
"base.html",
"components/button.html",
"components/field.html"
"components/field.html",
"base.html",
};
/// Render the login page

View File

@@ -29,7 +29,7 @@ macro_rules! count {
macro_rules! register_templates {
{
$(
extra = { $( $extra_template:expr ),* };
extra = { $( $extra_template:expr ),* $(,)? };
)?
$(