switch dart2js build to depfile, remove Source.function (#42977)
diff --git a/packages/flutter_tools/lib/src/web/compile.dart b/packages/flutter_tools/lib/src/web/compile.dart
index 7644f63..e567d91 100644
--- a/packages/flutter_tools/lib/src/web/compile.dart
+++ b/packages/flutter_tools/lib/src/web/compile.dart
@@ -30,27 +30,32 @@
await injectPlugins(flutterProject, checkProjects: true);
final Status status = logger.startProgress('Compiling $target for the Web...', timeout: null);
final Stopwatch sw = Stopwatch()..start();
- final BuildResult result = await buildSystem.build(const WebReleaseBundle(), Environment(
- outputDir: fs.directory(getWebBuildDirectory()),
- projectDir: fs.currentDirectory,
- buildDir: flutterProject.directory
- .childDirectory('.dart_tool')
- .childDirectory('flutter_build'),
- defines: <String, String>{
- kBuildMode: getNameForBuildMode(buildInfo.mode),
- kTargetFile: target,
- kInitializePlatform: initializePlatform.toString(),
- kHasWebPlugins: hasWebPlugins.toString(),
- },
- ));
- if (!result.success) {
- for (ExceptionMeasurement measurement in result.exceptions.values) {
- printError(measurement.stackTrace.toString());
- printError(measurement.exception.toString());
+ try {
+ final BuildResult result = await buildSystem.build(const WebReleaseBundle(), Environment(
+ outputDir: fs.directory(getWebBuildDirectory()),
+ projectDir: fs.currentDirectory,
+ buildDir: flutterProject.directory
+ .childDirectory('.dart_tool')
+ .childDirectory('flutter_build'),
+ defines: <String, String>{
+ kBuildMode: getNameForBuildMode(buildInfo.mode),
+ kTargetFile: target,
+ kInitializePlatform: initializePlatform.toString(),
+ kHasWebPlugins: hasWebPlugins.toString(),
+ },
+ ));
+ if (!result.success) {
+ for (ExceptionMeasurement measurement in result.exceptions.values) {
+ printError(measurement.stackTrace.toString());
+ printError(measurement.exception.toString());
+ }
+ throwToolExit('Failed to compile application for the Web.');
}
- throwToolExit('Failed to compile application for the Web.');
+ } catch (err) {
+ throwToolExit(err.toString());
+ } finally {
+ status.stop();
}
- status.stop();
flutterUsage.sendTiming('build', 'dart2js', Duration(milliseconds: sw.elapsedMilliseconds));
}