Pass FLUTTER_TOOL_ARGS to snapshot command. (#29938)
diff --git a/bin/flutter b/bin/flutter
index 178994f..dc9425d 100755
--- a/bin/flutter
+++ b/bin/flutter
@@ -121,7 +121,7 @@
retry_upgrade
- "$DART" --snapshot="$SNAPSHOT_PATH" --snapshot-kind=app-jit --packages="$FLUTTER_TOOLS_DIR/.packages" "$SCRIPT_PATH" training
+ "$DART" $FLUTTER_TOOL_ARGS --snapshot="$SNAPSHOT_PATH" --snapshot-kind=app-jit --packages="$FLUTTER_TOOLS_DIR/.packages" "$SCRIPT_PATH" training
echo "$revision" > "$STAMP_PATH"
fi
# The exit here is duplicitous since the function is run in a subshell,
diff --git a/bin/flutter.bat b/bin/flutter.bat
index 7aa7020..3ee58af 100644
--- a/bin/flutter.bat
+++ b/bin/flutter.bat
@@ -152,7 +152,11 @@
POPD
- "%dart%" --snapshot="%snapshot_path%" --snapshot-kind=app-jit --packages="%flutter_tools_dir%\.packages" "%script_path%"
+ IF "%FLUTTER_TOOL_ARGS%" == "" (
+ "%dart%" --snapshot="%snapshot_path%" --snapshot-kind=app-jit --packages="%flutter_tools_dir%\.packages" "%script_path%"
+ ) else (
+ "%dart%" "%FLUTTER_TOOL_ARGS%" --snapshot="%snapshot_path%" --snapshot-kind=app-jit --packages="%flutter_tools_dir%\.packages" "%script_path%"
+ )
IF "%ERRORLEVEL%" NEQ "0" (
ECHO Error: Unable to create dart snapshot for flutter tool.
SET exit_code=%ERRORLEVEL%
diff --git a/dev/bots/test.dart b/dev/bots/test.dart
index 60a54b8..5b92184 100644
--- a/dev/bots/test.dart
+++ b/dev/bots/test.dart
@@ -180,16 +180,24 @@
final bq.BigqueryApi bigqueryApi = await _getBigqueryApi();
await _runSmokeTests();
+ // The flutter_tool will currently be snapshotted without asserts. We need
+ // to force it to be regenerated with them enabled.
+ if (!Platform.isWindows) {
+ File(path.join(flutterRoot, 'bin', 'cache', 'flutter_tools.snapshot')).deleteSync();
+ File(path.join(flutterRoot, 'bin', 'cache', 'flutter_tools.stamp')).deleteSync();
+ }
if (noUseBuildRunner) {
await _pubRunTest(
path.join(flutterRoot, 'packages', 'flutter_tools'),
tableData: bigqueryApi?.tabledata,
+ enableFlutterToolAsserts: !Platform.isWindows,
);
} else {
await _buildRunnerTest(
path.join(flutterRoot, 'packages', 'flutter_tools'),
flutterRoot,
tableData: bigqueryApi?.tabledata,
+ enableFlutterToolAsserts: !Platform.isWindows,
);
}