Low level interface to FSEvents primitives
Project description
Introduction
pyfsevents is a C extension providing a Python interface for Mac OS X 10.5 and later which allows monitoring for file system events, using FSEvents.
pyfsevents uses a callback mechanism: see Module Documentation.
Installation
python setup.py install
License
Distributed under the terms of the MIT License.
Requirements
Mac OS X >= 10.5 Leopard
Limitations
Thread-unsafe: CFRunLoop’s and Python threads do not quite interact well when put together :)
Module Documentation
pyfsevents uses a callback mechanism.
It provides two functions:
registerfd(fd, callback[, mask])
registerpath(path, callback)
to register objects to monitor.
After registration, listen() should be called to wait for events. The call is blocking: callbacks are fired on events.
stop() is available to stop the listen() call. stop() should be called from a different thread.
Please see examples/ for use cases of the extension.
callback signatures
The callback arguments passed to register* functions will be fired on events. These callback functions should be functions callable with two arguments, as listen will call these functions with two arguments:
For File descriptors, registerfd callbacks will be passed (fd, mask) arguments:
- fd
file descriptor which changed and fired the callback.
- mask
the POLLIN / POLLOUT mask, similar to the select.poll module.
For FSEvents, registerpath callbacks will be passed (path, recursive) arguments:
- path
the path where the event occurred.
- recursive
a boolean: if True, the caller should check recursively the directory tree for changes, and not only the specified directory.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file pyfsevents-0.1.tar.gz
.
File metadata
- Download URL: pyfsevents-0.1.tar.gz
- Upload date:
- Size: 12.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 62756435bb3e9951a19cafff31929623b09ba42937314ca98137bc3545289ead |
|
MD5 | edadbf0670ff96077fc05196817084e3 |
|
BLAKE2b-256 | 224b7f3005f807d7f9149b811f3d9ce88763a639dc39b25e9a5d5744767a4f21 |