From d55870eb24af5b8a625d095e5e237458af0e8fd2 Mon Sep 17 00:00:00 2001 From: Travis Mortimer <110429180+travis-mortimer@users.noreply.github.com> Date: Fri, 31 Jan 2025 10:47:09 -0700 Subject: [PATCH 1/2] Update README.md This seems to be a common question that is quite difficult to answer. The most visible solution I found previously was to use the `remove_from_coverage` package to remove generated files from the coverage report. That solution complicates CLI commands and requires updating CI/CD pipelines. --- json_serializable/README.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/json_serializable/README.md b/json_serializable/README.md index 713ff4c1e..d53e3138e 100644 --- a/json_serializable/README.md +++ b/json_serializable/README.md @@ -287,6 +287,18 @@ targets: include_if_null: true ``` +To exclude generated files from coverage, you can further configure `build.yaml`. + +```yaml +targets: + $default: + builders: + source_gen:combining_builder: + options: + preamble: | + // coverage:ignore-file +``` + [example]: https://github.com/google/json_serializable.dart/tree/master/example [dart build system]: https://github.com/dart-lang/build [package:json_annotation]: https://pub.dev/packages/json_annotation From 732244ecd75075725b7381c788c96a16fc40cfeb Mon Sep 17 00:00:00 2001 From: travis-mortimer Date: Mon, 3 Feb 2025 17:40:33 -0700 Subject: [PATCH 2/2] updated json_serializable readme template with build.yaml example to exclude generated files from coverage --- json_serializable/tool/readme/readme_template.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/json_serializable/tool/readme/readme_template.md b/json_serializable/tool/readme/readme_template.md index adba60f1c..d99c3ec78 100644 --- a/json_serializable/tool/readme/readme_template.md +++ b/json_serializable/tool/readme/readme_template.md @@ -152,6 +152,18 @@ targets: include_if_null: true ``` +To exclude generated files from coverage, you can further configure `build.yaml`. + +```yaml +targets: + $default: + builders: + source_gen:combining_builder: + options: + preamble: | + // coverage:ignore-file +``` + [example]: https://github.com/google/json_serializable.dart/tree/master/example [dart build system]: https://github.com/dart-lang/build [package:json_annotation]: https://pub.dev/packages/json_annotation