From 81bba51351fd60e1de99419bfd7cdeefd65e4011 Mon Sep 17 00:00:00 2001 From: konstin Date: Mon, 4 Mar 2024 15:28:45 +0100 Subject: [PATCH] . --- crates/uv-dev/src/main.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/crates/uv-dev/src/main.rs b/crates/uv-dev/src/main.rs index 76145ee5f..bd172e8ca 100644 --- a/crates/uv-dev/src/main.rs +++ b/crates/uv-dev/src/main.rs @@ -1,9 +1,10 @@ use std::env; -use std::io::IsTerminal; +use std::io::{IsTerminal, Write}; use std::path::PathBuf; use std::process::ExitCode; use std::time::Instant; +use anstream::stream::AsLockedWrite; use anstream::{eprintln, println}; use anyhow::Result; use clap::Parser; @@ -12,6 +13,7 @@ use tracing::{debug, instrument}; use tracing_durations_export::plot::PlotConfig; use tracing_durations_export::DurationsLayerBuilder; use tracing_indicatif::IndicatifLayer; +use tracing_subscriber::fmt::MakeWriter; use tracing_subscriber::layer::SubscriberExt; use tracing_subscriber::util::SubscriberInitExt; use tracing_subscriber::EnvFilter; @@ -123,8 +125,10 @@ async fn main() -> ExitCode { }; let indicatif_layer = IndicatifLayer::new(); + let indicatif_writer: Box = Box::new(indicatif_layer.get_stderr_writer()); + let indicatif_compatible_writer_layer = tracing_subscriber::fmt::layer() - .with_writer(indicatif_layer.get_stderr_writer()) + .with_writer(|| Box::new(anstream::AutoStream::auto(indicatif_writer))) .with_ansi(std::io::stderr().is_terminal()) .with_target(false); let filter_layer = EnvFilter::try_from_default_env().unwrap_or_else(|_| {