Branch: refs/heads/main
Home:
https://github.com/dart-lang/sdk
Commit: a5d8c88952983e7d67b417ae237abc0d46d1d379
https://github.com/dart-lang/sdk/commit/a5d8c88952983e7d67b417ae237abc0d46d1d379
Author: kevmoo <
kev...@google.com>
Date: 2026-04-28 (Tue, 28 Apr 2026)
Changed paths:
M docs/Testing.md
A tools/build_test_fast.py
Log Message:
-----------
[tools] Add build_test_fast.py for a faster edit-compile-test loop
This change introduces `tools/build_test_fast.py`, a developer-focused
wrapper script that automatically infers and builds the *minimal* required
GN targets needed to run a specific test, avoiding the expensive overhead
of building the full SDK (e.g. `create_sdk`) during local iteration.
Features:
- Infers the correct `test.py` compiler (`-c`) from the provided test
paths (e.g., `tests/web/wasm` -> `dart2wasm`).
- Infers the correct minimal GN targets for the selected compiler.
For example, DDC tests now only build `ddc_stable_test_local` and
`create_common_sdk`, taking ~4 seconds instead of 5 minutes.
- Automatically defaults web compilers (`dart2js`, `dart2wasm`, `ddc`)
to use the `d8` runtime to prevent noisy browser popups during testing,
unless explicitly overridden.
- Synchronizes the default `mode` between `build.py` (debug) and
`test.py` (release) to prevent silent snapshot resolution failures.
- Prints clear, copy-pasteable execution commands for both the build
and test phases.
- Displays a prominent warning if a test fails, reminding the developer
to verify the minimal target mapping against `tools/bots/test_matrix.json`.
- Adds documentation for the script to `docs/Testing.md`.
Change-Id: I75473cdacca13f78dd271d9a31d5dcb15df57f6f
Reviewed-on:
https://dart-review.googlesource.com/c/sdk/+/499043
Commit-Queue: Kevin Moore <
kev...@google.com>
Reviewed-by: Jake Macdonald <
jak...@google.com>
To unsubscribe from these emails, change your notification settings at
https://github.com/dart-lang/sdk/settings/notifications