[pbs-devel] [PATCH proxmox 03/12] async: remove lazy_static dependency
Maximiliano Sandoval
m.sandoval at proxmox.com
Tue Aug 13 12:57:00 CEST 2024
Signed-off-by: Maximiliano Sandoval <m.sandoval at proxmox.com>
---
proxmox-async/Cargo.toml | 2 +-
proxmox-async/debian/control | 2 --
proxmox-async/src/runtime.rs | 11 ++++-------
3 files changed, 5 insertions(+), 10 deletions(-)
diff --git a/proxmox-async/Cargo.toml b/proxmox-async/Cargo.toml
index 669ae08b..8508ef5d 100644
--- a/proxmox-async/Cargo.toml
+++ b/proxmox-async/Cargo.toml
@@ -6,13 +6,13 @@ edition.workspace = true
license.workspace = true
repository.workspace = true
description = "Proxmox async/tokio helpers"
+rust-version.workspace = true
exclude.workspace = true
[dependencies]
anyhow.workspace = true
futures.workspace = true
-lazy_static.workspace = true
pin-utils.workspace = true
tokio = { workspace = true, features = [ "net", "rt", "rt-multi-thread", "sync"] }
diff --git a/proxmox-async/debian/control b/proxmox-async/debian/control
index 517244bd..da937ed9 100644
--- a/proxmox-async/debian/control
+++ b/proxmox-async/debian/control
@@ -8,7 +8,6 @@ Build-Depends: debhelper (>= 12),
libstd-rust-dev <!nocheck>,
librust-anyhow-1+default-dev <!nocheck>,
librust-futures-0.3+default-dev <!nocheck>,
- librust-lazy-static-1+default-dev (>= 1.4-~~) <!nocheck>,
librust-pin-utils-0.1+default-dev <!nocheck>,
librust-proxmox-io-1+default-dev (>= 1.1.0-~~) <!nocheck>,
librust-proxmox-io-1+tokio-dev (>= 1.1.0-~~) <!nocheck>,
@@ -34,7 +33,6 @@ Depends:
${misc:Depends},
librust-anyhow-1+default-dev,
librust-futures-0.3+default-dev,
- librust-lazy-static-1+default-dev (>= 1.4-~~),
librust-pin-utils-0.1+default-dev,
librust-proxmox-io-1+default-dev (>= 1.1.0-~~),
librust-proxmox-io-1+tokio-dev (>= 1.1.0-~~),
diff --git a/proxmox-async/src/runtime.rs b/proxmox-async/src/runtime.rs
index efc1cd88..0721fd9e 100644
--- a/proxmox-async/src/runtime.rs
+++ b/proxmox-async/src/runtime.rs
@@ -33,19 +33,16 @@
//! [openssl-bug]: https://github.com/openssl/openssl/issues/6214
use std::future::Future;
-use std::sync::{Arc, Mutex, Weak};
+use std::sync::{Arc, LazyLock, Mutex, Weak};
use std::task::{Context, Poll, Waker};
use std::thread::{self, Thread};
-use lazy_static::lazy_static;
use pin_utils::pin_mut;
use tokio::runtime::{self, Runtime, RuntimeFlavor};
-lazy_static! {
- // avoid openssl bug: https://github.com/openssl/openssl/issues/6214
- // by dropping the runtime as early as possible
- static ref RUNTIME: Mutex<Weak<Runtime>> = Mutex::new(Weak::new());
-}
+// avoid openssl bug: https://github.com/openssl/openssl/issues/6214
+// by dropping the runtime as early as possible
+static RUNTIME: LazyLock<Mutex<Weak<Runtime>>> = LazyLock::new(|| Mutex::new(Weak::new()));
#[link(name = "crypto")]
extern "C" {
--
2.39.2
More information about the pbs-devel
mailing list