Skip to content

Commit 6f033ba

Browse files
committed
handle prefix
1 parent 287646c commit 6f033ba

1 file changed

Lines changed: 16 additions & 3 deletions

File tree

src/utils/progress.rs

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
use parking_lot::RwLock;
2+
use std::borrow::Cow;
23
use std::env;
34
use std::io::IsTerminal as _;
45
use std::sync::Arc;
@@ -24,6 +25,7 @@ pub fn use_progress_bar() -> bool {
2425
pub struct ProgressBar {
2526
inner: Option<Arc<indicatif::ProgressBar>>,
2627
start: Instant,
28+
prefix: Option<String>,
2729
}
2830

2931
impl ProgressBar {
@@ -49,13 +51,15 @@ impl ProgressBar {
4951
ProgressBar {
5052
inner: Some(inner),
5153
start: Instant::now(),
54+
prefix: None,
5255
}
5356
}
5457

5558
fn no_progress_bar() -> Self {
5659
ProgressBar {
5760
inner: None,
5861
start: Instant::now(),
62+
prefix: None,
5963
}
6064
}
6165

@@ -71,7 +75,7 @@ impl ProgressBar {
7175
inner.finish_with_message(&msg);
7276
logging::set_progress_bar(None);
7377
} else {
74-
log::info!("{msg}");
78+
log::info!("> {msg}");
7579
}
7680
}
7781

@@ -92,7 +96,14 @@ impl ProgressBar {
9296
if let Some(inner) = &self.inner {
9397
inner.set_message(msg.as_ref());
9498
} else {
95-
log::debug!("{}", msg.as_ref());
99+
log::debug!(
100+
"{}{}",
101+
self.prefix
102+
.as_deref()
103+
.map(|s| format!("{s} "))
104+
.unwrap_or_else(|| String::new()),
105+
msg.as_ref()
106+
);
96107
}
97108
}
98109

@@ -102,9 +113,11 @@ impl ProgressBar {
102113
}
103114
}
104115

105-
pub fn set_prefix<S: AsRef<str>>(&self, prefix: S) {
116+
pub fn set_prefix<S: AsRef<str>>(&mut self, prefix: S) {
106117
if let Some(inner) = &self.inner {
107118
inner.set_prefix(prefix.as_ref());
119+
} else {
120+
self.prefix = Some(prefix.as_ref().to_owned());
108121
}
109122
}
110123

0 commit comments

Comments
 (0)