diff options
author | Florian Klink <flokli@flokli.de> | 2024-10-13T16·09+0300 |
---|---|---|
committer | flokli <flokli@flokli.de> | 2024-10-17T22·15+0000 |
commit | 1c80bc4b5b2736e9421fc8a6f833f1e592e08642 (patch) | |
tree | a4d58eec75f230bbf559933a85d19c25ed35e8b7 /tvix/store/src/pathinfoservice | |
parent | f0d594789ee01df43de50198adef91a11e2a355a (diff) |
refactor(tvix/store): remove use of lazy_static r/8825
This is now supported in the standard library via std::sync::LazyLock, but requires some manual shuffling around of code. Change-Id: Ifca792f4d2dbc36b703de4a4dfa406015ab86da7 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12614 Autosubmit: flokli <flokli@flokli.de> Reviewed-by: flokli <flokli@flokli.de> Reviewed-by: edef <edef@edef.eu> Tested-by: BuildkiteCI
Diffstat (limited to 'tvix/store/src/pathinfoservice')
-rw-r--r-- | tvix/store/src/pathinfoservice/from_addr.rs | 8 | ||||
-rw-r--r-- | tvix/store/src/pathinfoservice/lru.rs | 20 |
2 files changed, 12 insertions, 16 deletions
diff --git a/tvix/store/src/pathinfoservice/from_addr.rs b/tvix/store/src/pathinfoservice/from_addr.rs index 3dfb08c9e817..683457345c6c 100644 --- a/tvix/store/src/pathinfoservice/from_addr.rs +++ b/tvix/store/src/pathinfoservice/from_addr.rs @@ -57,16 +57,14 @@ pub async fn from_addr( mod tests { use super::from_addr; use crate::composition::{Composition, DeserializeWithRegistry, ServiceBuilder, REG}; - use lazy_static::lazy_static; use rstest::rstest; + use std::sync::LazyLock; use tempfile::TempDir; use tvix_castore::blobservice::{BlobService, MemoryBlobServiceConfig}; use tvix_castore::directoryservice::{DirectoryService, MemoryDirectoryServiceConfig}; - lazy_static! { - static ref TMPDIR_REDB_1: TempDir = TempDir::new().unwrap(); - static ref TMPDIR_REDB_2: TempDir = TempDir::new().unwrap(); - } + static TMPDIR_REDB_1: LazyLock<TempDir> = LazyLock::new(|| TempDir::new().unwrap()); + static TMPDIR_REDB_2: LazyLock<TempDir> = LazyLock::new(|| TempDir::new().unwrap()); // the gRPC tests below don't fail, because we connect lazily. diff --git a/tvix/store/src/pathinfoservice/lru.rs b/tvix/store/src/pathinfoservice/lru.rs index 2d8d52e3c9f6..3055d73c22f9 100644 --- a/tvix/store/src/pathinfoservice/lru.rs +++ b/tvix/store/src/pathinfoservice/lru.rs @@ -86,22 +86,20 @@ impl ServiceBuilder for LruPathInfoServiceConfig { #[cfg(test)] mod test { use nix_compat::store_path::StorePath; - use std::num::NonZeroUsize; + use std::{num::NonZeroUsize, sync::LazyLock}; use crate::{ pathinfoservice::{LruPathInfoService, PathInfo, PathInfoService}, tests::fixtures::PATH_INFO, }; - use lazy_static::lazy_static; - - lazy_static! { - static ref PATHINFO_2: PathInfo = { - let mut p = PATH_INFO.clone(); - p.store_path = StorePath::from_name_and_digest_fixed("dummy", [1; 20]).unwrap(); - p - }; - static ref PATHINFO_2_DIGEST: [u8; 20] = *PATHINFO_2.store_path.digest(); - } + static PATHINFO_2: LazyLock<PathInfo> = LazyLock::new(|| { + let mut p = PATH_INFO.clone(); + p.store_path = StorePath::from_name_and_digest_fixed("dummy", [1; 20]).unwrap(); + p + }); + + static PATHINFO_2_DIGEST: LazyLock<[u8; 20]> = + LazyLock::new(|| *PATHINFO_2.store_path.digest()); #[tokio::test] async fn evict() { |