process-wrap 9.0.1

Wrap a Command, to spawn processes in a group or session or job etc
[package]
name = "process-wrap"
version = "9.0.1"

authors = ["Félix Saparelli <felix@passcod.name>"]
license = "Apache-2.0 OR MIT"
description = "Wrap a Command, to spawn processes in a group or session or job etc"
keywords = ["command", "process", "group", "session", "pty"]

documentation = "https://docs.rs/process-wrap"
homepage = "https://github.com/watchexec/process-wrap"
repository = "https://github.com/watchexec/process-wrap"
readme = "README.md"

edition = "2024"
resolver = "3"
exclude = ["/bin", "/.github"]
rust-version = "1.87.0"

[dependencies]
futures = { version = "0.3.30", optional = true }
indexmap = "2.9.0"
tokio = { version = "1.38.2", features = ["io-util", "macros", "process", "rt"], optional = true }
tracing = { version = "0.1.40", optional = true }
# note: this library doesn't consider bumping the tokio minor to be
# a breaking change, so long as it remains ~6 months below current

[target.'cfg(unix)'.dependencies]
nix = { version = "0.30.1", default-features = false, features = ["fs", "poll", "signal"], optional = true }
# note: bumping the nix version doesn't require a breaking change,
# as process-wrap is carefully designed to never expose nix's types

[target.'cfg(windows)'.dependencies]
windows = { version = "0.62.2", optional = true }
# note: bumping the windows version doesn't require a breaking change,
# as process-wrap is carefully designed to never expose windows's types

[dev-dependencies]
remoteprocess = "0.5.0"
tempfile = { version = "3.20.0", default-features = false }
tokio = { version = "1.38.2", features = ["io-util", "macros", "process", "rt", "rt-multi-thread", "time"] }

[features]
default = ["creation-flags", "job-object", "kill-on-drop", "process-group", "process-session", "tracing"]

## Enable internal tracing logs
tracing = ["dep:tracing"]

## Frontend: StdCommandWrap
std = ["dep:nix"]

## Frontend: TokioCommandWrap
tokio1 = ["dep:nix", "dep:futures", "dep:tokio"]

## Wrapper: Creation Flags
creation-flags = ["dep:windows", "windows/Win32_System_Threading"]

## Wrapper: Job Object
job-object = ["dep:windows", "windows/Win32_Security", "windows/Win32_System_Diagnostics_ToolHelp", "windows/Win32_System_IO", "windows/Win32_System_JobObjects", "windows/Win32_System_Threading"]

## Wrapper: Kill on Drop
kill-on-drop = []

## Wrapper: Process Group
process-group = []

## Wrapper: Process Session
process-session = ["process-group"]

## Wrapper: Reset Sigmask
reset-sigmask = []

[package.metadata.docs.rs]
all-features = true