Prepare to publish 0.28.4 (#1989)

* Prepare to publish 0.28.4

* build
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 9c38a40..02ca3db 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,7 @@
-## 0.28.4-dev
+## 0.28.4
 * **Breaking change** Change the default for `allow-tools` command line flag to false.
+* Fix some lints.
+* Update to support a future version of analyzer.
 
 ## 0.28.3+3
 * Fix code highlighting in Dart after string interpolation (#1946, #1948) by
diff --git a/dartdoc_options.yaml b/dartdoc_options.yaml
index 46081ac..dd91599 100644
--- a/dartdoc_options.yaml
+++ b/dartdoc_options.yaml
@@ -1,4 +1,4 @@
 dartdoc:
   linkToSource:
     root: '.'
-    uriTemplate: 'https://github.com/dart-lang/dartdoc/blob/v0.28.4-dev/%f%#L%l%'
+    uriTemplate: 'https://github.com/dart-lang/dartdoc/blob/v0.28.4/%f%#L%l%'
diff --git a/lib/src/model.dart b/lib/src/model.dart
index 0585b60..183a504 100644
--- a/lib/src/model.dart
+++ b/lib/src/model.dart
@@ -3032,6 +3032,7 @@
                   e.computeConstantValue().getField(e.name).toIntValue();
               newModelElement = new EnumField.forConstant(
                   index, e, library, packageGraph, getter);
+              // ignore: unnecessary_cast
             } else if ((e.enclosingElement as ClassElement).isEnum) {
               newModelElement =
                   new EnumField(e, library, packageGraph, getter, setter);
diff --git a/lib/src/version.dart b/lib/src/version.dart
index bf70152..e0c8b3f 100644
--- a/lib/src/version.dart
+++ b/lib/src/version.dart
@@ -1,2 +1,2 @@
 // Generated code. Do not modify.
-const packageVersion = '0.28.4-dev';
+const packageVersion = '0.28.4';
diff --git a/pubspec.yaml b/pubspec.yaml
index 8bab2f7..8e0ccac 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,6 +1,6 @@
 name: dartdoc
 # Run `grind build` after updating.
-version: 0.28.4-dev
+version: 0.28.4
 author: Dart Team <misc@dartlang.org>
 description: A documentation generator for Dart.
 homepage: https://github.com/dart-lang/dartdoc