-
Notifications
You must be signed in to change notification settings - Fork 78
Run Windows watcher in an isolate #2239
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Run Windows watcher in an isolate #2239
Conversation
Package publishing
Documentation at https://github.com/dart-lang/ecosystem/wiki/Publishing-automation. |
dbc9dd5 to
cd302c1
Compare
PR HealthLicense Headers ✔️
All source files should start with a license header. Unrelated files missing license headers
This check can be disabled by tagging the PR with API leaks ✔️The following packages contain symbols visible in the public API, but not exported by the library. Export these symbols or remove them from your publicly visible API.
This check can be disabled by tagging the PR with
Breaking changes
|
| Package | Change | Current Version | New Version | Needed Version | Looking good? |
|---|---|---|---|---|---|
| watcher | Non-Breaking | 1.1.4 | 1.1.5-wip | 1.2.0 Got "1.1.5-wip" expected >= "1.2.0" (non-breaking changes) |
This check can be disabled by tagging the PR with skip-breaking-check.
Coverage ⚠️
| File | Coverage |
|---|---|
| pkgs/watcher/lib/src/directory_watcher.dart | 💔 50 % ⬇️ 12 % |
| pkgs/watcher/lib/src/directory_watcher/directory_list.dart | 💔 94 % ⬇️ 6 % |
| pkgs/watcher/lib/src/directory_watcher/windows.dart | 💔 0 % ⬇️ NaN % |
| pkgs/watcher/lib/src/directory_watcher/windows_isolate_directory_watcher.dart | 💔 Not covered |
| pkgs/watcher/lib/src/directory_watcher/windows_resubscribable_watcher.dart | 💔 Not covered |
| pkgs/watcher/lib/src/resubscribable.dart | 💚 100 % |
This check for test coverage is informational (issues shown here will not fail the PR).
This check can be disabled by tagging the PR with skip-coverage-check.
Changelog Entry ✔️
| Package | Changed Files |
|---|
Changes to files need to be accounted for in their respective changelogs.
This check can be disabled by tagging the PR with skip-changelog-check.
98816bd to
67e4919
Compare
67e4919 to
6c87bec
Compare
Run Windows watcher in an isolate to get around the platform issue that the watcher stops working if events are not handled quickly enough.
Convert the current buffer exhaustion test into two tests: one that checks buffer exhaustion usually does happen if not running in an isolate, and one that checks it usually does not happen if running in an isolate.
Add test coverage around unsubscribing/subscribing and
ResubscribableWatcher. Fix issue where the wrong completer could be completed.Running in an isolate means the tests see more races with writes in the tests, and also I ran the tests lots of times :) so some incidental fixes too:
directory_list.dart_eventsBasedOnFilesystem, this fixes a specific race identified by the tests