Compare commits

..

2 commits

Author SHA1 Message Date
c9dbec730c ent show: show tags, if any 2025-07-20 00:04:11 -06:00
0d9a893087 ent show: simplify logic
This simplifies the code flow and gets rid of two levels of indentation.
2025-07-20 00:03:18 -06:00

View file

@ -285,35 +285,40 @@ fn handle_command(
Commands::Show { issue_id } => { Commands::Show { issue_id } => {
let issues = entomologist::database::read_issues_database(issues_database_source)?; let issues = entomologist::database::read_issues_database(issues_database_source)?;
match issues.get_issue(issue_id) { let Some(issue) = issues.get_issue(issue_id) else {
Some(issue) => { return Err(anyhow::anyhow!("issue {} not found", issue_id));
println!("issue {}", issue_id); };
println!("author: {}", issue.author); println!("issue {}", issue_id);
println!("creation_time: {}", issue.creation_time); println!("author: {}", issue.author);
if let Some(done_time) = &issue.done_time { if issue.tags.len() > 0 {
println!("done_time: {}", done_time); print!("tags: ");
} let mut separator = "";
println!("state: {:?}", issue.state); for tag in &issue.tags {
if let Some(dependencies) = &issue.dependencies { print!("{}{}", separator, tag);
println!("dependencies: {:?}", dependencies); separator = ", ";
}
if let Some(assignee) = &issue.assignee {
println!("assignee: {}", assignee);
}
println!("");
println!("{}", issue.description);
for comment in &issue.comments {
println!("");
println!("comment: {}", comment.uuid);
println!("author: {}", comment.author);
println!("creation_time: {}", comment.creation_time);
println!("");
println!("{}", comment.description);
}
}
None => {
return Err(anyhow::anyhow!("issue {} not found", issue_id));
} }
println!("");
}
println!("creation_time: {}", issue.creation_time);
if let Some(done_time) = &issue.done_time {
println!("done_time: {}", done_time);
}
println!("state: {:?}", issue.state);
if let Some(dependencies) = &issue.dependencies {
println!("dependencies: {:?}", dependencies);
}
if let Some(assignee) = &issue.assignee {
println!("assignee: {}", assignee);
}
println!("");
println!("{}", issue.description);
for comment in &issue.comments {
println!("");
println!("comment: {}", comment.uuid);
println!("author: {}", comment.author);
println!("creation_time: {}", comment.creation_time);
println!("");
println!("{}", comment.description);
} }
} }