Add missing trailing commas (#28673)

* add trailing commas on list/map/parameters

* add trailing commas on Invocation with nb of arg>1

* add commas for widget containing widgets

* add trailing commas if instantiation contains trailing comma

* revert bad change
diff --git a/dev/bots/analyze.dart b/dev/bots/analyze.dart
index 84cf80c..dd26179 100644
--- a/dev/bots/analyze.dart
+++ b/dev/bots/analyze.dart
@@ -236,7 +236,7 @@
 }
 
 Future<void> _runFlutterAnalyze(String workingDirectory, {
-  List<String> options = const <String>[]
+  List<String> options = const <String>[],
 }) {
   return runCommand(flutter, <String>['analyze', '--dartdocs']..addAll(options),
     workingDirectory: workingDirectory,
diff --git a/dev/bots/run_command.dart b/dev/bots/run_command.dart
index c996aae..72382da 100644
--- a/dev/bots/run_command.dart
+++ b/dev/bots/run_command.dart
@@ -58,7 +58,7 @@
   if (printOutput) {
     await Future.wait<void>(<Future<void>>[
       stdout.addStream(process.stdout),
-      stderr.addStream(process.stderr)
+      stderr.addStream(process.stderr),
     ]);
   } else {
     savedStdout = process.stdout.toList();
diff --git a/dev/bots/test.dart b/dev/bots/test.dart
index a7536be..74e32e2 100644
--- a/dev/bots/test.dart
+++ b/dev/bots/test.dart
@@ -309,7 +309,7 @@
 Future<void> _pubRunTest(
   String workingDirectory, {
   String testPath,
-  bool enableFlutterToolAsserts = false
+  bool enableFlutterToolAsserts = false,
 }) {
   final List<String> args = <String>['run', 'test', '-rcompact', '-j1'];
   if (!hasColor)
diff --git a/dev/bots/test/fake_process_manager.dart b/dev/bots/test/fake_process_manager.dart
index 35f024b..6a4136c 100644
--- a/dev/bots/test/fake_process_manager.dart
+++ b/dev/bots/test/fake_process_manager.dart
@@ -103,7 +103,7 @@
     when(runSync(
       any,
       environment: anyNamed('environment'),
-      workingDirectory: anyNamed('workingDirectory')
+      workingDirectory: anyNamed('workingDirectory'),
     )).thenAnswer(_nextResultSync);
 
     when(runSync(any)).thenAnswer(_nextResultSync);
diff --git a/dev/bots/test/fake_process_manager_test.dart b/dev/bots/test/fake_process_manager_test.dart
index 8dd8bd9..5447214 100644
--- a/dev/bots/test/fake_process_manager_test.dart
+++ b/dev/bots/test/fake_process_manager_test.dart
@@ -27,10 +27,10 @@
     test('start works', () async {
       final Map<String, List<ProcessResult>> calls = <String, List<ProcessResult>>{
         'gsutil acl get gs://flutter_infra/releases/releases.json': <ProcessResult>[
-          ProcessResult(0, 0, 'output1', '')
+          ProcessResult(0, 0, 'output1', ''),
         ],
         'gsutil cat gs://flutter_infra/releases/releases.json': <ProcessResult>[
-          ProcessResult(0, 0, 'output2', '')
+          ProcessResult(0, 0, 'output2', ''),
         ],
       };
       processManager.fakeResults = calls;
@@ -49,10 +49,10 @@
     test('run works', () async {
       final Map<String, List<ProcessResult>> calls = <String, List<ProcessResult>>{
         'gsutil acl get gs://flutter_infra/releases/releases.json': <ProcessResult>[
-          ProcessResult(0, 0, 'output1', '')
+          ProcessResult(0, 0, 'output1', ''),
         ],
         'gsutil cat gs://flutter_infra/releases/releases.json': <ProcessResult>[
-          ProcessResult(0, 0, 'output2', '')
+          ProcessResult(0, 0, 'output2', ''),
         ],
       };
       processManager.fakeResults = calls;
@@ -66,10 +66,10 @@
     test('runSync works', () async {
       final Map<String, List<ProcessResult>> calls = <String, List<ProcessResult>>{
         'gsutil acl get gs://flutter_infra/releases/releases.json': <ProcessResult>[
-          ProcessResult(0, 0, 'output1', '')
+          ProcessResult(0, 0, 'output1', ''),
         ],
         'gsutil cat gs://flutter_infra/releases/releases.json': <ProcessResult>[
-          ProcessResult(0, 0, 'output2', '')
+          ProcessResult(0, 0, 'output2', ''),
         ],
       };
       processManager.fakeResults = calls;
@@ -83,10 +83,10 @@
     test('captures stdin', () async {
       final Map<String, List<ProcessResult>> calls = <String, List<ProcessResult>>{
         'gsutil acl get gs://flutter_infra/releases/releases.json': <ProcessResult>[
-          ProcessResult(0, 0, 'output1', '')
+          ProcessResult(0, 0, 'output1', ''),
         ],
         'gsutil cat gs://flutter_infra/releases/releases.json': <ProcessResult>[
-          ProcessResult(0, 0, 'output2', '')
+          ProcessResult(0, 0, 'output2', ''),
         ],
       };
       processManager.fakeResults = calls;