refactor(tvix/tracing): remove use of lazy_static

This is now supported in the standard library via std::sync::LazyLock,
but requires some manual shuffling around of code.

Change-Id: I14bee4068dc73c948321481b5a4e1fc922a89a27
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12611
Tested-by: BuildkiteCI
Autosubmit: flokli <flokli@flokli.de>
Reviewed-by: tazjin <tazjin@tvl.su>
This commit is contained in:
Florian Klink 2024-10-13 18:05:13 +03:00 committed by clbot
parent 15b5bf2003
commit 3c3436d3ad
4 changed files with 15 additions and 17 deletions

1
tvix/Cargo.lock generated
View file

@ -4824,7 +4824,6 @@ dependencies = [
"axum",
"http",
"indicatif",
"lazy_static",
"opentelemetry 0.24.0",
"opentelemetry-http",
"opentelemetry-otlp",

View file

@ -16178,10 +16178,6 @@ rec {
name = "indicatif";
packageId = "indicatif";
}
{
name = "lazy_static";
packageId = "lazy_static";
}
{
name = "opentelemetry";
packageId = "opentelemetry 0.24.0";

View file

@ -4,7 +4,6 @@ version = "0.1.0"
edition = "2021"
[dependencies]
lazy_static = { workspace = true }
tracing = { workspace = true, features = ["max_level_trace", "release_max_level_debug"] }
tracing-subscriber = { workspace = true, features = ["env-filter"] }
indicatif = { workspace = true }

View file

@ -1,5 +1,5 @@
use indicatif::ProgressStyle;
use lazy_static::lazy_static;
use std::sync::LazyLock;
use tokio::sync::{mpsc, oneshot};
use tracing::Level;
use tracing_indicatif::{filter::IndicatifFilter, writer, IndicatifLayer, IndicatifWriter};
@ -22,20 +22,24 @@ use tracing_tracy::TracyLayer;
pub mod propagate;
lazy_static! {
pub static ref PB_PROGRESS_STYLE: ProgressStyle = ProgressStyle::with_template(
"{span_child_prefix} {wide_msg} {bar:10} ({elapsed}) {pos:>7}/{len:7}"
pub static PB_PROGRESS_STYLE: LazyLock<ProgressStyle> = LazyLock::new(|| {
ProgressStyle::with_template(
"{span_child_prefix} {wide_msg} {bar:10} ({elapsed}) {pos:>7}/{len:7}",
)
.expect("invalid progress template");
pub static ref PB_TRANSFER_STYLE: ProgressStyle = ProgressStyle::with_template(
.expect("invalid progress template")
});
pub static PB_TRANSFER_STYLE: LazyLock<ProgressStyle> = LazyLock::new(|| {
ProgressStyle::with_template(
"{span_child_prefix} {wide_msg} {binary_bytes:>7}/{binary_total_bytes:7}@{decimal_bytes_per_sec} ({elapsed}) {bar:10} "
)
.expect("invalid progress template");
pub static ref PB_SPINNER_STYLE: ProgressStyle = ProgressStyle::with_template(
"{span_child_prefix}{spinner} {wide_msg} ({elapsed}) {pos:>7}/{len:7}"
.expect("invalid progress template")
});
pub static PB_SPINNER_STYLE: LazyLock<ProgressStyle> = LazyLock::new(|| {
ProgressStyle::with_template(
"{span_child_prefix}{spinner} {wide_msg} ({elapsed}) {pos:>7}/{len:7}",
)
.expect("invalid progress template");
}
.expect("invalid progress template")
});
#[derive(thiserror::Error, Debug)]
pub enum Error {