From: Nathan Youngman Date: Sat, 24 May 2014 02:30:50 +0000 (-0600) Subject: a fork to experiment on X-Git-Tag: v1.7.2~321 X-Git-Url: https://go.fuhry.dev/?a=commitdiff_plain;h=97dc3a7bad8185834fe5b83b95df5ef1c012e0f6;p=fsnotify.git a fork to experiment on --- diff --git a/.gitignore b/.gitignore index e4706a9..4cd0cba 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ # git config --global core.excludesfile ~/.gitignore_global .vagrant +*.sublime-project diff --git a/README.md b/README.md index b0e18d6..654360e 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # File system notifications for Go -[![Build Status](https://goci.herokuapp.com/project/image/github.com/howeyc/fsnotify)](http://goci.me/project/github.com/howeyc/fsnotify) [![GoDoc](https://godoc.org/github.com/howeyc/fsnotify?status.png)](http://godoc.org/github.com/howeyc/fsnotify) +[![Build Status](https://drone.io/github.com/gophertown/fsnotify/status.png)](https://drone.io/github.com/gophertown/fsnotify/latest) [![Coverage](http://gocover.io/_badge/github.com/gophertown/fsnotify)](http://gocover.io/github.com/gophertown/fsnotify) [![GoDoc](https://godoc.org/github.com/gophertown/fsnotify?status.png)](http://godoc.org/github.com/gophertown/fsnotify) Cross platform, works on: * Windows @@ -18,84 +18,4 @@ We plan to include os/fsnotify in the Go standard library with a new [API](http: * Join [golang-dev](https://groups.google.com/forum/#!forum/golang-dev) to discuss fsnotify. * See the [Contribution Guidelines](http://golang.org/doc/contribute.html) for Go and sign the CLA. -### Example: - -```go -package main - -import ( - "log" - - "github.com/howeyc/fsnotify" -) - -func main() { - watcher, err := fsnotify.NewWatcher() - if err != nil { - log.Fatal(err) - } - - done := make(chan bool) - - // Process events - go func() { - for { - select { - case ev := <-watcher.Event: - log.Println("event:", ev) - case err := <-watcher.Error: - log.Println("error:", err) - } - } - }() - - err = watcher.Watch("testDir") - if err != nil { - log.Fatal(err) - } - - <-done - - /* ... do stuff ... */ - watcher.Close() -} -``` - -For each event: -* Name -* IsCreate() -* IsDelete() -* IsModify() -* IsRename() - -### FAQ - -**When a file is moved to another directory is it still being watched?** - -No (it shouldn't be, unless you are watching where it was moved to). - -**When I watch a directory, are all subdirectories watched as well?** - -No, you must add watches for any directory you want to watch (a recursive watcher is in the works [#56][]). - -**Do I have to watch the Error and Event channels in a separate goroutine?** - -As of now, yes. Looking into making this single-thread friendly (see [#7][]) - -**Why am I receiving multiple events for the same file on OS X?** - -Spotlight indexing on OS X can result in multiple events (see [#62][]). A temporary workaround is to add your folder(s) to the *Spotlight Privacy settings* until we have a native FSEvents implementation (see [#54][]). - -**How many files can be watched at once?** - -There are OS-specific limits as to how many watches can be created: -* Linux: /proc/sys/fs/inotify/max_user_watches contains the limit, -reaching this limit results in a "no space left on device" error. -* BSD / OSX: sysctl variables "kern.maxfiles" and "kern.maxfilesperproc", reaching these limits results in a "too many open files" error. - - -[#62]: https://github.com/howeyc/fsnotify/issues/62 -[#56]: https://github.com/howeyc/fsnotify/issues/56 -[#54]: https://github.com/howeyc/fsnotify/issues/54 -[#7]: https://github.com/howeyc/fsnotify/issues/7 diff --git a/example_test.go b/example_test.go index d3130e2..f0b33a0 100644 --- a/example_test.go +++ b/example_test.go @@ -7,7 +7,7 @@ package fsnotify_test import ( "log" - "github.com/howeyc/fsnotify" + "github.com/gophertown/fsnotify" ) func ExampleNewWatcher() {