flutter_ci_guard 0.4.0
flutter_ci_guard: ^0.4.0 copied to clipboard
CI-friendly quality gates for Flutter projects. Enforce format, analyze, and test coverage thresholds with ease.
Changelog #
0.4.0 #
Add JSON output support for CI integration.
Added #
- Support
--jsonto print a machine-readable JSON report to stdout. - Support
--json-output <path>to write the JSON report to a file. - Serialize execution step results with success status and duration.
- Serialize coverage results including summary values, excluded file count, and low-coverage files.
Notes #
- Existing console output remains backward compatible unless a JSON flag is used.
0.3.0 #
Add per-file coverage insights for flutter_ci_guard.
Added #
- Support per-file coverage insights and low coverage file detection.
- Support
coverage.per_file_minto flag files below a per-file coverage threshold. - Support
coverage.show_top_low_filesto limit per-file output to the lowest N files. - Print a low-coverage file summary after the global coverage result when per-file reporting is configured.
Changed #
- Apply existing coverage exclusions before computing both global coverage and per-file insights.
Notes #
- When per-file reporting is not configured, console output remains backward compatible with previous releases.
0.2.0 #
Add coverage exclusion support for flutter_ci_guard.
Added #
- Support
coverage.excludeinflutter_ci_guard.yamlusing glob-style patterns such as**/*.g.dartand**/generated/**. - Support
--coverage-excludefor passing comma-separated exclusion patterns from the CLI.
Changed #
- Parse LCOV coverage by file record internally before computing the global coverage summary.
- Filter excluded files before aggregation so generated files do not affect the final percentage.
Notes #
- When no exclusions are configured, coverage behavior remains backward compatible with previous releases.
0.1.0 #
Add YAML configuration file support for flutter_ci_guard.
Added #
- Auto-load
flutter_ci_guard.yamlfrom the project root when present. - Support
--config <path>to load a config file from a custom location. - Merge settings with precedence
CLI > YAML > defaults.
Notes #
- Existing CLI flags remain backward compatible and continue to work as before.
- Supported YAML keys in this release are
steps.format,steps.analyze,steps.test,coverage.min, andcoverage.path.
0.0.2 #
Initial release of flutter_ci_guard - a lightweight CLI tool to enforce quality gates in Flutter projects.
Features #
- CI Orchestration: Run format, analyze, and tests in a single command.
- Coverage Enforcement: Automatically parse LCOV files and fail if the threshold is not met.
- Fail-Fast: Stop execution immediately if any quality gate fails.
- Customizable: Skip specific steps (format, analyze, or tests) as needed.
- CI-Ready: Returns specific exit codes for different failure types (low coverage, missing files, parse errors).
- Zero-Dependency Core: Only relies on official Dart packages (
argsandpath).