async-fd-lock 0.2.0

Advisory cross-platform file locks using file descriptors with async support by spawning blocking tasks.
Documentation
Build #2108398 2025-05-13 13:14:50

# rustc version rustc 1.89.0-nightly (8405332bd 2025-05-12)

# docs.rs version docsrs 0.6.0 (f7595057 2025-05-09)

# build log [INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace-builder/builds/async-fd-lock-0.2.0/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace-builder/builds/async-fd-lock-0.2.0/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace-builder/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace-builder/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "DOCS_RS=1" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "6442450944" "--cpus" "6" "--user" "1001:1001" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20250512-1.89.0-nightly-8405332bd\", \"--static-root-path\", \"/-/rustdoc.static/\", \"--cap-lints\", \"warn\", \"--extern-html-root-takes-precedence\"]" "--offline" "-Zunstable-options" "--config=doc.extern-map.registries.crates-io=\"https://docs.rs/{pkg_name}/{version}/x86_64-unknown-linux-gnu\"" "-Zrustdoc-scrape-examples" "-j6" "--target" "x86_64-unknown-linux-gnu", kill_on_drop: false }` [INFO] [stdout] dccc7b2cc872b689d46e163a2efd6c8f9f05f4a300f70e00c825e7774390296d [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "dccc7b2cc872b689d46e163a2efd6c8f9f05f4a300f70e00c825e7774390296d", kill_on_drop: false }` [INFO] [stderr] warning: target filter specified, but no targets matched; this is a no-op [INFO] [stderr] Documenting async-fd-lock v0.2.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: missing documentation for a module [INFO] [stderr] --> src/lib.rs:63:1 [INFO] [stderr] | [INFO] [stderr] 63 | pub mod blocking { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> src/lib.rs:46:23 [INFO] [stderr] | [INFO] [stderr] 46 | #![cfg_attr(doc, warn(missing_docs))] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a module [INFO] [stderr] --> src/lib.rs:126:1 [INFO] [stderr] | [INFO] [stderr] 126 | pub mod nonblocking { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/read_guard.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | pub fn inner(&self) -> &T { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/read_guard.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | pub fn inner_mut(&mut self) -> &mut T { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/read_guard.rs:42:5 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn inner_pin_mut(self: Pin<&mut Self>) -> Pin<&mut T> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/write_guard.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | pub fn inner(&self) -> &T { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/write_guard.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | pub fn inner_mut(&mut self) -> &mut T { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/write_guard.rs:42:5 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn inner_pin_mut(self: Pin<&mut Self>) -> Pin<&mut T> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct [INFO] [stderr] --> src/error.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | pub struct LockError<T> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/error.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | pub file: T, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/error.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | pub error: io::Error, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/error.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn new(file: T, error: io::Error) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a type alias [INFO] [stderr] --> src/error.rs:32:1 [INFO] [stderr] | [INFO] [stderr] 32 | pub type LockReadResult<T> = Result<RwLockReadGuard<T>, LockError<T>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a type alias [INFO] [stderr] --> src/error.rs:33:1 [INFO] [stderr] | [INFO] [stderr] 33 | pub type LockWriteResult<T> = Result<RwLockWriteGuard<T>, LockError<T>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a trait [INFO] [stderr] --> src/lib.rs:66:5 [INFO] [stderr] | [INFO] [stderr] 66 | pub trait LockRead: AsOpenFile + std::io::Read { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/lib.rs:67:9 [INFO] [stderr] | [INFO] [stderr] 67 | / fn lock_read(self) -> LockReadResult<Self> [INFO] [stderr] 68 | | where [INFO] [stderr] 69 | | Self: Sized; [INFO] [stderr] | |________________________^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/lib.rs:71:9 [INFO] [stderr] | [INFO] [stderr] 71 | / fn try_lock_read(self) -> LockReadResult<Self> [INFO] [stderr] 72 | | where [INFO] [stderr] 73 | | Self: Sized; [INFO] [stderr] | |________________________^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a trait [INFO] [stderr] --> src/lib.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | pub trait LockWrite: AsOpenFile + std::io::Write { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/lib.rs:77:9 [INFO] [stderr] | [INFO] [stderr] 77 | / fn lock_write(self) -> LockWriteResult<Self> [INFO] [stderr] 78 | | where [INFO] [stderr] 79 | | Self: Sized; [INFO] [stderr] | |________________________^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/lib.rs:81:9 [INFO] [stderr] | [INFO] [stderr] 81 | / fn try_lock_write(self) -> LockWriteResult<Self> [INFO] [stderr] 82 | | where [INFO] [stderr] 83 | | Self: Sized; [INFO] [stderr] | |________________________^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a trait [INFO] [stderr] --> src/lib.rs:151:5 [INFO] [stderr] | [INFO] [stderr] 151 | pub trait LockRead: AsOpenFile + tokio::io::AsyncRead { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/lib.rs:152:9 [INFO] [stderr] | [INFO] [stderr] 152 | / async fn lock_read(self) -> LockReadResult<Self> [INFO] [stderr] 153 | | where [INFO] [stderr] 154 | | Self: Sized; [INFO] [stderr] | |________________________^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/lib.rs:156:9 [INFO] [stderr] | [INFO] [stderr] 156 | / async fn try_lock_read(self) -> LockReadResult<Self> [INFO] [stderr] 157 | | where [INFO] [stderr] 158 | | Self: Sized; [INFO] [stderr] | |________________________^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a trait [INFO] [stderr] --> src/lib.rs:162:5 [INFO] [stderr] | [INFO] [stderr] 162 | pub trait LockWrite: AsOpenFile + tokio::io::AsyncWrite { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/lib.rs:163:9 [INFO] [stderr] | [INFO] [stderr] 163 | / async fn lock_write(self) -> LockWriteResult<Self> [INFO] [stderr] 164 | | where [INFO] [stderr] 165 | | Self: Sized; [INFO] [stderr] | |________________________^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/lib.rs:167:9 [INFO] [stderr] | [INFO] [stderr] 167 | / async fn try_lock_write(self) -> LockWriteResult<Self> [INFO] [stderr] 168 | | where [INFO] [stderr] 169 | | Self: Sized; [INFO] [stderr] | |________________________^ [INFO] [stderr] [INFO] [stderr] warning: `async-fd-lock` (lib doc) generated 26 warnings [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.49s [INFO] [stderr] Generated /opt/rustwide/target/x86_64-unknown-linux-gnu/doc/async_fd_lock/index.html [INFO] running `Command { std: "docker" "inspect" "dccc7b2cc872b689d46e163a2efd6c8f9f05f4a300f70e00c825e7774390296d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "dccc7b2cc872b689d46e163a2efd6c8f9f05f4a300f70e00c825e7774390296d", kill_on_drop: false }` [INFO] [stdout] dccc7b2cc872b689d46e163a2efd6c8f9f05f4a300f70e00c825e7774390296d