[dependencies.async-std]
optional = true
version = "1.12"
[dependencies.async-trait]
optional = true
version = "0.1"
[dependencies.smol]
optional = true
version = "1.2"
[dependencies.tokio]
optional = true
version = "1.19"
[dev-dependencies.async-std]
features = ["attributes"]
version = "1.12"
[dev-dependencies.libc]
version = "0.2.126"
[dev-dependencies.smol-potat]
version = "1.1"
[dev-dependencies.tempdir]
version = "0.3"
[dev-dependencies.tokio]
features = ["full"]
version = "1.19"
[features]
default = ["sync"]
smol-async = ["smol", "async-trait"]
std-async = ["async-std/async-io", "async-trait"]
sync = []
tokio-async = ["tokio/fs", "async-trait"]
[package]
authors = ["Dan Burkert <dan@danburkert.com>", "Al Liu <scygliu1@gmail.com>"]
categories = ["filesystem", "external-ffi-bindings", "asynchronous"]
description = "No libc, pure Rust cross-platform file locks and file duplication. Original fs2, now supports async and replace libc by rustix."
documentation = "https://docs.rs/fs4"
edition = "2021"
keywords = ["file", "fs2", "lock", "duplicate", "flock"]
license = "MIT/Apache-2.0"
name = "fs4"
readme = "README.md"
repository = "https://github.com/al8n/fs4-rs"
resolver = "2"
version = "0.6.0"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[target."cfg(any(target_os = \"macos\", target_os = \"ios\"))".dependencies.libc]
version = "0.2"
[target."cfg(not(windows))".dependencies.rustix]
features = ["fs"]
version = "0.35"
[target."cfg(windows)".dependencies.winapi]
features = ["handleapi", "processthreadsapi", "winerror", "fileapi", "winbase", "std"]
version = "0.3"