From 395a586265ba67a7cf0523885aae7ac7eb34576f Mon Sep 17 00:00:00 2001 From: Jiahao XU <30436523+NobodyXu@users.noreply.github.com> Date: Sat, 22 Feb 2025 21:21:02 +1100 Subject: [PATCH] Fix fs-lock error on nightly (#2059) * Fix fs-lock error on nightly Since File::*lock* API is stablised on 1.87, it overrides fs4::fs_std::FileExt Signed-off-by: Jiahao XU <30436523+NobodyXu@users.noreply.github.com> * Fix other fs-lock method Signed-off-by: Jiahao XU <30436523+NobodyXu@users.noreply.github.com> * Fix unit-tests when no test is run Signed-off-by: Jiahao XU <30436523+NobodyXu@users.noreply.github.com> --------- Signed-off-by: Jiahao XU <30436523+NobodyXu@users.noreply.github.com> --- crates/fs-lock/src/lib.rs | 10 +++++----- justfile | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/crates/fs-lock/src/lib.rs b/crates/fs-lock/src/lib.rs index 0a96609f..0bf20a96 100644 --- a/crates/fs-lock/src/lib.rs +++ b/crates/fs-lock/src/lib.rs @@ -19,7 +19,7 @@ impl FileLock { /// /// Note that this operation is blocking, and should not be called in async contexts. pub fn new_exclusive(file: File) -> io::Result { - file.lock_exclusive()?; + FileExt::lock_exclusive(&file)?; Ok(Self(file)) } @@ -32,7 +32,7 @@ impl FileLock { /// /// Note that this operation is blocking, and should not be called in async contexts. pub fn new_try_exclusive(file: File) -> Result)> { - match file.try_lock_exclusive() { + match FileExt::try_lock_exclusive(&file) { Ok(()) => Ok(Self(file)), Err(e) if e.raw_os_error() == fs4::lock_contended_error().raw_os_error() => { Err((file, None)) @@ -45,7 +45,7 @@ impl FileLock { /// /// Note that this operation is blocking, and should not be called in async contexts. pub fn new_shared(file: File) -> io::Result { - file.lock_shared()?; + FileExt::lock_shared(&file)?; Ok(Self(file)) } @@ -58,7 +58,7 @@ impl FileLock { /// /// Note that this operation is blocking, and should not be called in async contexts. pub fn new_try_shared(file: File) -> Result)> { - match file.try_lock_shared() { + match FileExt::try_lock_shared(&file) { Ok(()) => Ok(Self(file)), Err(e) if e.raw_os_error() == fs4::lock_contended_error().raw_os_error() => { Err((file, None)) @@ -70,7 +70,7 @@ impl FileLock { impl Drop for FileLock { fn drop(&mut self) { - let _ = self.unlock(); + let _ = FileExt::unlock(&self.0); } } diff --git a/justfile b/justfile index 291ad42a..ca2122d2 100644 --- a/justfile +++ b/justfile @@ -257,7 +257,7 @@ e2e-tests: e2e-test-live e2e-test-manifest-path e2e-test-git e2e-test-other-repo unit-tests: print-env cargo test --no-run --target {{target}} - cargo nextest run --target {{target}} {{cargo-nextest-additional-args}} + cargo nextest run --target {{target}} --no-tests=pass {{cargo-nextest-additional-args}} cargo test --doc --target {{target}} test: unit-tests build e2e-tests