ent done-time ISSUE TIME: report parse error instead of panicking #28

Merged
sigil-03 merged 1 commit from fix-done-time-parsing into main 2025-07-20 12:39:59 -06:00

View file

@ -499,9 +499,13 @@ fn handle_command(
let Some(issue) = issues.get_mut_issue(issue_id) else { let Some(issue) = issues.get_mut_issue(issue_id) else {
return Err(anyhow::anyhow!("issue {} not found", issue_id)); return Err(anyhow::anyhow!("issue {} not found", issue_id));
}; };
let done_time = chrono::DateTime::parse_from_rfc3339(done_time) let done_time = match chrono::DateTime::parse_from_rfc3339(done_time) {
.unwrap() Ok(done_time) => done_time.with_timezone(&chrono::Local),
.with_timezone(&chrono::Local); Err(e) => {
eprintln!("failed to parse done-time from {}", done_time);
return Err(e.into());
}
};
issue.set_done_time(done_time)?; issue.set_done_time(done_time)?;
} }
None => match &issue.done_time { None => match &issue.done_time {