Skip to content

fix(coverage): migrate subprocess spawning to package:cli_util - #2584

Merged
auto-submit[bot] merged 3 commits into
mainfrom
fix-coverage-aot-cli-util
Sep 16, 2026
Merged

auto-submit[bot] merged 3 commits into
mainfrom
fix-coverage-aot-cli-util

Conversation

@kevmoo

@kevmoo kevmoo commented Sep 8, 2026

Copy link
Copy Markdown
Member
  • Replace Platform.executable in bin/test_with_coverage.dart and lib/src/run_and_collect.dart with package:cli_util (dartExecutable ?? 'dart') to prevent infinite self-invocation loops under AOT compilation (dart compile exe / dart install).
  • Add cli_util: ^0.6.0 dependency to pubspec.yaml and update CHANGELOG.md.

- Replace Platform.executable in bin/test_with_coverage.dart and lib/src/run_and_collect.dart with package:cli_util (dartExecutable ?? 'dart') to prevent infinite self-invocation loops under AOT compilation (dart compile exe / dart install).
- Add cli_util: ^0.6.0 dependency to pubspec.yaml and update CHANGELOG.md.
@github-actions

github-actions Bot commented Sep 8, 2026 •

Copy link
Copy Markdown

Package publishing

If you have publishing permissions, you can use the links below to publish the changes after merging this PR.

Package Version Status Publish tag (post-merge)
package:coverage ⭐ 1.16.0-wip WIP (no publish necessary)
package:pubspec_parse 1.6.1 ready to publish pubspec_parse-v1.6.1
package:test_reflective_loader 0.6.0 ready to publish test_reflective_loader-v0.6.0
  • 21 already published.
  • 18 WIP (no publish necessary).

Documentation at https://github.com/dart-lang/ecosystem/wiki/Publishing-automation.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request migrates Dart subprocess spawning from using Platform.executable to using package:cli_util's dartExecutable ?? 'dart' in order to support AOT-compiled executables. This change is implemented in test_with_coverage.dart and run_and_collect.dart, with cli_util added as a dependency in pubspec.yaml. There are no review comments, and I have no feedback to provide.

@github-actions

github-actions Bot commented Sep 8, 2026 •

Copy link
Copy Markdown

PR Health

License Headers ✔️
// Copyright (c) 2026, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

Files
no missing headers

All source files should start with a license header.

Unrelated files missing license headers
Files
pkgs/html/test/differential_test.dart
pkgs/html/test/dom_parsing_test.dart
pkgs/html/test/mxss_test.dart
pkgs/html/test/noah_ark_clause_limit_test.dart

This check can be disabled by tagging the PR with skip-license-check.

Changelog Entry ✔️
Package Changed Files

Changes to files need to be accounted for in their respective changelogs.

This check can be disabled by tagging the PR with skip-changelog-check.

Breaking changes ✔️
Package Change Current Version New Version Needed Version Looking good?
coverage Non-Breaking 1.15.1 1.16.0-wip 1.16.0-wip ✔️

This check can be disabled by tagging the PR with skip-breaking-check.

API leaks ✔️

The following packages contain symbols visible in the public API, but not exported by the library. Export these symbols or remove them from your publicly visible API.

Package Leaked API symbol Leaking sources

This check can be disabled by tagging the PR with skip-leaking-check.

Unused Dependencies ✔️
Package Status
coverage ✔️ All dependencies utilized correctly.

For details on how to fix these, see dependency_validator.

This check can be disabled by tagging the PR with skip-unused-dependencies-check.

Coverage ⚠️
File Coverage
pkgs/coverage/bin/test_with_coverage.dart 💔 Not covered
pkgs/coverage/lib/src/run_and_collect.dart 💚 73 % ⬆️ 6 %

This check for test coverage is informational (issues shown here will not fail the PR).

This check can be disabled by tagging the PR with skip-coverage-check.

@auto-submit
auto-submit Bot merged commit 65c5dba into main Sep 16, 2026
36 checks passed
@auto-submit
auto-submit Bot deleted the fix-coverage-aot-cli-util branch September 16, 2026 22:54
pull Bot pushed a commit to specialized806/flutterrettulf that referenced this pull request Sep 18, 2026
…92972)

Adds `cli_util`
(`./third_party/dart/third_party/pkg/tools/pkgs/cli_util`) to
`dependency_overrides` in `engine/src/flutter/pubspec.yaml`.

Dart SDK commit https://dart-review.googlesource.com/c/sdk/+/551940
rolled `tools_rev` to include
dart-lang/tools#2584, which added
`package:cli_util` as a dependency of `package:coverage`. Because
`engine/src/flutter/tools/pub_get_offline.py` runs `dart pub get
--offline` against `engine/src/flutter/pubspec.yaml`
(`_engine_workspace`), `cli_util` must be mapped in
`dependency_overrides` for offline dependency resolution on the
Dart-in-Flutter (HHH) builders and the Dart-to-Flutter roll.

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants