Skip to content

Commit

Permalink
inline render_list_crates_by_repo
Browse files Browse the repository at this point in the history
to avoid keeping around lists of crates we don't really need
any more.

A more unified way to filter crates and save them in a list.
  • Loading branch information
szabgab committed Mar 31, 2024
1 parent f0c695c commit 1b7a56c
Showing 1 changed file with 12 additions and 36 deletions.
48 changes: 12 additions & 36 deletions src/render.rs
Original file line number Diff line number Diff line change
Expand Up @@ -18,21 +18,6 @@ fn get_site_folder() -> PathBuf {
PathBuf::from("_site")
}

pub fn render_list_crates_by_repo(repos: &Vec<Repo>) -> Result<(), Box<dyn Error>> {
log::info!("render_list_crates_by_repo start");
for repo in repos {
// dbg!(&repo);
render_list_page(
build_path(get_site_folder(), &["vcs", &repo.name], Some("html")),
&format!("Crates in {}", repo.display),
&repo.name,
&repo.crates,
)?;
}
log::info!("render_list_crates_by_repo end");
Ok(())
}

pub fn render_list_of_repos(repos: &Vec<Repo>) {
log::info!("render_list_of_repos start");
let partials = load_templates().unwrap();
Expand Down Expand Up @@ -137,7 +122,7 @@ pub fn render_list_page(
preface: &str,
crates: &[Crate],
) -> Result<(), Box<dyn Error>> {
// log::info!("render {filename}");
log::info!("render_list_page: {filename:?}");

let partials = load_templates().unwrap();

Expand Down Expand Up @@ -474,34 +459,25 @@ fn collect_repos(crates: &[Crate]) -> Result<usize, Box<dyn Error>> {
},
)?;

for krate in crates {
if krate.repository.is_empty() {
continue;
}
let mut matched = false;
repos = repos
.into_iter()
.map(|mut repo| {
if krate.repository.starts_with(&repo.url) {
repo.count += 1;
matched = true;
repo.crates.push(krate.clone());
}
repo
})
.collect();
}

repos = repos
.into_iter()
.map(|mut repo| {
let count = render_filtered_crates(
&format!("vcs/{}.html", &repo.name),
&format!("Crates in {}", repo.display),
&repo.name,
crates,
|krate| krate.repository.starts_with(&repo.url),
)
.unwrap();

repo.count = count;
repo.percentage = percentage(repo.count, crates.len());

repo
})
.collect();

render_list_crates_by_repo(&repos)?;

repos.push(Repo {
display: String::from("Other repositories we don't recognize"),
name: String::from("other-repos"),
Expand Down

0 comments on commit 1b7a56c

Please sign in to comment.