-
Notifications
You must be signed in to change notification settings - Fork 20
/
Cargo.toml
57 lines (52 loc) · 2.08 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
[package]
name = "libshpool"
version = "0.6.2"
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 = [] # for internal testing only, don't enable this feature
[dependencies]
clap = { version = "4", features = ["derive"] } # cli parsing
anyhow = "1" # dynamic, unstructured errors
chrono = "0.4" # getting current time and formatting it
serde = "1" # config parsing, connection header formatting
serde_derive = "1" # config parsing, connection header formatting
toml = "0.7" # config parsing
byteorder = "1" # endianness
signal-hook = "0.3" # signal handling
shpool_pty = "0.3.1" # spawning shells in ptys
lazy_static = "1" # globals
crossbeam-channel = "0.5" # channels
libc = "0.2" # basic libc types
log = "0.4" # logging facade (not used directly, but required if we have tracing-log enabled)
tracing = "0.1" # logging and performance monitoring facade
bincode = "1" # serialization for the control protocol
shpool_vt100 = "0.1.2" # terminal emulation for the scrollback buffer
shell-words = "1" # parsing the -c/--cmd argument
motd = { version = "0.2.1", default-features = false, features = [] } # getting the message-of-the-day
termini = "1.0.0" # terminfo database
tempfile = "3" # RAII tmp files
strip-ansi-escapes = "0.2.0" # cleaning up strings for pager display
notify = "6" # watch config file for updates
libproc = "0.14.8" # sniffing shells by examining the subprocess
# rusty wrapper for unix apis
[dependencies.nix]
version = "0.28"
features = ["poll", "ioctl", "socket", "user", "process", "signal", "term", "fs"]
[dependencies.tracing-subscriber]
version = "0.3"
default-features = false
features = ["std", "fmt", "tracing-log", "smallvec"]
[dev-dependencies]
ntest = "0.9" # test timeouts