Add punctuation for unterminated sentences in doc comments (#62755)

* Add punctuation for unterminated sentences in doc comments

* Addressing review nit
diff --git a/packages/flutter_tools/lib/src/android/android_device.dart b/packages/flutter_tools/lib/src/android/android_device.dart
index f1e338d..652ba17 100644
--- a/packages/flutter_tools/lib/src/android/android_device.dart
+++ b/packages/flutter_tools/lib/src/android/android_device.dart
@@ -855,6 +855,7 @@
 ///
 /// Example output:
 ///
+/// ```
 /// Applications Memory Usage (in Kilobytes):
 /// Uptime: 441088659 Realtime: 521464097
 ///
@@ -906,6 +907,7 @@
 ///          MEMORY_USED:        0
 ///   PAGECACHE_OVERFLOW:        0          MALLOC_SIZE:        0
 /// ...
+/// ```
 ///
 /// For more information, see https://developer.android.com/studio/command-line/dumpsys.
 @visibleForTesting
diff --git a/packages/flutter_tools/lib/src/android/android_device_discovery.dart b/packages/flutter_tools/lib/src/android/android_device_discovery.dart
index 4f13229..b814835 100644
--- a/packages/flutter_tools/lib/src/android/android_device_discovery.dart
+++ b/packages/flutter_tools/lib/src/android/android_device_discovery.dart
@@ -18,7 +18,7 @@
 import 'android_sdk.dart';
 import 'android_workflow.dart' hide androidWorkflow;
 
-/// Device discovery for Android physical devices and emulators.s
+/// Device discovery for Android physical devices and emulators.
 class AndroidDevices extends PollingDeviceDiscovery {
   AndroidDevices({
     @required AndroidWorkflow androidWorkflow,
diff --git a/packages/flutter_tools/lib/src/android/gradle.dart b/packages/flutter_tools/lib/src/android/gradle.dart
index 849d778..fa9f008 100644
--- a/packages/flutter_tools/lib/src/android/gradle.dart
+++ b/packages/flutter_tools/lib/src/android/gradle.dart
@@ -872,7 +872,7 @@
 /// Returns the APK files for a given [FlutterProject] and [AndroidBuildInfo].
 ///
 /// The flutter.gradle plugin will copy APK outputs into:
-/// $buildDir/app/outputs/flutter-apk/app-<abi>-<flavor-flag>-<build-mode-flag>.apk
+/// `$buildDir/app/outputs/flutter-apk/app-<abi>-<flavor-flag>-<build-mode-flag>.apk`
 @visibleForTesting
 Iterable<String> listApkPaths(
   AndroidBuildInfo androidBuildInfo,
diff --git a/packages/flutter_tools/lib/src/application_package.dart b/packages/flutter_tools/lib/src/application_package.dart
index bb9ab61..f84d603 100644
--- a/packages/flutter_tools/lib/src/application_package.dart
+++ b/packages/flutter_tools/lib/src/application_package.dart
@@ -262,7 +262,7 @@
   String get name => file.basename;
 }
 
-/// Tests whether a [Directory] is an iOS bundle directory
+/// Tests whether a [Directory] is an iOS bundle directory.
 bool _isBundleDirectory(Directory dir) => dir.path.endsWith('.app');
 
 abstract class IOSApp extends ApplicationPackage {
diff --git a/packages/flutter_tools/lib/src/artifacts.dart b/packages/flutter_tools/lib/src/artifacts.dart
index 8affae2..1244992 100644
--- a/packages/flutter_tools/lib/src/artifacts.dart
+++ b/packages/flutter_tools/lib/src/artifacts.dart
@@ -67,7 +67,7 @@
   windowsDesktopPath,
   /// The root of the cpp client code for Windows desktop.
   windowsCppClientWrapper,
-  /// The root of the sky_engine package
+  /// The root of the sky_engine package.
   skyEnginePath,
   /// The location of the macOS engine podspec file.
   flutterMacOSPodspec,
diff --git a/packages/flutter_tools/lib/src/asset.dart b/packages/flutter_tools/lib/src/asset.dart
index 7cb9b48..8da0131 100644
--- a/packages/flutter_tools/lib/src/asset.dart
+++ b/packages/flutter_tools/lib/src/asset.dart
@@ -65,7 +65,7 @@
   AssetBundle createBundle() => ManifestAssetBundle();
 }
 
-/// An asset bundle based on a pubspec.yaml
+/// An asset bundle based on a pubspec.yaml file.
 class ManifestAssetBundle implements AssetBundle {
   /// Constructs an [ManifestAssetBundle] that gathers the set of assets from the
   /// pubspec.yaml manifest.
@@ -652,12 +652,13 @@
 ///
 /// Given package: 'test_package' and an assets directory like this:
 ///
-/// assets/foo
-/// assets/var1/foo
-/// assets/var2/foo
-/// assets/bar
+/// - assets/foo
+/// - assets/var1/foo
+/// - assets/var2/foo
+/// - assets/bar
 ///
-/// returns
+/// This will return:
+/// ```
 /// {
 ///   asset: packages/test_package/assets/foo: [
 ///     asset: packages/test_package/assets/foo,
@@ -668,7 +669,7 @@
 ///     asset: packages/test_package/assets/bar,
 ///   ],
 /// }
-///
+/// ```
 
 Map<_Asset, List<_Asset>> _parseAssets(
   PackageConfig packageConfig,
diff --git a/packages/flutter_tools/lib/src/base/command_help.dart b/packages/flutter_tools/lib/src/base/command_help.dart
index 1a21b59..cd14e46 100644
--- a/packages/flutter_tools/lib/src/base/command_help.dart
+++ b/packages/flutter_tools/lib/src/base/command_help.dart
@@ -230,11 +230,11 @@
 
   final OutputPreferences _outputPreferences;
 
-  /// The key associated with this command
+  /// The key associated with this command.
   final String key;
-  /// A description of what this command does
+  /// A description of what this command does.
   final String description;
-  /// Text shown in parenthesis to give the context
+  /// Text shown in parenthesis to give the context.
   final String inParenthesis;
 
   bool get _hasTextInParenthesis => inParenthesis != null && inParenthesis.isNotEmpty;
diff --git a/packages/flutter_tools/lib/src/base/common.dart b/packages/flutter_tools/lib/src/base/common.dart
index 58e17ae..0951f40 100644
--- a/packages/flutter_tools/lib/src/base/common.dart
+++ b/packages/flutter_tools/lib/src/base/common.dart
@@ -9,7 +9,7 @@
 /// Throw a specialized exception for expected situations
 /// where the tool should exit with a clear message to the user
 /// and no stack trace unless the --verbose option is specified.
-/// For example: network errors
+/// For example: network errors.
 void throwToolExit(String message, { int exitCode }) {
   throw ToolExit(message, exitCode: exitCode);
 }
@@ -17,7 +17,7 @@
 /// Specialized exception for expected situations
 /// where the tool should exit with a clear message to the user
 /// and no stack trace unless the --verbose option is specified.
-/// For example: network errors
+/// For example: network errors.
 class ToolExit implements Exception {
   ToolExit(this.message, { this.exitCode });
 
diff --git a/packages/flutter_tools/lib/src/base/file_system.dart b/packages/flutter_tools/lib/src/base/file_system.dart
index e192cd6..40ac4c8 100644
--- a/packages/flutter_tools/lib/src/base/file_system.dart
+++ b/packages/flutter_tools/lib/src/base/file_system.dart
@@ -139,7 +139,7 @@
         && referenceFile.statSync().modified.isAfter(entity.statSync().modified);
   }
 
-  /// Return the absolute path of the user's home directory
+  /// Return the absolute path of the user's home directory.
   String get homeDirPath {
     String path = _platform.isWindows
       ? _platform.environment['USERPROFILE']
diff --git a/packages/flutter_tools/lib/src/base/fingerprint.dart b/packages/flutter_tools/lib/src/base/fingerprint.dart
index c9681d7..bc86ecd 100644
--- a/packages/flutter_tools/lib/src/base/fingerprint.dart
+++ b/packages/flutter_tools/lib/src/base/fingerprint.dart
@@ -182,9 +182,9 @@
 ///
 /// Snapshot dependency files are a single line mapping the output snapshot to a
 /// space-separated list of input files used to generate that output. Spaces and
-/// backslashes are escaped with a backslash. e.g,
+/// backslashes are escaped with a backslash. For example:
 ///
-/// outfile : file1.dart fil\\e2.dart fil\ e3.dart
+///     outfile : file1.dart fil\\e2.dart fil\ e3.dart
 ///
 /// will return a set containing: 'file1.dart', 'fil\e2.dart', 'fil e3.dart'.
 Set<String> readDepfile(String depfilePath) {
diff --git a/packages/flutter_tools/lib/src/base/platform.dart b/packages/flutter_tools/lib/src/base/platform.dart
index 0b7883c..0af28eb 100644
--- a/packages/flutter_tools/lib/src/base/platform.dart
+++ b/packages/flutter_tools/lib/src/base/platform.dart
@@ -43,7 +43,7 @@
   /// True if the operating system is iOS.
   bool get isIOS => operatingSystem == 'ios';
 
-  /// True if the operating system is Fuchsia
+  /// True if the operating system is Fuchsia.
   bool get isFuchsia => operatingSystem == 'fuchsia';
 
   /// The environment for this process.
diff --git a/packages/flutter_tools/lib/src/base/signals.dart b/packages/flutter_tools/lib/src/base/signals.dart
index 84dae62..fe156f8 100644
--- a/packages/flutter_tools/lib/src/base/signals.dart
+++ b/packages/flutter_tools/lib/src/base/signals.dart
@@ -11,7 +11,7 @@
 
 typedef SignalHandler = FutureOr<void> Function(ProcessSignal signal);
 
-/// A class that manages signal handlers
+/// A class that manages signal handlers.
 ///
 /// Signal handlers are run in the order that they were added.
 abstract class Signals {
diff --git a/packages/flutter_tools/lib/src/build_info.dart b/packages/flutter_tools/lib/src/build_info.dart
index 936618e..9074655 100644
--- a/packages/flutter_tools/lib/src/build_info.dart
+++ b/packages/flutter_tools/lib/src/build_info.dart
@@ -82,7 +82,7 @@
   /// A "x.y.z" string used as the version number shown to users.
   /// For each new version of your app, you will provide a version number to differentiate it from previous versions.
   /// On Android it is used as versionName.
-  /// On Xcode builds it is used as CFBundleShortVersionString,
+  /// On Xcode builds it is used as CFBundleShortVersionString.
   final String buildName;
 
   /// An optional directory path to save debugging information from dwarf stack
@@ -93,7 +93,7 @@
   /// Whether to apply dart source code obfuscation.
   final bool dartObfuscation;
 
-  /// An optional path to a JSON containing object SkSL shaders
+  /// An optional path to a JSON containing object SkSL shaders.
   ///
   /// Currently this is only supported for Android builds.
   final String bundleSkSLPath;
diff --git a/packages/flutter_tools/lib/src/build_runner/devfs_web.dart b/packages/flutter_tools/lib/src/build_runner/devfs_web.dart
index 1dcaf2d..84915f9 100644
--- a/packages/flutter_tools/lib/src/build_runner/devfs_web.dart
+++ b/packages/flutter_tools/lib/src/build_runner/devfs_web.dart
@@ -60,9 +60,9 @@
 </html>
 ''';
 
-/// An expression compiler connecting to FrontendServer
+/// An expression compiler connecting to FrontendServer.
 ///
-/// This is only used in development mode
+/// This is only used in development mode.
 class WebExpressionCompiler implements ExpressionCompiler {
   WebExpressionCompiler(this._generator);
 
diff --git a/packages/flutter_tools/lib/src/build_system/build_system.dart b/packages/flutter_tools/lib/src/build_system/build_system.dart
index 8a23b34..bd756e2 100644
--- a/packages/flutter_tools/lib/src/build_system/build_system.dart
+++ b/packages/flutter_tools/lib/src/build_system/build_system.dart
@@ -159,7 +159,7 @@
     );
   }
 
-  /// Invoke to remove the stamp file if the [buildAction] threw an exception;
+  /// Invoke to remove the stamp file if the [buildAction] threw an exception.
   void clearStamp(Environment environment) {
     final File stamp = _findStampFile(environment);
     if (stamp.existsSync()) {
@@ -260,18 +260,22 @@
 ///
 /// Use the environment to determine where to write an output file.
 ///
+/// ```dart
 ///    environment.buildDir.childFile('output')
 ///      ..createSync()
 ///      ..writeAsStringSync('output data');
+/// ```
 ///
 /// Example (Bad):
 ///
 /// Use a hard-coded path or directory relative to the current working
 /// directory to write an output file.
 ///
+/// ```dart
 ///   globals.fs.file('build/linux/out')
 ///     ..createSync()
 ///     ..writeAsStringSync('output data');
+/// ```
 ///
 /// Example (Good):
 ///
@@ -279,6 +283,7 @@
 /// is still responsible for outputting a different file, as defined by the
 /// corresponding output [Source].
 ///
+/// ```dart
 ///    final BuildMode buildMode = getBuildModeFromDefines(environment.defines);
 ///    if (buildMode == BuildMode.debug) {
 ///      environment.buildDir.childFile('debug.output')
@@ -289,6 +294,7 @@
 ///        ..createSync()
 ///        ..writeAsStringSync('non_debug');
 ///    }
+/// ```
 class Environment {
   /// Create a new [Environment] object.
   ///
diff --git a/packages/flutter_tools/lib/src/build_system/targets/localizations.dart b/packages/flutter_tools/lib/src/build_system/targets/localizations.dart
index 1b28881..fba1494 100644
--- a/packages/flutter_tools/lib/src/build_system/targets/localizations.dart
+++ b/packages/flutter_tools/lib/src/build_system/targets/localizations.dart
@@ -179,7 +179,7 @@
 
   /// The `--header` argument.
   ///
-  /// The header to prepend to the generated Dart localizations
+  /// The header to prepend to the generated Dart localizations.
   final String header;
 
   /// The `--output-class` argument.
diff --git a/packages/flutter_tools/lib/src/build_system/targets/web.dart b/packages/flutter_tools/lib/src/build_system/targets/web.dart
index f9be6a5..eee4ed3 100644
--- a/packages/flutter_tools/lib/src/build_system/targets/web.dart
+++ b/packages/flutter_tools/lib/src/build_system/targets/web.dart
@@ -221,7 +221,7 @@
   }
 }
 
-/// Unpacks the dart2js compilation and resources to a given output directory
+/// Unpacks the dart2js compilation and resources to a given output directory.
 class WebReleaseBundle extends Target {
   const WebReleaseBundle();
 
diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart
index 9be8777..d772063 100644
--- a/packages/flutter_tools/lib/src/cache.dart
+++ b/packages/flutter_tools/lib/src/cache.dart
@@ -25,7 +25,7 @@
 
   /// The name of the artifact.
   ///
-  /// This should match the flag name in precache.dart
+  /// This should match the flag name in precache.dart.
   final String name;
 
   /// A feature to control the visibility of this artifact.
diff --git a/packages/flutter_tools/lib/src/commands/drive.dart b/packages/flutter_tools/lib/src/commands/drive.dart
index 66cc1ee..0980e68 100644
--- a/packages/flutter_tools/lib/src/commands/drive.dart
+++ b/packages/flutter_tools/lib/src/commands/drive.dart
@@ -541,7 +541,7 @@
   return stopped;
 }
 
-/// A list of supported browsers
+/// A list of supported browsers.
 @visibleForTesting
 enum Browser {
   /// Chrome on Android: https://developer.chrome.com/multidevice/android/overview
diff --git a/packages/flutter_tools/lib/src/compile.dart b/packages/flutter_tools/lib/src/compile.dart
index cc0c415..8085ed0 100644
--- a/packages/flutter_tools/lib/src/compile.dart
+++ b/packages/flutter_tools/lib/src/compile.dart
@@ -72,13 +72,13 @@
 
   const TargetModel._(this._value);
 
-  /// The flutter patched dart SDK
+  /// The Flutter patched Dart SDK.
   static const TargetModel flutter = TargetModel._('flutter');
 
-  /// The fuchsia patched SDK.
+  /// The Fuchsia patched SDK.
   static const TargetModel flutterRunner = TargetModel._('flutter_runner');
 
-  /// The Dart vm.
+  /// The Dart VM.
   static const TargetModel vm = TargetModel._('vm');
 
   /// The development compiler for JavaScript.
@@ -488,7 +488,7 @@
   /// module object, for example:
   /// { 'dart':'dart_sdk', 'main': '/packages/hello_world_main.dart' }
   /// Returns a [CompilerOutput] including the name of the file containing the
-  /// compilation result and a number of errors
+  /// compilation result and a number of errors.
   Future<CompilerOutput> compileExpressionToJs(
     String libraryUri,
     int line,
diff --git a/packages/flutter_tools/lib/src/device.dart b/packages/flutter_tools/lib/src/device.dart
index 8995390..c691610 100644
--- a/packages/flutter_tools/lib/src/device.dart
+++ b/packages/flutter_tools/lib/src/device.dart
@@ -557,7 +557,7 @@
     String userIdentifier,
   });
 
-  /// Check if the device is supported by Flutter
+  /// Check if the device is supported by Flutter.
   bool isSupported();
 
   // String meant to be displayed to the user indicating if the device is
@@ -734,7 +734,7 @@
     };
   }
 
-  /// Clean up resources allocated by device
+  /// Clean up resources allocated by device.
   ///
   /// For example log readers or port forwarders.
   Future<void> dispose();
@@ -861,7 +861,7 @@
   /// The port the browser should use for its debugging protocol.
   final int webBrowserDebugPort;
 
-  /// Enable expression evaluation for web target
+  /// Enable expression evaluation for web target.
   final bool webEnableExpressionEvaluation;
 
   /// A file where the vmservice URL should be written after the application is started.
@@ -925,7 +925,7 @@
   /// Stops forwarding [forwardedPort].
   Future<void> unforward(ForwardedPort forwardedPort);
 
-  /// Cleanup allocated resources, like forwardedPorts
+  /// Cleanup allocated resources, like [forwardedPorts].
   Future<void> dispose();
 }
 
diff --git a/packages/flutter_tools/lib/src/flutter_manifest.dart b/packages/flutter_tools/lib/src/flutter_manifest.dart
index d2a8860..d34f9dc 100644
--- a/packages/flutter_tools/lib/src/flutter_manifest.dart
+++ b/packages/flutter_tools/lib/src/flutter_manifest.dart
@@ -37,7 +37,7 @@
     return FlutterManifest.createFromString(manifest, logger: logger);
   }
 
-  /// Returns null on missing or invalid manifest
+  /// Returns null on missing or invalid manifest.
   @visibleForTesting
   static FlutterManifest createFromString(String manifest, { @required Logger logger }) {
     return _createFromYaml(manifest != null ? loadYaml(manifest) : null, logger);
diff --git a/packages/flutter_tools/lib/src/fuchsia/fuchsia_dev_finder.dart b/packages/flutter_tools/lib/src/fuchsia/fuchsia_dev_finder.dart
index c6570ae..6872387 100644
--- a/packages/flutter_tools/lib/src/fuchsia/fuchsia_dev_finder.dart
+++ b/packages/flutter_tools/lib/src/fuchsia/fuchsia_dev_finder.dart
@@ -38,7 +38,8 @@
 
   /// Returns a list of attached devices as a list of strings with entries
   /// formatted as follows:
-  /// 192.168.42.172 scare-cable-skip-joy
+  ///
+  ///     192.168.42.172 scare-cable-skip-joy
   Future<List<String>> list({ Duration timeout }) async {
     if (_fuchsiaArtifacts.devFinder == null ||
         !_fuchsiaArtifacts.devFinder.existsSync()) {
diff --git a/packages/flutter_tools/lib/src/fuchsia/fuchsia_pm.dart b/packages/flutter_tools/lib/src/fuchsia/fuchsia_pm.dart
index 5a9a800..e713c6b 100644
--- a/packages/flutter_tools/lib/src/fuchsia/fuchsia_pm.dart
+++ b/packages/flutter_tools/lib/src/fuchsia/fuchsia_pm.dart
@@ -199,7 +199,7 @@
   String get url => Uri(scheme: 'http', host: _host, port: _port).toString();
 
   /// The URL that is stripped of interface name if it is an ipv6 address,
-  /// which should be supplied to amber_ctl to configure access to host
+  /// which should be supplied to amber_ctl to configure access to host.
   String get interfaceStrippedUrl => Uri(
     scheme: 'http',
     host: (isIPv6Address(_host.split('%').first)) ? '[${_host.split('%').first}]' : _host,
diff --git a/packages/flutter_tools/lib/src/fuchsia/fuchsia_sdk.dart b/packages/flutter_tools/lib/src/fuchsia/fuchsia_sdk.dart
index 73f644d..f4bfd22 100644
--- a/packages/flutter_tools/lib/src/fuchsia/fuchsia_sdk.dart
+++ b/packages/flutter_tools/lib/src/fuchsia/fuchsia_sdk.dart
@@ -49,8 +49,9 @@
   /// Returns any attached devices is a newline-denominated String.
   ///
   /// Example output:
-  ///    $ device-finder list -full
-  ///    > 192.168.42.56 paper-pulp-bush-angel
+  ///
+  ///     $ device-finder list -full
+  ///     > 192.168.42.56 paper-pulp-bush-angel
   Future<String> listDevices({ Duration timeout }) async {
     if (globals.fuchsiaArtifacts.devFinder == null ||
         !globals.fuchsiaArtifacts.devFinder.existsSync()) {
diff --git a/packages/flutter_tools/lib/src/globals.dart b/packages/flutter_tools/lib/src/globals.dart
index 48071f3..53def03 100644
--- a/packages/flutter_tools/lib/src/globals.dart
+++ b/packages/flutter_tools/lib/src/globals.dart
@@ -191,5 +191,5 @@
 ));
 PlistParser _plistInstance;
 
-/// The global template renderer
+/// The global template renderer.
 TemplateRenderer get templateRenderer => context.get<TemplateRenderer>();
diff --git a/packages/flutter_tools/lib/src/ios/simulators.dart b/packages/flutter_tools/lib/src/ios/simulators.dart
index 39bd947..43aa7a7 100644
--- a/packages/flutter_tools/lib/src/ios/simulators.dart
+++ b/packages/flutter_tools/lib/src/ios/simulators.dart
@@ -866,11 +866,12 @@
 /// Matches on device type given an identifier.
 ///
 /// Example device type identifiers:
-///   ✓ com.apple.CoreSimulator.SimDeviceType.iPhone-5
-///   ✓ com.apple.CoreSimulator.SimDeviceType.iPhone-6
-///   ✓ com.apple.CoreSimulator.SimDeviceType.iPhone-6s-Plus
-///   ✗ com.apple.CoreSimulator.SimDeviceType.iPad-2
-///   ✗ com.apple.CoreSimulator.SimDeviceType.Apple-Watch-38mm
+///
+/// - ✓ com.apple.CoreSimulator.SimDeviceType.iPhone-5
+/// - ✓ com.apple.CoreSimulator.SimDeviceType.iPhone-6
+/// - ✓ com.apple.CoreSimulator.SimDeviceType.iPhone-6s-Plus
+/// - ✗ com.apple.CoreSimulator.SimDeviceType.iPad-2
+/// - ✗ com.apple.CoreSimulator.SimDeviceType.Apple-Watch-38mm
 final RegExp _iosDeviceTypePattern =
     RegExp(r'com.apple.CoreSimulator.SimDeviceType.iPhone-(\d+)(.*)');
 
diff --git a/packages/flutter_tools/lib/src/linux/linux_doctor.dart b/packages/flutter_tools/lib/src/linux/linux_doctor.dart
index 934946e..820a41d 100644
--- a/packages/flutter_tools/lib/src/linux/linux_doctor.dart
+++ b/packages/flutter_tools/lib/src/linux/linux_doctor.dart
@@ -28,7 +28,7 @@
   Version number;
 }
 
-/// A validator that checks for Clang and Make build dependencies
+/// A validator that checks for Clang and Make build dependencies.
 class LinuxDoctorValidator extends DoctorValidator {
   LinuxDoctorValidator({
     @required ProcessManager processManager,
diff --git a/packages/flutter_tools/lib/src/macos/application_package.dart b/packages/flutter_tools/lib/src/macos/application_package.dart
index 212c8e0..57f15ad 100644
--- a/packages/flutter_tools/lib/src/macos/application_package.dart
+++ b/packages/flutter_tools/lib/src/macos/application_package.dart
@@ -12,7 +12,7 @@
 import '../ios/plist_parser.dart';
 import '../project.dart';
 
-/// Tests whether a [FileSystemEntity] is an macOS bundle directory
+/// Tests whether a [FileSystemEntity] is an macOS bundle directory.
 bool _isBundleDirectory(FileSystemEntity entity) =>
     entity is Directory && entity.path.endsWith('.app');
 
diff --git a/packages/flutter_tools/lib/src/macos/xcode.dart b/packages/flutter_tools/lib/src/macos/xcode.dart
index e302056..fa824af 100644
--- a/packages/flutter_tools/lib/src/macos/xcode.dart
+++ b/packages/flutter_tools/lib/src/macos/xcode.dart
@@ -41,7 +41,7 @@
 ///
 /// Usage: xcrun [options] <tool name> ... arguments ...
 /// ...
-/// --sdk <sdk name>            find the tool for the given SDK name
+/// --sdk <sdk name>            find the tool for the given SDK name.
 String getNameForSdk(SdkType sdk) {
   switch (sdk) {
     case SdkType.iPhone:
diff --git a/packages/flutter_tools/lib/src/plugins.dart b/packages/flutter_tools/lib/src/plugins.dart
index 80aef59..a83d9ca 100644
--- a/packages/flutter_tools/lib/src/plugins.dart
+++ b/packages/flutter_tools/lib/src/plugins.dart
@@ -176,11 +176,12 @@
   /// Create a YamlMap that represents the supported platforms.
   ///
   /// For example, if the `platforms` contains 'ios' and 'android', the return map looks like:
-  ///    android:
-  ///      package: io.flutter.plugins.sample
-  ///      pluginClass: SamplePlugin
-  ///    ios:
-  ///      pluginClass: SamplePlugin
+  ///
+  ///     android:
+  ///       package: io.flutter.plugins.sample
+  ///       pluginClass: SamplePlugin
+  ///     ios:
+  ///       pluginClass: SamplePlugin
   static YamlMap createPlatformsYamlMap(List<String> platforms, String pluginClass, String androidPackage) {
     final Map<String, dynamic> map = <String, dynamic>{};
     for (final String platform in platforms) {
diff --git a/packages/flutter_tools/lib/src/project.dart b/packages/flutter_tools/lib/src/project.dart
index 5bffb2f..8408df2 100644
--- a/packages/flutter_tools/lib/src/project.dart
+++ b/packages/flutter_tools/lib/src/project.dart
@@ -194,7 +194,7 @@
   /// True if this project is a Flutter module project.
   bool get isModule => manifest.isModule;
 
-  /// True if the Flutter project is using the AndroidX support library
+  /// True if the Flutter project is using the AndroidX support library.
   bool get usesAndroidX => manifest.usesAndroidX;
 
   /// True if this project has an example application.
@@ -709,7 +709,7 @@
   /// True if the parent Flutter project is a module.
   bool get isModule => parent.isModule;
 
-  /// True if the Flutter project is using the AndroidX support library
+  /// True if the Flutter project is using the AndroidX support library.
   bool get usesAndroidX => parent.usesAndroidX;
 
   /// True, if the app project is using Kotlin.
@@ -989,7 +989,7 @@
   }
 }
 
-/// The Windows sub project
+/// The Windows sub project.
 class WindowsProject extends FlutterProjectPlatform implements CmakeBasedProject {
   WindowsProject._(this.parent);
 
@@ -1075,7 +1075,7 @@
   }
 }
 
-/// The Fuchsia sub project
+/// The Fuchsia sub project.
 class FuchsiaProject {
   FuchsiaProject._(this.project);
 
diff --git a/packages/flutter_tools/lib/src/resident_runner.dart b/packages/flutter_tools/lib/src/resident_runner.dart
index 279b93e..716dff0 100644
--- a/packages/flutter_tools/lib/src/resident_runner.dart
+++ b/packages/flutter_tools/lib/src/resident_runner.dart
@@ -1707,7 +1707,7 @@
 /// Returns the next platform value for the switcher.
 ///
 /// These values must match what is available in
-/// packages/flutter/lib/src/foundation/binding.dart
+/// `packages/flutter/lib/src/foundation/binding.dart`.
 String nextPlatform(String currentPlatform, FeatureFlags featureFlags) {
   switch (currentPlatform) {
     case 'android':
diff --git a/packages/flutter_tools/lib/src/version.dart b/packages/flutter_tools/lib/src/version.dart
index 225b8cc..9c83b62 100644
--- a/packages/flutter_tools/lib/src/version.dart
+++ b/packages/flutter_tools/lib/src/version.dart
@@ -699,7 +699,7 @@
   return revision.length > 10 ? revision.substring(0, 10) : revision;
 }
 
-/// Version of Flutter SDK parsed from git
+/// Version of Flutter SDK parsed from Git.
 class GitTagVersion {
   const GitTagVersion({
     this.x,
@@ -732,7 +732,7 @@
   /// The Z in vX.Y.Z.
   final int z;
 
-  /// the F in vX.Y.Z+hotfix.F
+  /// the F in vX.Y.Z+hotfix.F.
   final int hotfix;
 
   /// Number of commits since the vX.Y.Z tag.
@@ -741,10 +741,10 @@
   /// The git hash (or an abbreviation thereof) for this commit.
   final String hash;
 
-  /// The N in X.Y.Z-dev.N.M
+  /// The N in X.Y.Z-dev.N.M.
   final int devVersion;
 
-  /// The M in X.Y.Z-dev.N.M
+  /// The M in X.Y.Z-dev.N.M.
   final int devPatch;
 
   /// The git tag that is this version's closest ancestor.
diff --git a/packages/flutter_tools/lib/src/vmservice.dart b/packages/flutter_tools/lib/src/vmservice.dart
index a1581f9..5418dd4 100644
--- a/packages/flutter_tools/lib/src/vmservice.dart
+++ b/packages/flutter_tools/lib/src/vmservice.dart
@@ -811,7 +811,7 @@
     return callServiceExtension(kScreenshotSkpMethod);
   }
 
-  /// Set the VM timeline flags
+  /// Set the VM timeline flags.
   Future<vm_service.Response> setVMTimelineFlags(List<String> recordedStreams) {
     assert(recordedStreams != null);
     return callServiceExtension(
diff --git a/packages/flutter_tools/lib/src/windows/visual_studio.dart b/packages/flutter_tools/lib/src/windows/visual_studio.dart
index 6187fee..f6522cf 100644
--- a/packages/flutter_tools/lib/src/windows/visual_studio.dart
+++ b/packages/flutter_tools/lib/src/windows/visual_studio.dart
@@ -103,7 +103,7 @@
   /// Returns the highest installed Windows 10 SDK version, or null if none is
   /// found.
   ///
-  /// For instance: 10.0.18362.0
+  /// For instance: 10.0.18362.0.
   String getWindows10SDKVersion() {
     final String sdkLocation = _getWindows10SdkLocation();
     if (sdkLocation == null) {