Skip to main content

_diffctx/config/
git.rs

1use once_cell::sync::Lazy;
2
3pub const DEFAULT_TIMEOUT_SECONDS: u64 = 60;
4pub const POLL_INTERVAL_MS: u64 = 10;
5pub const CATFILE_TERMINATION_TIMEOUT_SECONDS: u64 = 5;
6
7pub struct GitConfig {
8    pub default_timeout_seconds: u64,
9    pub poll_interval_ms: u64,
10    pub catfile_termination_timeout_seconds: u64,
11}
12
13impl Default for GitConfig {
14    fn default() -> Self {
15        Self {
16            default_timeout_seconds: DEFAULT_TIMEOUT_SECONDS,
17            poll_interval_ms: POLL_INTERVAL_MS,
18            catfile_termination_timeout_seconds: CATFILE_TERMINATION_TIMEOUT_SECONDS,
19        }
20    }
21}
22
23pub static GIT: Lazy<GitConfig> = Lazy::new(GitConfig::default);