1use std::io;
4
5use crate::tmux;
6
7#[derive(thiserror::Error, Debug)]
12pub enum Error {
13 #[error("Tmux operation failed: `{source}`")]
15 TmuxError {
16 #[from]
17 source: tmux::error::Error,
19 },
20
21 #[error("unsupported archive version: `{0}`")]
23 ArchiveVersion(String),
24
25 #[error("missing metadata: `{0}`")]
27 MissingMetadata(String),
28
29 #[error("unexpected configuration: `{0}`")]
31 ConfigError(String),
32
33 #[error("serde error: `{source}`")]
35 Serde {
36 #[from]
37 source: serde_json::Error,
39 },
40
41 #[error("failed with io: `{source}`")]
43 Io {
44 #[from]
45 source: io::Error,
47 },
48}