add basic parallelization to site building

This commit is contained in:
zyl 2024-10-30 14:42:43 -07:00
parent 0878679745
commit 4871293708
Signed by: zyl
SSH key fingerprint: SHA256:uxxbSXbdroP/OnKBGnEDk5q7EKB2razvstC/KmzdXXs
7 changed files with 90 additions and 22 deletions

View file

@ -14,6 +14,7 @@ use std::{
};
use eyre::Context;
use rayon::prelude::*;
use resource::EmbedMetadata;
use serde::Deserialize;
use url::Url;
@ -162,9 +163,10 @@ impl Site {
/// Helper method to build all available pages.
fn build_all_pages(&self, builder: &SiteBuilder) -> eyre::Result<()> {
for page_name in self.page_index.keys() {
builder.build_page(page_name)?;
}
self.page_index
.keys()
.par_bridge()
.try_for_each(|page_name| builder.build_page(page_name))?;
Ok(())
}