From f20969de9b42527518b27e3fb78b6d487780baff Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Thu, 4 Jan 2024 19:18:06 +0200 Subject: refactor(tvix/castore): relax trait bounds for DS Make this an `AsRef`. This helps dropping some Clone requirements. Unfortunately, we can't thread this through to TvixStoreIO just yet. Change-Id: I3f07eb28d6c793d3313fe21506ada84d5a8aa3ac Reviewed-on: https://cl.tvl.fyi/c/depot/+/10533 Autosubmit: flokli Tested-by: BuildkiteCI Reviewed-by: raitobezarius --- tvix/castore/src/import.rs | 4 ++-- tvix/castore/src/tests/import.rs | 7 ++++--- 2 files changed, 6 insertions(+), 5 deletions(-) (limited to 'tvix/castore') diff --git a/tvix/castore/src/import.rs b/tvix/castore/src/import.rs index 1b8c4ec5a54e..4545f35fc319 100644 --- a/tvix/castore/src/import.rs +++ b/tvix/castore/src/import.rs @@ -149,7 +149,7 @@ where /// It's up to the caller to possibly register it somewhere (and potentially /// rename it based on some naming scheme) #[instrument(skip(blob_service, directory_service), fields(path=?p), err)] -pub async fn ingest_path( +pub async fn ingest_path<'a, BS, DS, P>( blob_service: BS, directory_service: DS, p: P, @@ -157,7 +157,7 @@ pub async fn ingest_path( where P: AsRef + Debug, BS: Deref + Clone, - DS: Deref, + DS: Deref, { let mut directories: HashMap = HashMap::default(); diff --git a/tvix/castore/src/tests/import.rs b/tvix/castore/src/tests/import.rs index 75c632799cd9..333254706d61 100644 --- a/tvix/castore/src/tests/import.rs +++ b/tvix/castore/src/tests/import.rs @@ -4,6 +4,7 @@ use crate::fixtures::*; use crate::import::ingest_path; use crate::proto; use crate::utils::{gen_blob_service, gen_directory_service}; +use std::ops::Deref; use std::sync::Arc; use tempfile::TempDir; @@ -27,7 +28,7 @@ async fn symlink() { let root_node = ingest_path( blob_service, - directory_service, + &directory_service.deref(), tmpdir.path().join("doesntmatter"), ) .await @@ -53,7 +54,7 @@ async fn single_file() { let root_node = ingest_path( blob_service.clone(), - directory_service, + &directory_service.deref(), tmpdir.path().join("root"), ) .await @@ -92,7 +93,7 @@ async fn complicated() { let root_node = ingest_path( blob_service.clone(), - directory_service.clone(), + &directory_service.deref(), tmpdir.path(), ) .await -- cgit 1.4.1