Update sdk constraint
diff --git a/.travis.yml b/.travis.yml
index fff8494..2ec03bb 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -3,8 +3,7 @@
 dart:
   - dev
   - stable
-  - 1.22.1
-  - 1.21.1
+  - 1.23.0
 dart_task:
   - test: -p vm
   - test: -p firefox
@@ -17,6 +16,11 @@
     # Formatted with 1.23.0+ which has (good) changes since 1.22.1
     - dart: dev
       dart_task: dartfmt
+
+# Only building master means that we don't run two builds for each pull request.
+branches:
+  only: [master]
+
 cache:
   directories:
     - $HOME/.pub-cache
diff --git a/CHANGELOG.md b/CHANGELOG.md
index cd78a9a..6e6b5ff 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,9 @@
+## 1.8.1
+
+* Use official generic function syntax.
+
+* Updated minimum SDK to 1.23.0.
+
 ## 1.8.0
 
 * Add a `Trace.original` field to provide access to the original `StackTrace`s
diff --git a/lib/src/chain.dart b/lib/src/chain.dart
index 2d1349d..07966fc 100644
--- a/lib/src/chain.dart
+++ b/lib/src/chain.dart
@@ -104,7 +104,7 @@
   /// [callback] in a [Zone] in which chain capturing is disabled.
   ///
   /// If [callback] returns a value, it will be returned by [disable] as well.
-  static/*=T*/ disable/*<T>*/(/*=T*/ callback(), {bool when: true}) {
+  static T disable<T>(T callback(), {bool when: true}) {
     var zoneValues =
         when ? {_specKey: null, StackZoneSpecification.disableKey: true} : null;
 
diff --git a/pubspec.yaml b/pubspec.yaml
index a4552ac..3aca7a7 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -7,7 +7,7 @@
 #
 # When the major version is upgraded, you *must* update that version constraint
 # in pub to stay in sync with this.
-version: 1.8.0
+version: 1.8.1
 author: "Dart Team <misc@dartlang.org>"
 homepage: https://github.com/dart-lang/stack_trace
 description: A package for manipulating stack traces and printing them readably.
@@ -17,4 +17,4 @@
 dev_dependencies:
   test: '^0.12.17'
 environment:
-  sdk: ">=1.21.0 <2.0.0"
+  sdk: ">=1.23.0 <2.0.0"