Overview

watcher is a low-level C extension for receiving file system updates using the ReadDirectoryChangesW API on Windows systems.:

import watcher
w = watcher.Watcher(dir, callback)
w.flags = watcher.FILE_NOTIFY_CHANGE_FILE_NAME
w.start()

The package also includes a high-level interface to emulate most of the .NET FileSystemWatcher API. The callback adding and removing mirrors how the same would be done on IronPython. Additionally, enabling and disabling of the callbacks is the same.:

import FileSystemWatcher
fsw = FileSystemWatcher("somedir")
fsw.NotifyFilter = FileSystemWatcher.NotifyFilters.FileName
fsw.Created += your_callback
fsw.EnableRaisingEvents = True

The project is still in progress. Development occurs at https://bitbucket.org/briancurtin/watcher.

Changes

0.2

  • Support for Python 2 (only tested with 2.7). It probably works with older versions as well.
  • Support for bytes paths on Python 3.

0.1

  • Initial release, Python 3 only.