oxi/store/issues/
error.rs1use std::io;
4
5use chrono::{DateTime, Utc};
6use thiserror::Error;
7
8#[derive(Debug, Error)]
14pub enum IssueError {
15 #[error("issue #{id} was modified since last read; re-read and retry")]
18 Conflict { id: u32 },
19
20 #[error("issue #{id} is currently being worked on by session {owner}")]
22 Assigned {
23 id: u32,
24 owner: String,
25 acquired_at: DateTime<Utc>,
26 },
27
28 #[error("issue #{id} is not assigned to session {caller}; run `start` first")]
30 NotAssigned { id: u32, caller: String },
31
32 #[error("issue #{id} not found")]
34 NotFound { id: u32 },
35
36 #[error(transparent)]
37 Io(#[from] io::Error),
38
39 #[error(transparent)]
40 Other(#[from] anyhow::Error),
41}