Version 2.8.1

* Cherry-pick 64c9984ecfd531eb381a56eacac8b8b8fc83dfb6 to stable
diff --git a/CHANGELOG.md b/CHANGELOG.md
index f024462..90d3ea8 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,4 @@
-## 2.8.0
+## 2.8.1 - 2020-05-06
 
 Much of the changes in this release are in preparation for non-nullable types,
 which will arrive in a future version. In anticipation of that, we have made a
diff --git a/sdk/lib/_http/http_parser.dart b/sdk/lib/_http/http_parser.dart
index 74582d7..a67011e 100644
--- a/sdk/lib/_http/http_parser.dart
+++ b/sdk/lib/_http/http_parser.dart
@@ -713,10 +713,10 @@
                     (isUpgrade && isResponse && isUpgradeCode)) {
                   _connectionUpgrade = true;
                 }
-                _headers.add(headerField, tokens[i]);
+                _headers._add(headerField, tokens[i]);
               }
             } else {
-              _headers.add(headerField, headerValue);
+              _headers._add(headerField, headerValue);
             }
             _headerField.clear();
             _headerValue.clear();
diff --git a/sdk_nnbd/lib/_http/http_parser.dart b/sdk_nnbd/lib/_http/http_parser.dart
index 96891a1..9459789 100644
--- a/sdk_nnbd/lib/_http/http_parser.dart
+++ b/sdk_nnbd/lib/_http/http_parser.dart
@@ -713,10 +713,10 @@
                     (isUpgrade && isResponse && isUpgradeCode)) {
                   _connectionUpgrade = true;
                 }
-                headers.add(headerField, tokens[i]);
+                headers._add(headerField, tokens[i]);
               }
             } else {
-              headers.add(headerField, headerValue);
+              headers._add(headerField, headerValue);
             }
             _headerField.clear();
             _headerValue.clear();
diff --git a/tools/VERSION b/tools/VERSION
index 28289b5..aa5de78 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -32,7 +32,7 @@
 CHANNEL stable
 MAJOR 2
 MINOR 8
-PATCH 0
+PATCH 1
 PRERELEASE 0
 PRERELEASE_PATCH 0
 ABI_VERSION 32