flutter_ci_guard 0.4.0 copy "flutter_ci_guard: ^0.4.0" to clipboard
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 --json to 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_min to flag files below a per-file coverage threshold.
  • Support coverage.show_top_low_files to 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.exclude in flutter_ci_guard.yaml using glob-style patterns such as **/*.g.dart and **/generated/**.
  • Support --coverage-exclude for 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.yaml from 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, and coverage.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 (args and path).
2
likes
140
points
32
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

CI-friendly quality gates for Flutter projects. Enforce format, analyze, and test coverage thresholds with ease.

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

args, path, yaml

More

Packages that depend on flutter_ci_guard