pkg/watcher: prepare for 0.9.3
added changelog
updated pubspec
code formatting
removed unused imports
R=ajohnsen@google.com
Review URL: https://codereview.chromium.org//441483004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/watcher@38862 260f80e4-7a28-3924-810f-c04153c831b5
diff --git a/pkgs/watcher/CHANGELOG.md b/pkgs/watcher/CHANGELOG.md
new file mode 100644
index 0000000..eb544f6
--- /dev/null
+++ b/pkgs/watcher/CHANGELOG.md
@@ -0,0 +1,7 @@
+# 0.9.3
+
+* Improved support for Windows via `WindowsDirectoryWatcher`.
+
+* Simplified `PollingDirectoryWatcher`.
+
+* Fixed bugs in `MacOSDirectoryWatcher`
diff --git a/pkgs/watcher/example/watch.dart b/pkgs/watcher/example/watch.dart
index aba127d..da3c263 100644
--- a/pkgs/watcher/example/watch.dart
+++ b/pkgs/watcher/example/watch.dart
@@ -5,8 +5,6 @@
/// Watches the given directory and prints each modification to it.
library watch;
-import 'dart:io';
-
import 'package:path/path.dart' as p;
import 'package:watcher/watcher.dart';
diff --git a/pkgs/watcher/lib/src/async_queue.dart b/pkgs/watcher/lib/src/async_queue.dart
index 8ac0cdf..b83493d 100644
--- a/pkgs/watcher/lib/src/async_queue.dart
+++ b/pkgs/watcher/lib/src/async_queue.dart
@@ -70,4 +70,4 @@
_isProcessing = false;
});
}
-}
\ No newline at end of file
+}
diff --git a/pkgs/watcher/lib/src/constructable_file_system_event.dart b/pkgs/watcher/lib/src/constructable_file_system_event.dart
index 010d297..d00a1dc 100644
--- a/pkgs/watcher/lib/src/constructable_file_system_event.dart
+++ b/pkgs/watcher/lib/src/constructable_file_system_event.dart
@@ -40,11 +40,11 @@
final type = FileSystemEvent.MODIFY;
ConstructableFileSystemModifyEvent(String path, bool isDirectory,
- this.contentChanged)
+ this.contentChanged)
: super(path, isDirectory);
String toString() =>
- "FileSystemModifyEvent('$path', contentChanged=$contentChanged)";
+ "FileSystemModifyEvent('$path', contentChanged=$contentChanged)";
}
class ConstructableFileSystemMoveEvent extends _ConstructableFileSystemEvent
@@ -53,7 +53,7 @@
final type = FileSystemEvent.MOVE;
ConstructableFileSystemMoveEvent(String path, bool isDirectory,
- this.destination)
+ this.destination)
: super(path, isDirectory);
String toString() => "FileSystemMoveEvent('$path', '$destination')";
diff --git a/pkgs/watcher/lib/src/utils.dart b/pkgs/watcher/lib/src/utils.dart
index 163e9f4..007c84c 100644
--- a/pkgs/watcher/lib/src/utils.dart
+++ b/pkgs/watcher/lib/src/utils.dart
@@ -20,7 +20,7 @@
/// Returns the union of all elements in each set in [sets].
Set unionAll(Iterable<Set> sets) =>
- sets.fold(new Set(), (union, set) => union.union(set));
+ sets.fold(new Set(), (union, set) => union.union(set));
/// Returns a buffered stream that will emit the same values as the stream
/// returned by [future] once [future] completes.
@@ -76,7 +76,7 @@
/// Returns a [Future] that completes after pumping the event queue [times]
/// times. By default, this should pump the event queue enough times to allow
/// any code to run, as long as it's not waiting on some external event.
-Future pumpEventQueue([int times=20]) {
+Future pumpEventQueue([int times = 20]) {
if (times == 0) return new Future.value();
// We use a delayed future to allow microtask events to finish. The
// Future.value or Future() constructors use scheduleMicrotask themselves and
diff --git a/pkgs/watcher/lib/src/watch_event.dart b/pkgs/watcher/lib/src/watch_event.dart
index d998a25..be6d70c 100644
--- a/pkgs/watcher/lib/src/watch_event.dart
+++ b/pkgs/watcher/lib/src/watch_event.dart
@@ -32,4 +32,4 @@
const ChangeType(this._name);
String toString() => _name;
-}
\ No newline at end of file
+}
diff --git a/pkgs/watcher/pubspec.yaml b/pkgs/watcher/pubspec.yaml
index 51ba562..d517e8f 100644
--- a/pkgs/watcher/pubspec.yaml
+++ b/pkgs/watcher/pubspec.yaml
@@ -1,15 +1,15 @@
name: watcher
version: 0.9.3-dev
-author: "Dart Team <misc@dartlang.org>"
+author: Dart Team <misc@dartlang.org>
homepage: http://www.dartlang.org
description: >
A file watcher. It monitors for changes to contents of directories and
notifies you when files have been added, removed, or modified.
-dependencies:
- path: ">=0.9.0 <2.0.0"
- stack_trace: ">=0.9.1 <2.0.0"
-dev_dependencies:
- scheduled_test: ">=0.9.3-dev <0.11.0"
- unittest: ">=0.9.2 <0.10.0"
environment:
- sdk: ">=0.8.10+6 <2.0.0"
+ sdk: '>=1.0.0 <2.0.0'
+dependencies:
+ path: '>=0.9.0 <2.0.0'
+ stack_trace: '>=0.9.1 <2.0.0'
+dev_dependencies:
+ scheduled_test: '>=0.9.3 <0.12.0'
+ unittest: '>=0.9.2 <0.12.0'
diff --git a/pkgs/watcher/test/directory_watcher/linux_test.dart b/pkgs/watcher/test/directory_watcher/linux_test.dart
index cae38ad..c17eb53 100644
--- a/pkgs/watcher/test/directory_watcher/linux_test.dart
+++ b/pkgs/watcher/test/directory_watcher/linux_test.dart
@@ -9,7 +9,7 @@
import 'shared.dart';
import '../utils.dart';
-main() {
+void main() {
initConfig();
watcherFactory = (dir) => new LinuxDirectoryWatcher(dir);
diff --git a/pkgs/watcher/test/directory_watcher/mac_os_test.dart b/pkgs/watcher/test/directory_watcher/mac_os_test.dart
index 1e9bd7d..bbf966a 100644
--- a/pkgs/watcher/test/directory_watcher/mac_os_test.dart
+++ b/pkgs/watcher/test/directory_watcher/mac_os_test.dart
@@ -9,7 +9,7 @@
import 'shared.dart';
import '../utils.dart';
-main() {
+void main() {
initConfig();
MacOSDirectoryWatcher.logDebugInfo = true;
diff --git a/pkgs/watcher/test/directory_watcher/polling_test.dart b/pkgs/watcher/test/directory_watcher/polling_test.dart
index da29207..1ef49b5 100644
--- a/pkgs/watcher/test/directory_watcher/polling_test.dart
+++ b/pkgs/watcher/test/directory_watcher/polling_test.dart
@@ -8,7 +8,7 @@
import 'shared.dart';
import '../utils.dart';
-main() {
+void main() {
initConfig();
// Use a short delay to make the tests run quickly.
diff --git a/pkgs/watcher/test/directory_watcher/shared.dart b/pkgs/watcher/test/directory_watcher/shared.dart
index d3575ea..8632401 100644
--- a/pkgs/watcher/test/directory_watcher/shared.dart
+++ b/pkgs/watcher/test/directory_watcher/shared.dart
@@ -7,7 +7,7 @@
import '../utils.dart';
-sharedTests() {
+void sharedTests() {
test('does not notify for files that already exist when started', () {
// Make some pre-existing files.
writeFile("a.txt");
diff --git a/pkgs/watcher/test/directory_watcher/windows_test.dart b/pkgs/watcher/test/directory_watcher/windows_test.dart
index 6bfb88b..ea5c8c5 100644
--- a/pkgs/watcher/test/directory_watcher/windows_test.dart
+++ b/pkgs/watcher/test/directory_watcher/windows_test.dart
@@ -2,7 +2,6 @@
// 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:path/path.dart' as p;
import 'package:scheduled_test/scheduled_test.dart';
import 'package:watcher/src/directory_watcher/windows.dart';
import 'package:watcher/watcher.dart';
@@ -10,7 +9,7 @@
import 'shared.dart';
import '../utils.dart';
-main() {
+void main() {
initConfig();
watcherFactory = (dir) => new WindowsDirectoryWatcher(dir);
@@ -24,4 +23,3 @@
new isInstanceOf<WindowsDirectoryWatcher>());
});
}
-
diff --git a/pkgs/watcher/test/no_subscription/linux_test.dart b/pkgs/watcher/test/no_subscription/linux_test.dart
index 7978830..f7f1b49 100644
--- a/pkgs/watcher/test/no_subscription/linux_test.dart
+++ b/pkgs/watcher/test/no_subscription/linux_test.dart
@@ -4,12 +4,11 @@
import 'package:scheduled_test/scheduled_test.dart';
import 'package:watcher/src/directory_watcher/linux.dart';
-import 'package:watcher/watcher.dart';
import 'shared.dart';
import '../utils.dart';
-main() {
+void main() {
initConfig();
watcherFactory = (dir) => new LinuxDirectoryWatcher(dir);
@@ -17,4 +16,4 @@
setUp(createSandbox);
sharedTests();
-}
\ No newline at end of file
+}
diff --git a/pkgs/watcher/test/no_subscription/mac_os_test.dart b/pkgs/watcher/test/no_subscription/mac_os_test.dart
index e0275c4..721d3e7 100644
--- a/pkgs/watcher/test/no_subscription/mac_os_test.dart
+++ b/pkgs/watcher/test/no_subscription/mac_os_test.dart
@@ -4,12 +4,11 @@
import 'package:scheduled_test/scheduled_test.dart';
import 'package:watcher/src/directory_watcher/mac_os.dart';
-import 'package:watcher/watcher.dart';
import 'shared.dart';
import '../utils.dart';
-main() {
+void main() {
initConfig();
watcherFactory = (dir) => new MacOSDirectoryWatcher(dir);
@@ -17,4 +16,4 @@
setUp(createSandbox);
sharedTests();
-}
\ No newline at end of file
+}
diff --git a/pkgs/watcher/test/no_subscription/polling_test.dart b/pkgs/watcher/test/no_subscription/polling_test.dart
index fa4f0cb..c71b5ce 100644
--- a/pkgs/watcher/test/no_subscription/polling_test.dart
+++ b/pkgs/watcher/test/no_subscription/polling_test.dart
@@ -8,7 +8,7 @@
import 'shared.dart';
import '../utils.dart';
-main() {
+void main() {
initConfig();
watcherFactory = (dir) => new PollingDirectoryWatcher(dir);
@@ -16,4 +16,4 @@
setUp(createSandbox);
sharedTests();
-}
\ No newline at end of file
+}
diff --git a/pkgs/watcher/test/no_subscription/shared.dart b/pkgs/watcher/test/no_subscription/shared.dart
index 99172a2..9ba5c98 100644
--- a/pkgs/watcher/test/no_subscription/shared.dart
+++ b/pkgs/watcher/test/no_subscription/shared.dart
@@ -3,14 +3,13 @@
// BSD-style license that can be found in the LICENSE file.
import 'dart:async';
-import 'dart:io';
import 'package:scheduled_test/scheduled_test.dart';
import 'package:watcher/watcher.dart';
import '../utils.dart';
-sharedTests() {
+void sharedTests() {
test('does not notify for changes when there are no subscribers', () {
// Note that this test doesn't rely as heavily on the test functions in
// utils.dart because it needs to be very explicit about when the event
diff --git a/pkgs/watcher/test/ready/linux_test.dart b/pkgs/watcher/test/ready/linux_test.dart
index 7978830..f7f1b49 100644
--- a/pkgs/watcher/test/ready/linux_test.dart
+++ b/pkgs/watcher/test/ready/linux_test.dart
@@ -4,12 +4,11 @@
import 'package:scheduled_test/scheduled_test.dart';
import 'package:watcher/src/directory_watcher/linux.dart';
-import 'package:watcher/watcher.dart';
import 'shared.dart';
import '../utils.dart';
-main() {
+void main() {
initConfig();
watcherFactory = (dir) => new LinuxDirectoryWatcher(dir);
@@ -17,4 +16,4 @@
setUp(createSandbox);
sharedTests();
-}
\ No newline at end of file
+}
diff --git a/pkgs/watcher/test/ready/mac_os_test.dart b/pkgs/watcher/test/ready/mac_os_test.dart
index e0275c4..721d3e7 100644
--- a/pkgs/watcher/test/ready/mac_os_test.dart
+++ b/pkgs/watcher/test/ready/mac_os_test.dart
@@ -4,12 +4,11 @@
import 'package:scheduled_test/scheduled_test.dart';
import 'package:watcher/src/directory_watcher/mac_os.dart';
-import 'package:watcher/watcher.dart';
import 'shared.dart';
import '../utils.dart';
-main() {
+void main() {
initConfig();
watcherFactory = (dir) => new MacOSDirectoryWatcher(dir);
@@ -17,4 +16,4 @@
setUp(createSandbox);
sharedTests();
-}
\ No newline at end of file
+}
diff --git a/pkgs/watcher/test/ready/polling_test.dart b/pkgs/watcher/test/ready/polling_test.dart
index fa4f0cb..c71b5ce 100644
--- a/pkgs/watcher/test/ready/polling_test.dart
+++ b/pkgs/watcher/test/ready/polling_test.dart
@@ -8,7 +8,7 @@
import 'shared.dart';
import '../utils.dart';
-main() {
+void main() {
initConfig();
watcherFactory = (dir) => new PollingDirectoryWatcher(dir);
@@ -16,4 +16,4 @@
setUp(createSandbox);
sharedTests();
-}
\ No newline at end of file
+}
diff --git a/pkgs/watcher/test/ready/shared.dart b/pkgs/watcher/test/ready/shared.dart
index af1b58f..7be4833 100644
--- a/pkgs/watcher/test/ready/shared.dart
+++ b/pkgs/watcher/test/ready/shared.dart
@@ -6,7 +6,7 @@
import '../utils.dart';
-sharedTests() {
+void sharedTests() {
test('ready does not complete until after subscription', () {
var watcher = createWatcher(waitForReady: false);
diff --git a/pkgs/watcher/test/utils.dart b/pkgs/watcher/test/utils.dart
index 8b660e8..6758dae 100644
--- a/pkgs/watcher/test/utils.dart
+++ b/pkgs/watcher/test/utils.dart
@@ -4,7 +4,6 @@
library watcher.test.utils;
-import 'dart:async';
import 'dart:io';
import 'package:path/path.dart' as p;
@@ -250,16 +249,16 @@
/// Expects that the next event emitted will be for an add event for [path].
void expectAddEvent(String path) =>
- _expectOrCollect(isWatchEvent(ChangeType.ADD, path));
+ _expectOrCollect(isWatchEvent(ChangeType.ADD, path));
/// Expects that the next event emitted will be for a modification event for
/// [path].
void expectModifyEvent(String path) =>
- _expectOrCollect(isWatchEvent(ChangeType.MODIFY, path));
+ _expectOrCollect(isWatchEvent(ChangeType.MODIFY, path));
/// Expects that the next event emitted will be for a removal event for [path].
void expectRemoveEvent(String path) =>
- _expectOrCollect(isWatchEvent(ChangeType.REMOVE, path));
+ _expectOrCollect(isWatchEvent(ChangeType.REMOVE, path));
/// Consumes an add event for [path] if one is emitted at this point in the
/// schedule, but doesn't throw an error if it isn't.
@@ -267,7 +266,7 @@
/// If this is used at the end of a test, [startClosingEventStream] should be
/// called before it.
void allowAddEvent(String path) =>
- _expectOrCollect(allow(isWatchEvent(ChangeType.ADD, path)));
+ _expectOrCollect(allow(isWatchEvent(ChangeType.ADD, path)));
/// Consumes a modification event for [path] if one is emitted at this point in
/// the schedule, but doesn't throw an error if it isn't.
@@ -275,7 +274,7 @@
/// If this is used at the end of a test, [startClosingEventStream] should be
/// called before it.
void allowModifyEvent(String path) =>
- _expectOrCollect(allow(isWatchEvent(ChangeType.MODIFY, path)));
+ _expectOrCollect(allow(isWatchEvent(ChangeType.MODIFY, path)));
/// Consumes a removal event for [path] if one is emitted at this point in the
/// schedule, but doesn't throw an error if it isn't.
@@ -283,7 +282,7 @@
/// If this is used at the end of a test, [startClosingEventStream] should be
/// called before it.
void allowRemoveEvent(String path) =>
- _expectOrCollect(allow(isWatchEvent(ChangeType.REMOVE, path)));
+ _expectOrCollect(allow(isWatchEvent(ChangeType.REMOVE, path)));
/// Schedules writing a file in the sandbox at [path] with [contents].
///