Thanks to mikio and rsc for reviewing/submitting my last CL to go.exp/fsnotify.
My next CL brings the API in line with what has been discussed thus far in the doc:
http://goo.gl/MrYxyA
Exceptions:
* Add doesn't have an argument to filter Ops, mainly due to differences on Windows (and I have an alternative to propose that may work)
* I haven't figured out the changes necessary to use an Err() method instead of an Errors channel, particularly for any non-fatal errors. Very little exists for testing the error cases right now. :-(
The CL also includes some internal cleanups, mostly renaming things. I'd like to better understand how each adapter works before doing any really big changes.
I fully expect the API to change again. This is closer to what we had in mind, and was an opportunity to clean up the code a little more. Now that Event is a simple two field struct, we may be able unit test some pieces that would've been challenging before.
Earlier today I was able to pair program with a friend who knows Linux and gdb much better than me. We reproduced a bug in inotify that "conveniently" disappears when adding a breakpoint. No solution yet. I have yet to consolidate all the fsnotify bugs in the Go issue tracker. I think that will be my next task while iterating on any comments to this CL.
Nathan.