watcher icon indicating copy to clipboard operation
watcher copied to clipboard

Detect size only change

Open tul opened this issue 5 years ago • 1 comments

This PR builds on #94

Sometimes the watcher would not detect file changes if successive changes to a file happened very quickly, specifically within the min resolution that the underlying file system could represent for mod time stamps. In my case, I was testing on a file system which had 1 second mod time stamp resolution. If I edited a file twice in 1 second, then the second write event was lost.

This was principally visible in some unit tests where a series of quick modifications to files happened to occur, but it could happen in real situations also I guess, hence this fix.

The fix simply emits a Write event if the mod time changes OR if the size changes.

tul avatar Feb 07 '20 23:02 tul

Note, although this PR builds on #94, it only needs it because the unit test uses ScanNow(). If you want to take this without #94 that is possible, but you'll have to just take the change to watcher.go and leave the tests behind.

tul avatar Feb 07 '20 23:02 tul