pueue/Cargo.toml
2022-12-26 13:08:46 +01:00

108 lines
2.7 KiB
TOML

# The project is a top-level crate *as well* as a workspace.
# The `pueue_lib` crate lives in the `lib` folder.
# The following is the shared configuration for both pueue and its lib
[workspace]
members = ["lib"]
[workspace.package]
authors = ["Arne Beer <contact@arne.beer>"]
homepage = "https://github.com/nukesor/pueue"
repository = "https://github.com/nukesor/pueue"
license = "MIT"
edition = "2021"
rust-version = "1.65"
[workspace.dependencies]
chrono = { version = "0.4", features = ["serde"] }
command-group = "2.0.0"
log = "0.4"
serde = "1"
serde_json = "1"
serde_derive = "1"
snap = "1"
tokio = { version = "1", features = ["rt-multi-thread", "time", "io-std"] }
# ------------------------
# Start of the actual "pueue" config.
# ------------------------
[package]
name = "pueue"
version = "3.0.0"
description = "A cli tool for managing long running shell commands."
keywords = ["shell", "command", "parallel", "task", "queue"]
readme = "README.md"
authors.workspace = true
homepage.workspace = true
repository.workspace = true
license.workspace = true
edition.workspace = true
rust-version.workspace = true
[badges]
maintenance = { status = "actively-developed" }
[[bin]]
name = "pueue"
path = "client/main.rs"
[[bin]]
name = "pueued"
path = "daemon/main.rs"
# Split the daemon logic in a lib and bin crate.
# Using a lib allows us to do proper integration testing.
[lib]
name = "pueue_daemon_lib"
path = "daemon/lib.rs"
[profile.release]
lto = "thin"
[dependencies]
pueue-lib = { version = "0.21.0", path = "lib" }
anyhow = "1.0"
chrono-english = "0.1"
clap = { version = "4.0", features = ["derive", "cargo"] }
clap_complete = "4.0"
comfy-table = "6.1"
crossbeam-channel = "0.5"
crossterm = { version = "0.25", default-features = false }
ctrlc = { version = "3", features = ["termination"] }
handlebars = "4.3"
pest = "2.5"
pest_derive = "2.5"
shell-escape = "0.1"
simplelog = "0.12"
tempfile = "3.3"
chrono = { workspace = true }
command-group = { workspace = true }
log = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
serde_derive = { workspace = true }
snap = { workspace = true }
tokio = { workspace = true }
[dev-dependencies]
assert_cmd = "2"
better-panic = "0.3"
pretty_assertions = "1"
rstest = "0.16"
serde_yaml = "0.9"
similar-asserts = "1"
# Make it easy to view log output for select tests.
# Set log level for tests with RUST_LOG=<level>, use with failed tests or
# disable test stdout/stderr capture (`cargo test -- --nocapture` / `cargo
# nextest run --no-capture`)
env_logger = "0.10"
test-log = "0.2"
# Test specific dev-dependencies
[target.'cfg(any(target_os = "linux", target_os = "freebsd"))'.dependencies]
whoami = "1"
procfs = { version = "0.14", default-features = false }