summaryrefslogtreecommitdiff
path: root/Utility/Kqueue.hs
Commit message (Collapse)AuthorAge
* let's put type modules under the parent module, not in a Types directoryGravatar Joey Hess2013-03-10
|
* kqueue: Fix bug that made broken symlinks not be noticed.Gravatar Joey Hess2012-12-14
|
* finished where indentation changesGravatar Joey Hess2012-12-13
|
* kqueue bugfix: apply pruner to changed filesGravatar Joey Hess2012-09-28
| | | | | It already applied the pruner when traversing directories, so .git is excluded, but .gitignore was not. Now it is.
* use safe FFI importsGravatar Joey Hess2012-07-20
| | | | | This avoids blocking all threads when calling waitchange_kqueue, which blocks.
* cleanupGravatar Joey Hess2012-07-17
|
* bugfixGravatar Joey Hess2012-07-17
|
* kqueue: properly call delHook for file deletion, not delDirHookGravatar Joey Hess2012-07-17
|
* robustness fixGravatar Joey Hess2012-07-17
| | | | Don't fall over symlinks, and avoid crashing if the file goes away.
* cleanupGravatar Joey Hess2012-07-17
|
* add inodes to kqueue's directory cacheGravatar Joey Hess2012-07-17
| | | | | | | | | | This is necessary to generate events when a file is deleted and immediately replaced. Otherwise, the cache will have the old file, and so no event would be generated. Use of getFileStatus is suboptimal, it would be faster to use the inode returned by readdir -- but getDirectoryContents does not expose it, so I'd have to copy and modify a lot of low-level code.
* kqueue synthetic add events on startupGravatar Joey Hess2012-06-19
|
* kqueue recursive directory addingGravatar Joey Hess2012-06-19
|
* fix schedulingGravatar Joey Hess2012-06-19
| | | | Handle kevent interruptions in the haskell code, so it can yield to other threads
* kqueue build fixGravatar Joey Hess2012-06-19
| | | | new event dispatch seems a bit broken though
* lifted out the kqueue and inotify to a generic DirWatcher interfaceGravatar Joey Hess2012-06-18
| | | | | Kqueue code for dispatching events is not tested and probably doesn't build.
* robustness fixesGravatar Joey Hess2012-06-19
|
* update kqueue when new directories are addedGravatar Joey Hess2012-06-18
|
* kqueue: add directory content tracking, and change determinationGravatar Joey Hess2012-06-18
| | | | | | | | | | | | | | This *may* now return Add or Delete Changes as appropriate. All I know for sure is that it compiles. I had hoped to avoid maintaining my own state about the content of the directory tree, and rely on git to check what was changed. But I can't; I need to know about new and deleted subdirectories to add them to the watch list, and git doesn't deal with (empty) directories. So, wrote all the code to scan directories, remember their past contents, compare with current contents, generate appropriate Change events, and update bookkeeping info appropriately.
* close fdsGravatar Joey Hess2012-06-18
|
* kqueue code compiles on debian kfreebsdGravatar Joey Hess2012-06-18
|
* flesh out kqueue libraryGravatar Joey Hess2012-06-18
| | | | | Have not tried to build this yet. But barring minor mistakes, I think it's good.
* add some utility functions for laterGravatar Joey Hess2012-06-18
| | | | Will need to update the DirMap to add or remove subdirs.
* recurse dirTree and open the directories for kqueue to watchGravatar Joey Hess2012-06-18
|
* skeleton C library for calling kqueueGravatar Joey Hess2012-06-18