pub fn scan(root: &Path, os_list: &[&str]) -> Result<Vec<MatrixEntry>>Expand description
Scans the workspace and returns the full feature × OS matrix.
Features excluded from the matrix (see is_excluded_feature) are
skipped — for example default (enabled by Cargo automatically), bench
(only affects module visibility for benchmarks), and telemetry (an alias
for tracing + profiling with no direct cfg(feature = "telemetry")
branches to validate separately). Runtime features such as tracing and
profiling stay in the matrix so CI checks them both standalone and in
combinations.
The matrix always starts with the default (no explicit features) entry,
followed by every non-empty power-set combination in a stable order.
Each feature combination is repeated once per OS in os_list.
§Errors
Returns an error if the workspace root cannot be located or any
Cargo.toml cannot be read or parsed.