[package]
name = "libshpool"
version = "0.9.4"
edition = "2021"
repository = "https://github.com/shell-pool/shpool"
authors = ["Ethan Pailes <pailes@google.com>"]
readme = "README.md"
description = '''
libshpool contains the implementation of the shpool tool,
which provides a mechanism for establishing lightweight
persistant shell sessions to gracefully handle network
disconnects.
'''
license = "Apache-2.0"
keywords = ["tmux", "tty", "terminal", "shell", "persistence"]
rust-version = "1.74"
[features]
test_hooks = []
[dependencies]
clap = { version = "4", features = ["derive"] }
anyhow = "1"
chrono = "0.4"
serde = "1"
serde_derive = "1"
serde_json = "1"
toml = "0.8"
byteorder = "1"
signal-hook = "0.3"
shpool_pty = "0.3.2"
lazy_static = "1"
crossbeam-channel = "0.5"
libc = "0.2"
log = "0.4"
tracing = "0.1"
rmp-serde = "1"
shpool_vt100 = "0.1.3"
shell-words = "1"
motd = { version = "0.2.2", default-features = false, features = [] }
termini = "1.0.0"
tempfile = "3"
strip-ansi-escapes = "0.2.0"
notify = { version = "7", features = ["crossbeam-channel"] }
libproc = "0.14.8"
daemonize = "0.5"
shpool-protocol = { version = "0.3.3", path = "../shpool-protocol" }
[dependencies.nix]
version = "0.31"
features = ["poll", "ioctl", "socket", "user", "process", "signal", "term", "fs"]
[dependencies.tracing-subscriber]
version = "0.3.20"
default-features = false
features = ["std", "fmt", "tracing-log", "smallvec"]
[dev-dependencies]
ntest = "0.9"
assert_matches = "1.5"