Almost two weeks gone since my last post here.
It is a hot time in the university, there are setoffs now and exams ahead. However, I have merged two big commits into my kqueue/master branch.
The first one just adds kqueue backend stub into Glib source tree, it is not so interesting, as the second one . The core functionality for file monitoring with kqueue is introduced in this merge.
Currently the following events can be monitored:
G_FILE_MONITOR_EVENT_DELETED;G_FILE_MONITOR_EVENT_ATTRIBUTE_CHANGED;G_FILE_MONITOR_EVENT_CHANGED;G_FILE_MONITOR_EVENT_MOVED.
Further plans for gio/kqueue extension:
- Implement (emulate)
G_FILE_MONITOR_EVENT_CREATEDand (if possible)G_FILE_MONITOR_EVENT_UNMOUNTED; - Implement a missing files monitoring (i.e. wait while a file will be created and then start monitoring it);
- Resolve all 20+
TODOs (pending features and improvements, doubtful solutions in the code); - Write tests and benchmarks.

Larger version , 56K
A gloomy screenshot above demonstrates what is working for now. Stay tuned!