diff --git a/proxmox-dns-api/Cargo.toml b/proxmox-dns-api/Cargo.toml index 406c9466..98045b34 100644 --- a/proxmox-dns-api/Cargo.toml +++ b/proxmox-dns-api/Cargo.toml @@ -7,11 +7,11 @@ license.workspace = true repository.workspace = true exclude.workspace = true description = "DNS Management API implementation" +rust-version.workspace = true [dependencies] anyhow.workspace = true const_format.workspace = true -lazy_static.workspace = true regex.workspace = true serde = { workspace = true, features = ["derive"] } diff --git a/proxmox-dns-api/src/resolv_conf.rs b/proxmox-dns-api/src/resolv_conf.rs index 1b09d07f..32698913 100644 --- a/proxmox-dns-api/src/resolv_conf.rs +++ b/proxmox-dns-api/src/resolv_conf.rs @@ -1,9 +1,7 @@ -use std::sync::Arc; -use std::sync::Mutex; +use std::sync::{Arc, LazyLock, Mutex}; use anyhow::Error; use const_format::concatcp; -use lazy_static::lazy_static; use proxmox_config_digest::ConfigDigest; use regex::Regex; @@ -34,11 +32,10 @@ pub fn read_etc_resolv_conf( let data = String::from_utf8(raw)?; - lazy_static! { - static ref DOMAIN_REGEX: Regex = Regex::new(r"^\s*(?:search|domain)\s+(\S+)\s*").unwrap(); - static ref SERVER_REGEX: Regex = - Regex::new(concatcp!(r"^\s*nameserver\s+(", IPRE_STR, r")\s*")).unwrap(); - } + static DOMAIN_REGEX: LazyLock = + LazyLock::new(|| Regex::new(r"^\s*(?:search|domain)\s+(\S+)\s*").unwrap()); + static SERVER_REGEX: LazyLock = + LazyLock::new(|| Regex::new(concatcp!(r"^\s*nameserver\s+(", IPRE_STR, r")\s*")).unwrap()); let mut options = String::new(); @@ -78,9 +75,7 @@ pub fn update_dns( delete: Option>, digest: Option, ) -> Result<(), Error> { - lazy_static! { - static ref MUTEX: Arc> = Arc::new(Mutex::new(())); - } + static MUTEX: LazyLock>> = LazyLock::new(|| Arc::new(Mutex::new(()))); let _guard = MUTEX.lock();