simplelock 0.4.1

Simple abstractions for inter-process synchronization.
Documentation
[package]
name = "simplelock"
description = "Simple abstractions for inter-process synchronization."
version = "0.4.1"
authors = ["Alexander Dean-Kennedy <dstar@slackless.com>"]
edition = "2018"
license = "MIT"
readme = "README.md"
repository = "https://git.sr.ht/~dstar4138/simplelock"
keywords = [ "ipc", "semaphore", "lock", "file", "mutex" ]
categories = [ "command-line-interface", "command-line-utilities", "concurrency" ]
exclude = ["*"]
include = ["src/**/*.rs", "LICENSE", "README.md"]

[features]
default = []

# Lock Implementations
fake = []
file = [ "fs2", "serde", "serde_json", "uuid" ]
sema = [ "libc", "nix" ]

[dependencies]
cfg-if = "1.0.0"
thiserror = "1.0.19"

# Needed for Semaphore implementation:
nix = { version = "0.19.1", optional = true }
libc = { version = "0.2.71", optional = true }

# Needed for FileLock implementation:
fs2 = { version = "0.4.3", optional = true }
serde = { version = "1.0", optional = true }
serde_json = { version = "1.0", optional = true }
uuid = { version = "0.8.1", features = ["serde", "v4"], optional = true }

# We should genereate all features by default.
[package.metadata.docs.rs]
all-features = true