From b66e8c8d9c1d9367df61e14f6452d6e154e9536b Mon Sep 17 00:00:00 2001 From: Rahix Date: Tue, 9 Dec 2025 15:29:21 +0100 Subject: [PATCH] Replace dirty unwrap() with expect("TODO") This makes it obvious where better error handling is still needed. --- techtree-manager/src/collect.rs | 4 ++-- techtree-manager/src/issue.rs | 8 ++++---- techtree-manager/src/main.rs | 8 ++++---- techtree-manager/src/render.rs | 14 ++++++++++++-- techtree-manager/src/tree.rs | 6 +++--- 5 files changed, 25 insertions(+), 15 deletions(-) diff --git a/techtree-manager/src/collect.rs b/techtree-manager/src/collect.rs index b02afca..7d1dcb8 100644 --- a/techtree-manager/src/collect.rs +++ b/techtree-manager/src/collect.rs @@ -123,9 +123,9 @@ fn element_from_issue(issue: &forgejo_api::structs::Issue) -> anyhow::Result anyh .iter() .filter(|l| l.name.as_deref() == Some("Stale")) .next() - .map(|l| l.id.unwrap()); + .map(|l| l.id.expect("TODO")); if let Some(stale_label_id) = stale_label_id { log::info!("Removing `Stale` label from issue #{issue_number}..."); diff --git a/techtree-manager/src/main.rs b/techtree-manager/src/main.rs index b593511..d9e2f81 100644 --- a/techtree-manager/src/main.rs +++ b/techtree-manager/src/main.rs @@ -60,12 +60,12 @@ async fn run() -> anyhow::Result<()> { "{}/{}", meta.issue.repository.owner, meta.issue.repository.name )) - .unwrap(); + .expect("TODO"); let repo_auth_url = token.as_ref().map(|token| { let mut repo_auth_url = repo_url.clone(); - repo_auth_url.set_username("forgejo-actions").unwrap(); - repo_auth_url.set_password(Some(&token)).unwrap(); + repo_auth_url.set_username("forgejo-actions").expect("TODO"); + repo_auth_url.set_password(Some(&token)).expect("TODO"); repo_auth_url }); @@ -138,7 +138,7 @@ async fn run() -> anyhow::Result<()> { } 'issues: for issue in tree.iter_issues() { - let subtree = tree.subtree_for_issue(issue).unwrap(); + let subtree = tree.subtree_for_issue(issue).expect("TODO"); let hash = subtree.stable_hash(); let (bot_comment, _is_new) = issue::find_or_make_bot_comment(&ctx, issue) diff --git a/techtree-manager/src/render.rs b/techtree-manager/src/render.rs index d8fbcd8..09f0e4b 100644 --- a/techtree-manager/src/render.rs +++ b/techtree-manager/src/render.rs @@ -84,8 +84,18 @@ pub async fn publish(ctx: &crate::Context, rendered: &RenderedTree) -> anyhow::R .arg("-C") .arg(&rendered.repo_dir) .arg("add") - .arg(rendered.dot_file.strip_prefix(&rendered.repo_dir).unwrap()) - .arg(rendered.svg_file.strip_prefix(&rendered.repo_dir).unwrap()) + .arg( + rendered + .dot_file + .strip_prefix(&rendered.repo_dir) + .expect("TODO"), + ) + .arg( + rendered + .svg_file + .strip_prefix(&rendered.repo_dir) + .expect("TODO"), + ) .success() .context("Failed to add generated graph files to git index")?; diff --git a/techtree-manager/src/tree.rs b/techtree-manager/src/tree.rs index db6a93f..e3911fc 100644 --- a/techtree-manager/src/tree.rs +++ b/techtree-manager/src/tree.rs @@ -165,8 +165,8 @@ impl Tree { } pub fn add_dependency_by_issue_number(&mut self, dependant: u64, dependency: u64) { - let a = self.find_element_by_issue_number(dependant).unwrap(); - let b = self.find_element_by_issue_number(dependency).unwrap(); + let a = self.find_element_by_issue_number(dependant).expect("TODO"); + let b = self.find_element_by_issue_number(dependency).expect("TODO"); self.graph.add_edge(a, b, ()); } @@ -422,7 +422,7 @@ impl<'a> Subtree<'a> { .collect(); edges.sort(); - let json_data = serde_json::ser::to_string(&(nodes, edges, HASH_EPOCH)).unwrap(); + let json_data = serde_json::ser::to_string(&(nodes, edges, HASH_EPOCH)).expect("TODO"); sha256::digest(json_data) } }