Crate ci_group

Crate ci_group 

Source
Expand description

A lightweight RAII library for log groups in GitHub Actions and Azure Pipelines.

Fixes “swallowed logs” by closing groups automatically when dropped, preserving output even on panic.

§Usage

Guard style (group lasts until end of scope):

let _g = ci_group::open("Build");
println!("Building...");
// group closes here when _g is dropped

Macro style (group wraps a block):

ci_group::group!("Test", {
    println!("Running tests...");
});

§Caveats

  • std::process::exit() skips destructors. Groups won’t close. Use normal returns instead.
  • Don’t hold StdoutLock across a scope where a Group drops (potential deadlock).

Macros§

group
Opens a log group for the duration of a block.

Structs§

Group
A collapsible log group. Closes automatically when dropped.

Functions§

open
Opens a new log group. Alias for Group::new.