diff --git a/.github/workflows/test-package.yml b/.github/workflows/test-package.yml
index e55702c..70d8c5a 100644
--- a/.github/workflows/test-package.yml
+++ b/.github/workflows/test-package.yml
@@ -23,9 +23,9 @@
         sdk: [dev]
     steps:
       - uses: actions/checkout@v2
-      - uses: dart-lang/setup-dart@v0.1
+      - uses: dart-lang/setup-dart@v1.0
         with:
-          channel: ${{ matrix.sdk }}
+          sdk: ${{ matrix.sdk }}
       - id: install
         name: Install dependencies
         run: dart pub get
@@ -36,9 +36,6 @@
         run: dart analyze --fatal-infos
         if: always() && steps.install.outcome == 'success'
 
-  # Run tests on a matrix consisting of two dimensions:
-  # 1. OS: ubuntu-latest, (macos-latest, windows-latest)
-  # 2. release channel: dev
   test:
     needs: analyze
     runs-on: ${{ matrix.os }}
@@ -47,12 +44,12 @@
       matrix:
         # Add macos-latest and/or windows-latest if relevant for this package.
         os: [ubuntu-latest]
-        sdk: [dev]
+        sdk: [2.12.0, dev]
     steps:
       - uses: actions/checkout@v2
-      - uses: dart-lang/setup-dart@v0.1
+      - uses: dart-lang/setup-dart@v1.0
         with:
-          channel: ${{ matrix.sdk }}
+          sdk: ${{ matrix.sdk }}
       - id: install
         name: Install dependencies
         run: dart pub get
diff --git a/CHANGELOG.md b/CHANGELOG.md
index e238b0f..abfb484 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,24 +1,9 @@
+## 2.1.1-dev
+
 ## 2.1.0
 
 * Stable release for null safety.
 
-## 2.1.0-nullsafety.3
-
-* Update SDK constraints to `>=2.12.0-0 <3.0.0` based on beta release
-  guidelines.
-
-## 2.1.0-nullsafety.2
-
-* Allow prerelease versions of the 2.12 sdk.
-
-## 2.1.0-nullsafety.1
-
-* Allow 2.10 stable and 2.11.0 dev SDK versions.
-
-## 2.1.0-nullsafety
-
-* Migrate to null safety. There are no expected semantic changes.
-
 ## 2.0.0
 
 * Breaking: `BooleanSelector.evaluate` always takes a `bool Function(String)`.
diff --git a/pubspec.yaml b/pubspec.yaml
index a7b6158..6ae4e1c 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,19 +1,17 @@
 name: boolean_selector
-version: 2.1.0
+version: 2.1.1-dev
 description: >-
   A flexible syntax for boolean expressions, based on a simplified version of
   Dart's expression syntax.
-homepage: https://github.com/dart-lang/boolean_selector
+repository: https://github.com/dart-lang/boolean_selector
 
 environment:
-  sdk: ">=2.12.0-0 <3.0.0"
+  sdk: ">=2.12.0 <3.0.0"
 
 dependencies:
   source_span: ^1.8.0
   string_scanner: ^1.1.0
 
 dev_dependencies:
-  pedantic: ^1.10.0-nullsafety
-  test: ^1.16.0-nullsafety
-  test_api: ^0.2.19-nullsafety
-  test_core: ^0.3.12-nullsafety
+  pedantic: ^1.10.0
+  test: ^1.16.0
diff --git a/test/equality_test.dart b/test/equality_test.dart
index b0d2500..c5ccb64 100644
--- a/test/equality_test.dart
+++ b/test/equality_test.dart
@@ -2,9 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'package:test/test.dart';
-
 import 'package:boolean_selector/boolean_selector.dart';
+import 'package:test/test.dart';
 
 void main() {
   test('variable', () {
diff --git a/test/evaluate_test.dart b/test/evaluate_test.dart
index eb69335..2d94906 100644
--- a/test/evaluate_test.dart
+++ b/test/evaluate_test.dart
@@ -2,9 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'package:test/test.dart';
-
 import 'package:boolean_selector/boolean_selector.dart';
+import 'package:test/test.dart';
 
 void main() {
   group('operator:', () {
diff --git a/test/parser_test.dart b/test/parser_test.dart
index 5eca512..0b9db48 100644
--- a/test/parser_test.dart
+++ b/test/parser_test.dart
@@ -2,10 +2,9 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'package:test/test.dart';
-
 import 'package:boolean_selector/src/ast.dart';
 import 'package:boolean_selector/src/parser.dart';
+import 'package:test/test.dart';
 
 /// A matcher that asserts that a value is a [ConditionalNode].
 final _isConditionalNode = TypeMatcher<ConditionalNode>();
diff --git a/test/scanner_test.dart b/test/scanner_test.dart
index c684278..de9c416 100644
--- a/test/scanner_test.dart
+++ b/test/scanner_test.dart
@@ -2,10 +2,9 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'package:test/test.dart';
-
 import 'package:boolean_selector/src/scanner.dart';
 import 'package:boolean_selector/src/token.dart';
+import 'package:test/test.dart';
 
 void main() {
   group('peek()', () {
diff --git a/test/to_string_test.dart b/test/to_string_test.dart
index 1047fd1..971e5b9 100644
--- a/test/to_string_test.dart
+++ b/test/to_string_test.dart
@@ -2,9 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'package:test/test.dart';
-
 import 'package:boolean_selector/boolean_selector.dart';
+import 'package:test/test.dart';
 
 void main() {
   group('toString() for', () {
diff --git a/test/validate_test.dart b/test/validate_test.dart
index f040069..ec5b7eb 100644
--- a/test/validate_test.dart
+++ b/test/validate_test.dart
@@ -2,9 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'package:test/test.dart';
-
 import 'package:boolean_selector/boolean_selector.dart';
+import 'package:test/test.dart';
 
 var _selector = BooleanSelector.parse('foo && bar && baz');
 
diff --git a/test/variables_test.dart b/test/variables_test.dart
index e354907..5331409 100644
--- a/test/variables_test.dart
+++ b/test/variables_test.dart
@@ -2,9 +2,8 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'package:test/test.dart';
-
 import 'package:boolean_selector/boolean_selector.dart';
+import 'package:test/test.dart';
 
 void main() {
   test('a variable reports itself', () {
