implicit-casts:false on flutter_tools/lib (#44447)
* implicit-casts:false on flutter_tools/lib
* address review comments
* use castStringKeyedMap
* introduce {bool,string,strings}Arg
* fix ci
diff --git a/packages/flutter_tools/bin/fuchsia_asset_builder.dart b/packages/flutter_tools/bin/fuchsia_asset_builder.dart
index f6974c7..bf98aad 100644
--- a/packages/flutter_tools/bin/fuchsia_asset_builder.dart
+++ b/packages/flutter_tools/bin/fuchsia_asset_builder.dart
@@ -57,11 +57,11 @@
}
Cache.flutterRoot = platform.environment['FLUTTER_ROOT'];
- final String assetDir = argResults[_kOptionAsset];
+ final String assetDir = argResults[_kOptionAsset] as String;
final AssetBundle assets = await buildAssets(
- manifestPath: argResults[_kOptionManifest] ?? defaultManifestPath,
+ manifestPath: argResults[_kOptionManifest] as String ?? defaultManifestPath,
assetDirPath: assetDir,
- packagesPath: argResults[_kOptionPackages],
+ packagesPath: argResults[_kOptionPackages] as String,
includeDefaultFonts: false,
);
@@ -77,8 +77,8 @@
});
await Future.wait<void>(calls);
- final String outputMan = argResults[_kOptionAssetManifestOut];
- await writeFuchsiaManifest(assets, argResults[_kOptionAsset], outputMan, argResults[_kOptionComponentName]);
+ final String outputMan = argResults[_kOptionAssetManifestOut] as String;
+ await writeFuchsiaManifest(assets, argResults[_kOptionAsset] as String, outputMan, argResults[_kOptionComponentName] as String);
}
Future<void> writeFuchsiaManifest(AssetBundle assets, String outputBase, String fileDest, String componentName) async {
diff --git a/packages/flutter_tools/bin/fuchsia_attach.dart b/packages/flutter_tools/bin/fuchsia_attach.dart
index df16901..bfbf0f6 100644
--- a/packages/flutter_tools/bin/fuchsia_attach.dart
+++ b/packages/flutter_tools/bin/fuchsia_attach.dart
@@ -35,13 +35,13 @@
Future<void> main(List<String> args) async {
final ArgResults argResults = parser.parse(args);
- final bool verbose = argResults['verbose'];
- final String target = argResults['target'];
+ final bool verbose = argResults['verbose'] as bool;
+ final String target = argResults['target'] as String;
final List<String> targetParts = _extractPathAndName(target);
final String path = targetParts[0];
final String name = targetParts[1];
final File dartSdk = fs.file(argResults['dart-sdk']);
- final String buildDirectory = argResults['build-dir'];
+ final String buildDirectory = argResults['build-dir'] as String;
final File frontendServer = fs.file('$buildDirectory/host_x64/gen/third_party/flutter/frontend_server/frontend_server_tool.snapshot');
final File sshConfig = fs.file('$buildDirectory/ssh-keys/ssh_config');
final File devFinder = fs.file(argResults['dev-finder']);
@@ -69,13 +69,13 @@
}
// Check for a package with a lib directory.
- final String entrypoint = argResults['entrypoint'];
+ final String entrypoint = argResults['entrypoint'] as String;
String targetFile = 'lib/$entrypoint';
if (!fs.file(targetFile).existsSync()) {
// Otherwise assume the package is flat.
targetFile = entrypoint;
}
- final String deviceName = argResults['device'];
+ final String deviceName = argResults['device'] as String;
final List<String> command = <String>[
'attach',
'--module',
diff --git a/packages/flutter_tools/bin/fuchsia_tester.dart b/packages/flutter_tools/bin/fuchsia_tester.dart
index 5abd8a4..c6d32ff 100644
--- a/packages/flutter_tools/bin/fuchsia_tester.dart
+++ b/packages/flutter_tools/bin/fuchsia_tester.dart
@@ -86,7 +86,7 @@
throwToolExit('Cannot find SDK files at ${sdkRootSrc.path}');
}
Directory coverageDirectory;
- final String coverageDirectoryPath = argResults[_kOptionCoverageDirectory];
+ final String coverageDirectoryPath = argResults[_kOptionCoverageDirectory] as String;
if (coverageDirectoryPath != null) {
if (!fs.isDirectorySync(coverageDirectoryPath)) {
throwToolExit('Cannot find coverage directory at $coverageDirectoryPath');
@@ -111,11 +111,11 @@
fs.link(sdkRootDest.childFile('platform.dill').path).createSync('platform_strong.dill');
PackageMap.globalPackagesPath =
- fs.path.normalize(fs.path.absolute(argResults[_kOptionPackages]));
+ fs.path.normalize(fs.path.absolute(argResults[_kOptionPackages] as String));
Directory testDirectory;
CoverageCollector collector;
- if (argResults['coverage']) {
+ if (argResults['coverage'] as bool) {
collector = CoverageCollector(
libraryPredicate: (String libraryName) {
// If we have a specified coverage directory then accept all libraries.
@@ -134,7 +134,7 @@
final Map<String, String> tests = <String, String>{};
final List<Map<String, dynamic>> jsonList = List<Map<String, dynamic>>.from(
- json.decode(fs.file(argResults[_kOptionTests]).readAsStringSync()));
+ json.decode(fs.file(argResults[_kOptionTests]).readAsStringSync()) as List<Map<String, dynamic>>);
for (Map<String, dynamic> map in jsonList) {
final String source = fs.file(map['source']).resolveSymbolicLinksSync();
final String dill = fs.file(map['dill']).resolveSymbolicLinksSync();
@@ -150,7 +150,7 @@
buildMode: BuildMode.debug,
precompiledDillFiles: tests,
concurrency: math.max(1, platform.numberOfProcessors - 2),
- icudtlPath: fs.path.absolute(argResults[_kOptionIcudtl]),
+ icudtlPath: fs.path.absolute(argResults[_kOptionIcudtl] as String),
coverageDirectory: coverageDirectory,
);
@@ -163,7 +163,7 @@
} else {
fs.currentDirectory = testDirectory;
}
- if (!await collector.collectCoverageData(argResults[_kOptionCoveragePath], coverageDirectory: coverageDirectory)) {
+ if (!await collector.collectCoverageData(argResults[_kOptionCoveragePath] as String, coverageDirectory: coverageDirectory)) {
throwToolExit('Failed to collect coverage data');
}
}