Add missing lints (#24381)

* update lint list

* enable sort_pub_dependencies

* enable avoid_returning_null_for_void

* enable flutter_style_todos
diff --git a/analysis_options.yaml b/analysis_options.yaml
index 5d8ab35..8957dfe 100644
--- a/analysis_options.yaml
+++ b/analysis_options.yaml
@@ -56,6 +56,7 @@
     - avoid_empty_else
     - avoid_field_initializers_in_const_classes
     - avoid_function_literals_in_foreach_calls
+    # - avoid_implementing_value_types # not yet tested
     - avoid_init_to_null
     # - avoid_js_rounded_ints # only useful when targeting JS runtime
     - avoid_null_checks_in_equality_operators
@@ -65,6 +66,7 @@
     - avoid_renaming_method_parameters
     - avoid_return_types_on_setters
     # - avoid_returning_null # there are plenty of valid reasons to return null
+    - avoid_returning_null_for_void
     # - avoid_returning_this # there are plenty of valid reasons to return this
     # - avoid_setters_without_getters # not yet tested
     # - avoid_single_cascade_in_expression_statements # not yet tested
@@ -87,6 +89,7 @@
     - empty_constructor_bodies
     - empty_statements
     # - file_names # not yet tested
+    - flutter_style_todos
     - hash_and_equals
     - implementation_imports
     # - invariant_booleans # too many false positives: https://github.com/dart-lang/linter/issues/811
@@ -128,6 +131,7 @@
     # - prefer_function_declarations_over_variables # not yet tested
     - prefer_generic_function_type_aliases
     - prefer_initializing_formals
+    # - prefer_int_literals # not yet tested
     # - prefer_interpolation_to_compose_strings # not yet tested
     - prefer_is_empty
     - prefer_is_not_empty
@@ -140,6 +144,7 @@
     - recursive_getters
     - slash_for_doc_comments
     - sort_constructors_first
+    - sort_pub_dependencies
     - sort_unnamed_constructors_first
     - super_goes_last
     - test_types_in_equals
diff --git a/packages/flutter/lib/src/widgets/widget_inspector.dart b/packages/flutter/lib/src/widgets/widget_inspector.dart
index 54d62eb..6ecfc40 100644
--- a/packages/flutter/lib/src/widgets/widget_inspector.dart
+++ b/packages/flutter/lib/src/widgets/widget_inspector.dart
@@ -970,7 +970,7 @@
         getter: () async => _trackRebuildDirtyWidgets,
         setter: (bool value) async {
           if (value == _trackRebuildDirtyWidgets) {
-            return null;
+            return;
           }
           _rebuildStats.resetCounts();
           _trackRebuildDirtyWidgets = value;
@@ -979,10 +979,11 @@
             debugOnRebuildDirtyWidget = _onRebuildWidget;
             // Trigger a rebuild so there are baseline stats for rebuilds
             // performed by the app.
-            return forceRebuild();
+            await forceRebuild();
+            return;
           } else {
             debugOnRebuildDirtyWidget = null;
-            return null;
+            return;
           }
         },
       );
diff --git a/packages/flutter/test/foundation/diagnostics_test.dart b/packages/flutter/test/foundation/diagnostics_test.dart
index d19511f..e49b0c5 100644
--- a/packages/flutter/test/foundation/diagnostics_test.dart
+++ b/packages/flutter/test/foundation/diagnostics_test.dart
@@ -563,10 +563,10 @@
       golden: 'TestTree#00000(stringProperty1: value1, doubleProperty1: 42.5, roundedProperty: 0.3, nullProperty: null, <root node>)',
     );
 
+    // TODO(jacobr): this is an ugly test case.
     // There isn't anything interesting for this case as the children look the
-    // same with and without children. TODO(jacobr): this is an ugly test case.
-    // only difference is odd not clearly desirable density of B3 being right
-    // next to node C.
+    // same with and without children. Only difference is odd not clearly
+    // desirable density of B3 being right next to node C.
     goldenStyleTest(
       'single line last child',
       style: DiagnosticsTreeStyle.sparse,
diff --git a/packages/flutter_tools/bin/fuchsia_tester.dart b/packages/flutter_tools/bin/fuchsia_tester.dart
index a5e0ee3..a6d0e8e 100644
--- a/packages/flutter_tools/bin/fuchsia_tester.dart
+++ b/packages/flutter_tools/bin/fuchsia_tester.dart
@@ -97,7 +97,7 @@
     }
 
     // Put the tester shell where runTests expects it.
-    // TODO(tvolkert,garymm): Switch to a Fuchsia-specific Artifacts impl.
+    // TODO(garymm): Switch to a Fuchsia-specific Artifacts impl.
     final Link testerDestLink =
         fs.link(artifacts.getArtifactPath(Artifact.flutterTester));
     testerDestLink.parent.createSync(recursive: true);
diff --git a/packages/flutter_tools/lib/src/commands/run.dart b/packages/flutter_tools/lib/src/commands/run.dart
index 145e668..cb2efb9 100644
--- a/packages/flutter_tools/lib/src/commands/run.dart
+++ b/packages/flutter_tools/lib/src/commands/run.dart
@@ -19,7 +19,7 @@
 import '../runner/flutter_command.dart';
 import 'daemon.dart';
 
-// TODO(flutter/flutter#23031): Test this.
+// TODO(mklim): Test this, flutter/flutter#23031.
 abstract class RunCommandBase extends FlutterCommand {
   // Used by run and drive commands.
   RunCommandBase({ bool verboseHelp = false }) {
diff --git a/packages/flutter_tools/lib/src/commands/update_packages.dart b/packages/flutter_tools/lib/src/commands/update_packages.dart
index 54594dd..b0e6cad 100644
--- a/packages/flutter_tools/lib/src/commands/update_packages.dart
+++ b/packages/flutter_tools/lib/src/commands/update_packages.dart
@@ -2,6 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
+// ignore_for_file: flutter_style_todos
+
 import 'dart:async';
 import 'dart:collection';
 
diff --git a/packages/flutter_tools/lib/src/ios/mac.dart b/packages/flutter_tools/lib/src/ios/mac.dart
index bfa1247..1847f78 100644
--- a/packages/flutter_tools/lib/src/ios/mac.dart
+++ b/packages/flutter_tools/lib/src/ios/mac.dart
@@ -297,7 +297,7 @@
   if (!_checkXcodeVersion())
     return XcodeBuildResult(success: false);
 
-  // TODO(cbracken) remove when https://github.com/flutter/flutter/issues/20685 is fixed.
+  // TODO(cbracken): remove when https://github.com/flutter/flutter/issues/20685 is fixed.
   await setXcodeWorkspaceBuildSystem(
     workspaceDirectory: app.project.xcodeWorkspace,
     workspaceSettings: app.project.xcodeWorkspaceSharedSettings,
@@ -458,7 +458,7 @@
           if (line == 'all done') {
             // Free pipe file.
             tempDir?.deleteSync(recursive: true);
-            return null;
+            return;
           }
         } else {
           initialBuildStatus.cancel();
@@ -469,7 +469,7 @@
           );
         }
       }
-      return listenToScriptOutputLine();
+      await listenToScriptOutputLine();
     }
 
     // Trigger the start of the pipe -> stdout loop. Ignore exceptions.
diff --git a/packages/flutter_tools/lib/src/run_cold.dart b/packages/flutter_tools/lib/src/run_cold.dart
index 9d301de..12e3478 100644
--- a/packages/flutter_tools/lib/src/run_cold.dart
+++ b/packages/flutter_tools/lib/src/run_cold.dart
@@ -12,7 +12,7 @@
 import 'resident_runner.dart';
 import 'tracing.dart';
 
-// TODO(flutter/flutter#23031): Test this.
+// TODO(mklim): Test this, flutter/flutter#23031.
 class ColdRunner extends ResidentRunner {
   ColdRunner(
     List<FlutterDevice> devices, {
diff --git a/packages/flutter_tools/lib/src/run_hot.dart b/packages/flutter_tools/lib/src/run_hot.dart
index ded7a25..07484de 100644
--- a/packages/flutter_tools/lib/src/run_hot.dart
+++ b/packages/flutter_tools/lib/src/run_hot.dart
@@ -48,7 +48,7 @@
   List<Map<String, dynamic>> reports; // List has one report per Flutter view.
 }
 
-// TODO(flutter/flutter#23031): Test this.
+// TODO(mklim): Test this, flutter/flutter#23031.
 class HotRunner extends ResidentRunner {
   HotRunner(
     List<FlutterDevice> devices, {
diff --git a/packages/flutter_tools/lib/src/vmservice.dart b/packages/flutter_tools/lib/src/vmservice.dart
index 633fc9d..4e355bf 100644
--- a/packages/flutter_tools/lib/src/vmservice.dart
+++ b/packages/flutter_tools/lib/src/vmservice.dart
@@ -102,7 +102,7 @@
 /// Used for RPC requests that should never take a long time.
 const Duration kShortRequestTimeout = Duration(seconds: 5);
 
-// TODO(flutter/flutter#23031): Test this.
+// TODO(mklim): Test this, flutter/flutter#23031.
 /// A connection to the Dart VM Service.
 class VMService {
   VMService(