Files
sdk/pkg/frontend_server
Nicholas Shahan f91050ca91 [ddc] Add visitor for hot reload deltas
Initially this visitor will reject reloads (by throwing an Exception).
Future changes will add the ability to record data about the delta to
guide the JavaScript compilation decisions.

- Rejects deltas that delete all const constructors from a class
  (making it non-const).
- Adds ability to test the visitor directly by compiling components
  from source via an in-memory compiler.
- Updates DDC frontend_server compiles to write errors to the output
  stream.

Change-Id: Ib318f42d28367416983266a214f97821a38a2913
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/401600
Reviewed-by: Jens Johansen <jensj@google.com>
Reviewed-by: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Mark Zhou <markzipan@google.com>
Reviewed-by: Nate Biggs <natebiggs@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Nicholas Shahan <nshahan@google.com>
2025-01-10 10:20:42 -08:00
..
2023-11-29 08:47:59 +00:00

The frontend_server package is used by both the flutter command line tool and the frontend_server_client package (used by webdev and package:test).

API Stability

Changes to the command line API or behavior should be tested against the following test suites (in addition to normal HHH testing):

Otherwise these changes will need to be carefully coordinated with the flutter tooling and frontend_server_client teams.

This API stability does not cover any of the source code APIs.

Stable subset

  • The frontend_server kernel compilation and expression evaluation for kernel should be considered "stable".
  • The frontend_server JavaScript compilation is semi-stable, but clients should anticipate coordinated breaking changes in the future.
  • The frontend_server JavaScript expression evaluation is experimental and is expected to change significantly from Dec 2020 through the end of 2021.
  • Specific flags may be added for experimentation and should not be considered stable.