Support running on Node.js (#25)

See sass/migrator#56
diff --git a/.travis.yml b/.travis.yml
index 82ad616..40fba06 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -6,7 +6,7 @@
 
 # See https://docs.travis-ci.com/user/languages/dart/ for details.
 dart_task:
-  - test: --platform vm,firefox
+  - test: --platform vm,firefox,node
   - dartanalyzer: --fatal-warnings --fatal-infos .
 
 matrix:
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 5deff3b..1d60efb 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+## 1.2.0
+
+* Support running on Node.js.
+
 ## 1.1.7
 
 * Set max SDK version to `<3.0.0`, and adjust other dependencies.
diff --git a/lib/glob.dart b/lib/glob.dart
index 807b0c4..c2f7f6f 100644
--- a/lib/glob.dart
+++ b/lib/glob.dart
@@ -3,11 +3,11 @@
 // BSD-style license that can be found in the LICENSE file.
 
 import 'dart:async';
-import 'dart:io';
 
 import 'package:path/path.dart' as p;
 
 import 'src/ast.dart';
+import 'src/io.dart';
 import 'src/list_tree.dart';
 import 'src/parser.dart';
 import 'src/utils.dart';
diff --git a/lib/src/io.dart b/lib/src/io.dart
new file mode 100644
index 0000000..32a30d3
--- /dev/null
+++ b/lib/src/io.dart
@@ -0,0 +1,7 @@
+// Copyright (c) 2019, the Dart project authors.  Please see the AUTHORS file
+// 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.
+
+// These libraries don't expose *exactly* the same API, but they overlap in all
+// the cases we care about.
+export 'dart:io' if (dart.library.js) 'package:node_io/node_io.dart';
diff --git a/lib/src/list_tree.dart b/lib/src/list_tree.dart
index 8ae127a..8a23b1c 100644
--- a/lib/src/list_tree.dart
+++ b/lib/src/list_tree.dart
@@ -3,13 +3,13 @@
 // BSD-style license that can be found in the LICENSE file.
 
 import 'dart:async';
-import 'dart:io';
 
 import 'package:async/async.dart';
 import 'package:path/path.dart' as p;
 import 'package:pedantic/pedantic.dart';
 
 import 'ast.dart';
+import 'io.dart';
 import 'utils.dart';
 
 /// The errno for a file or directory not existing on Mac and Linux.
diff --git a/pubspec.yaml b/pubspec.yaml
index bb49580..bc7f6af 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,5 +1,5 @@
 name: glob
-version: 1.1.8-dev
+version: 1.2.0
 
 description: Bash-style filename globbing.
 author: Dart Team <misc@dartlang.org>
@@ -11,6 +11,7 @@
 dependencies:
   async: '>=1.2.0 <3.0.0'
   collection: ^1.1.0
+  node_io: ^1.0.0
   path: ^1.3.0
   pedantic: ^1.2.0
   string_scanner: '>=0.1.0 <2.0.0'