diff options
author | David Sherret <dsherret@users.noreply.github.com> | 2023-03-08 10:13:13 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-03-08 15:13:13 +0000 |
commit | 88b5fd90880b78498d0bbbdec6342b3db5887ef1 (patch) | |
tree | f3c0e4b99d3253c30c9a6f9625c7ac926d0b83c9 /cli/util/progress_bar/renderer.rs | |
parent | 72fe9bb47005e720444e65a66e91559287137780 (diff) |
fix: attempt to only allow one deno process to update the node_modules folder at a time (#18058)
This is implemented in such a way that it should still allow processes
to go through when a file lock wasn't properly cleaned up and the OS
hasn't released it yet (but with a 200ms-ish delay).
Closes #18039
Diffstat (limited to 'cli/util/progress_bar/renderer.rs')
-rw-r--r-- | cli/util/progress_bar/renderer.rs | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/cli/util/progress_bar/renderer.rs b/cli/util/progress_bar/renderer.rs index 0ea275e77..5635ad316 100644 --- a/cli/util/progress_bar/renderer.rs +++ b/cli/util/progress_bar/renderer.rs @@ -6,8 +6,11 @@ use deno_runtime::colors; use crate::util::display::human_download_size; +use super::ProgressMessagePrompt; + #[derive(Clone)] pub struct ProgressDataDisplayEntry { + pub prompt: ProgressMessagePrompt, pub message: String, pub position: u64, pub total_size: u64, @@ -142,7 +145,7 @@ impl ProgressBarRenderer for TextOnlyProgressBarRenderer { format!( "{} {}{}{}", - colors::green("Download"), + data.display_entry.prompt.as_text(), data.display_entry.message, colors::gray(bytes_text), colors::gray(total_text), @@ -195,6 +198,7 @@ mod test { let renderer = BarProgressBarRenderer; let mut data = ProgressData { display_entry: ProgressDataDisplayEntry { + prompt: ProgressMessagePrompt::Download, message: "data".to_string(), position: 0, total_size: 10 * BYTES_TO_KIB, @@ -251,6 +255,7 @@ mod test { let renderer = TextOnlyProgressBarRenderer; let mut data = ProgressData { display_entry: ProgressDataDisplayEntry { + prompt: ProgressMessagePrompt::Blocking, message: "data".to_string(), position: 0, total_size: 10 * BYTES_TO_KIB, @@ -263,7 +268,7 @@ mod test { }; let text = renderer.render(data.clone()); let text = test_util::strip_ansi_codes(&text); - assert_eq!(text, "Download data 0.00KiB/10.00KiB (2/3)"); + assert_eq!(text, "Blocking data 0.00KiB/10.00KiB (2/3)"); data.pending_entries = 0; data.total_entries = 1; @@ -271,6 +276,6 @@ mod test { data.display_entry.total_size = 0; let text = renderer.render(data); let text = test_util::strip_ansi_codes(&text); - assert_eq!(text, "Download data"); + assert_eq!(text, "Blocking data"); } } |