Roll dart_style 1.3.7 into the SDK.

The main reason is that this adds better help text when run from
`dart format`. But it includes a couple of other changes and fixes:

* Don't crash when non-ASCII whitespace is trimmed.
* Split all conditional expressions (`?:`) when they are nested.
* Handle `external` and `abstract` fields and variables.

Change-Id: I59326e693bfe538013cd23b58924461f60e8e908
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/160981
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 9e6332c..817279d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -42,6 +42,12 @@
 
 ### Tools
 
+#### dartfmt
+
+* Don't crash when non-ASCII whitespace is trimmed.
+* Split all conditional expressions (`?:`) when they are nested.
+* Handle `external` and `abstract` fields and variables.
+
 #### Linter
 
 Updated the Linter to `0.1.118`, which includes:
diff --git a/DEPS b/DEPS
index 79c9692..94c47ce 100644
--- a/DEPS
+++ b/DEPS
@@ -94,7 +94,7 @@
   #     and land the review.
   #
   # For more details, see https://github.com/dart-lang/sdk/issues/30164
-  "dart_style_tag": "1.3.6",  # Please see the note above before updating.
+  "dart_style_tag": "1.3.7",  # Please see the note above before updating.
 
   "chromedriver_tag": "83.0.4103.39",
   "dartdoc_rev" : "291ebc50072746bc59ccab59115a298915218428",
diff --git a/pkg/dartdev/test/commands/format_test.dart b/pkg/dartdev/test/commands/format_test.dart
index 1045907..93d417d 100644
--- a/pkg/dartdev/test/commands/format_test.dart
+++ b/pkg/dartdev/test/commands/format_test.dart
@@ -22,7 +22,7 @@
     var result = p.runSync('format', ['--help']);
     expect(result.exitCode, 0);
     expect(result.stderr, isEmpty);
-    expect(result.stdout, contains('Idiomatically formats Dart source code.'));
+    expect(result.stdout, contains('Idiomatically format Dart source code.'));
     expect(result.stdout,
         contains('Usage: dart format [options...] <files or directories...>'));
   });
diff --git a/pkg/front_end/testcases/nnbd/abstract_fields.dart.textual_outline.expect b/pkg/front_end/testcases/nnbd/abstract_fields.dart.textual_outline.expect
index 77a9bf9..9d9f076 100644
--- a/pkg/front_end/testcases/nnbd/abstract_fields.dart.textual_outline.expect
+++ b/pkg/front_end/testcases/nnbd/abstract_fields.dart.textual_outline.expect
@@ -3,6 +3,7 @@
   abstract final int finalInstanceField;
   abstract covariant num covariantInstanceField;
 }
+
 mixin B {
   abstract int instanceField;
   abstract final int finalInstanceField;
diff --git a/pkg/front_end/testcases/nnbd/abstract_fields_spec.dart.textual_outline.expect b/pkg/front_end/testcases/nnbd/abstract_fields_spec.dart.textual_outline.expect
index 88348e2..21d3bce 100644
--- a/pkg/front_end/testcases/nnbd/abstract_fields_spec.dart.textual_outline.expect
+++ b/pkg/front_end/testcases/nnbd/abstract_fields_spec.dart.textual_outline.expect
@@ -6,4 +6,5 @@
   abstract covariant num cn;
   abstract covariant var cx;
 }
+
 main() {}
diff --git a/pkg/front_end/testcases/nnbd/abstract_fields_spec.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/nnbd/abstract_fields_spec.dart.textual_outline_modelled.expect
new file mode 100644
index 0000000..ed54c1d
--- /dev/null
+++ b/pkg/front_end/testcases/nnbd/abstract_fields_spec.dart.textual_outline_modelled.expect
@@ -0,0 +1,10 @@
+abstract class A {
+  abstract covariant num cn;
+  abstract covariant var cx;
+  abstract final fx;
+  abstract final int fi;
+  abstract int i1, i2;
+  abstract var x;
+}
+
+main() {}
diff --git a/pkg/front_end/testcases/nnbd/external_fields_spec.dart.textual_outline.expect b/pkg/front_end/testcases/nnbd/external_fields_spec.dart.textual_outline.expect
index 90d1b87..7b56a7c 100644
--- a/pkg/front_end/testcases/nnbd/external_fields_spec.dart.textual_outline.expect
+++ b/pkg/front_end/testcases/nnbd/external_fields_spec.dart.textual_outline.expect
@@ -1,9 +1,11 @@
 external int s1;
 external final fx;
+
 class A {
   external int i1;
   external covariant var cx;
   external static int s1;
   external static final fx;
 }
+
 main() {}
diff --git a/pkg/front_end/testcases/nnbd/external_fields_spec.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/nnbd/external_fields_spec.dart.textual_outline_modelled.expect
new file mode 100644
index 0000000..12143c8
--- /dev/null
+++ b/pkg/front_end/testcases/nnbd/external_fields_spec.dart.textual_outline_modelled.expect
@@ -0,0 +1,10 @@
+class A {
+  external covariant var cx;
+  external int i1;
+  external static final fx;
+  external static int s1;
+}
+
+external final fx;
+external int s1;
+main() {}