a5d8c88952
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 <kevmoo@google.com> Reviewed-by: Jake Macdonald <jakemac@google.com>
Welcome to the developer documentation for the Dart SDK!
Contributions welcome! Please help us keep these docs up-to-date.
Important pages
Important pages include:
- Building the SDK
- Filing Dart issues
- Workarounds for Flutter Pinned Packages
- How the issue tracker works
- Testing
Also, check out the combined Dart and Flutter roadmap on the Flutter wiki.
Process pages
Various process pages include:
- Dart SDK breaking change process
- Dart SDK process for changes behind experimental flags
- Language Versioning and Experiments
Contributing
Contributions welcome via Gerrit CLs or GitHub PRs. See our contributing doc for more information.
Contributions could include helping to keep pages up-to-date, adding additional context to this main page, or re-organizing the documentation.
Google Summer of Code
Interested in the latest on our Google Summer of Code projects? See Google Summer of Code 2024.