watchdog-gevent
A gevent-based observer for watchdog.
What it is and what it does
watchdog-gevent bridges the watchdog file-monitoring library with gevent's lightweight concurrency primitives. It provides a GeventObserver that watches the file system for changes (creation, deletion, modification) and dispatches events using gevent greenlets instead of threads, making it suitable for I/O-bound applications that already use gevent for async operations.
The package is a thin adapter layer: you define event handlers using watchdog's standard FileSystemEventHandler interface, then schedule them with GeventObserver instead of the default ThreadedObserver. This is useful when you want file monitoring to cooperate with gevent's event loop rather than spawn OS threads. However, the project is dormant (last release 664 days ago), so compatibility with recent versions of its dependencies is uncertain.
Use it for:
- Monitor configuration files in a gevent-based web service and reload settings when they change without blocking other greenlets.
- Watch a directory for new log files in a gevent application and process them concurrently using greenlets.
- Track file system events in a real-time data pipeline built on gevent, triggering downstream tasks on file arrival.
- Implement file-based triggers in a gevent async framework where thread-based observers would add unnecessary overhead.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides a gevent-based file system event observer that integrates watchdog's file monitoring with gevent's lightweight concurrency model.
Yes, if you are already committed to gevent and need file system monitoring—the low install friction and lack of known vulnerabilities make it safe to try. However, verify the license first and test compatibility with your versions of gevent and watchdog, since the package is dormant and may not work with recent releases of its dependencies. If you need active maintenance or support, consider using watchdog's standard ThreadedObserver or evaluating alternatives.
Install
watchdog-gevent on PyPI
pip
pip install watchdog-geventuv
uv add watchdog-geventpoetry
poetry add watchdog-geventInstalling watchdog-gevent
Before you install
Low install friction with just two runtime dependencies (gevent and watchdog). However, the package is dormant—last release was 664 days ago—so maintenance is not active and any issues are unlikely to receive timely fixes.
License in practice
License status is unclear; no SPDX identifier or raw license text is available in the metadata. Verify the actual license before use in proprietary or copyleft-sensitive projects.
Quickstart
pip install watchdog-gevent
from watchdog_gevent import GeventObserver
from watchdog.events import FileSystemEventHandler
class Handler(FileSystemEventHandler):
def on_modified(self, event):
print(f'File modified: {event.src_path}')
observer = GeventObserver()
observer.schedule(Handler(), path='.', recursive=True)
observer.start()
Requires gevent and watchdog to be installed; gevent may require a C compiler on some platforms.
Verify before relying
- Exact license under which watchdog-gevent is distributed (critical for compliance decisions).
- Whether the package works with current versions of gevent and watchdog, given the 664-day gap since last release.
- Python version compatibility (requires_python is unspecified in metadata).
Package facts
| License | not declared (unclear) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — gevent, watchdog |
| Maintenance | dormant — 664 days since the last release |
| First released | |
| Downloads | 790,826/month — #5,049 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: watchdog_gevent-0.2.1-py3-none-any.whl
Tags
More Monitoring packages
Wraps any iterable to display a real-time…
copyleft · top 100 on PyPI
opentelemetry-semantic-conventionsProvides generated Python code for…
permissive · top 100 on PyPI
opentelemetry-sdkProvides the reference implementation of the…
permissive · top 100 on PyPI
opentelemetry-apiProvides the abstract API and interfaces for…
permissive · top 100 on PyPI
opentelemetry-exporter-otlp-proto-httpExports OpenTelemetry observability data to an…
permissive · top 1,000 on PyPI
opentelemetry-instrumentationProvides automatic instrumentation commands and…
permissive · top 1,000 on PyPI
watchdogWatchdog monitors file system events across…
permissive · top 1,000 on PyPI
geventgevent provides lightweight concurrent…
permissive · top 1,000 on PyPI
locust-cloudLocust Cloud is a client library for running…
permissive · top 5,000 on PyPI
geventhttpclientA concurrent HTTP client for gevent that…
permissive · top 5,000 on PyPI
websocketProvides WebSocket protocol support for…
permissive · top 15,000 on PyPI
grequestsGRequests wraps the requests library with…
permissive · top 15,000 on PyPI
django-db-geventpoolProvides a gevent-based connection pool for…
permissive · top 15,000 on PyPI
gevent-websocketProvides WebSocket support for gevent-based…
unclear · top 5,000 on PyPI
pyobjc-framework-FSEventsProvides Python bindings to macOS's FSEvents…
permissive · top 15,000 on PyPI
psycogreenIntegrates psycopg2 with coroutine libraries…
permissive · top 5,000 on PyPI