#group #extension #tokio #range #increase

command-group

Extension to Command to spawn in a process group

15 stable releases (4 major)

5.0.1 Nov 18, 2023
4.1.0 Nov 4, 2023
3.0.0 Oct 30, 2023
2.1.1 Oct 30, 2023
1.0.4 Jul 25, 2021

#1 in #increase

Download history 24649/week @ 2024-11-30 23548/week @ 2024-12-07 20022/week @ 2024-12-14 10268/week @ 2024-12-21 10604/week @ 2024-12-28 19112/week @ 2025-01-04 19680/week @ 2025-01-11 18430/week @ 2025-01-18 20551/week @ 2025-01-25 22185/week @ 2025-02-01 22562/week @ 2025-02-08 19890/week @ 2025-02-15 21431/week @ 2025-02-22 20865/week @ 2025-03-01 19500/week @ 2025-03-08 18515/week @ 2025-03-15

83,212 downloads per month
Used in 64 crates (17 directly)

Apache-2.0 OR MIT

165KB
1K SLoC

Crate release version Crate license: Apache 2.0 or MIT CI status

Command Group

Extension to Command to spawn in a process group.

  • API documentation.
  • Dual-licensed with Apache 2.0 and MIT.
  • Minimum Supported Rust Version: 1.68.0.
    • Only the last five stable versions are supported.
    • MSRV increases within that range at publish time will not incur major version bumps.

Quick start

[dependencies]
command-group = "5.0.1"
use std::process::Command;
use command_group::CommandGroup;

let mut child = Command::new("watch").arg("ls").group_spawn()?;
let status = child.wait()?;
dbg!(status);

Async: Tokio

[dependencies]
command-group = { version = "5.0.1", features = ["with-tokio"] }
tokio = { version = "1.10.0", features = ["full"] }
use tokio::process::Command;
use command_group::AsyncCommandGroup;

let mut child = Command::new("watch").arg("ls").group_spawn()?;
let status = child.wait().await?;
dbg!(status);

Also see the Examples!

Dependencies

~1.5–10MB
~97K SLoC