simplelock 0.2.0

Simple abstractions for inter-process synchronization.
Documentation
[package]
name = "simplelock"
description = "Simple abstractions for inter-process synchronization."
version = "0.2.0"
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" ]
categories = [ "command-line-interface", "command-line-utilities" ]

[features]
default = []
file = [ "fs2", "serde", "serde_json", "uuid" ]
sema = [ "libc", "lazy_static", "regex", "nix" ]
smem = [ "nix" ]

[dependencies]
cfg-if = "0.1.10"
failure = "0.1.8"
failure_derive = "0.1.8"

# Needed for Semaphore implementation:
nix = { version = "0.17.0", optional = true }

# Needed for SemaphoreLock implementation:
libc = { version = "0.2.70", optional = true }
regex = { version = "1.3.7", optional = true }

# Needed for FileLock implementation:
fs2 = { version = "0.4.3", optional = true }
lazy_static = { version = "1.4.0", 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 enable all features for docs.rs so all implementations are visible by default.
[package.metadata.docs.rs]
all-features = true