{"categories":[{"label":"Monitoring","url":"https://skillfed.io/packages/category/system-monitoring/3"}],"enrichment":{"capability":"Wraps Linux kernel inotify to watch directories for file system events, yielding them as a generator rather than requiring polling.","skillfed_tags":["linux-only","file-watching","copyleft"],"use_cases":["Monitor a directory for file uploads or changes and trigger processing pipelines when new files arrive.","Watch a configuration directory and reload application settings when files are modified.","Implement a recursive directory watcher to track all file system events in a project tree for backup or sync tools.","Build a file-system-driven event loop where inotify events drive application logic rather than a timer.","Detect when log files are rotated or new logs appear and react without polling."],"what_it_does":"inotify is a Python adapter to the Linux kernel's inotify subsystem, which lets you register directories and receive notifications when files or subdirectories change, create, or delete. Instead of polling directories repeatedly, your code blocks and waits for kernel events, making it far more efficient for file-watching tasks. The library presents events as a generator\u2014you loop through them one at a time, with optional timeouts between cycles, and can optionally receive None values to perform other work between event batches.\n\nThe package supports both flat directory watching (via Inotify) and recursive tree watching (via InotifyTree), which automatically manages watches on child directories as they are created. It uses epoll internally to audit kernel events and has been designed to handle Python 3 string/bytes conversions transparently. The library is Linux-only and requires kernel version 2.6 or later.","worth_installing":"Yes, if your application runs on Linux and needs efficient file-system event monitoring. The low install friction, lack of known vulnerabilities, and straightforward generator-based API make it a solid choice for the task. The GPL 2 copyleft license is a hard blocker for proprietary software; open-source projects under compatible licenses should evaluate the aging maintenance status (403 days since last release) and confirm Python version compatibility before committing."},"id":"inotify","links":{"html":"https://skillfed.io/packages/inotify","md":"https://skillfed.io/packages/inotify.md","pypi":"https://pypi.org/project/inotify/"},"maintenance":{"status":"aging"},"meta":{"latest_release":"2025-07-07","license_spdx":null,"license_treatment":"copyleft","name":"inotify","python_support":"unspecified","summary":"An adapter to Linux kernel support for inotify directory-watching."},"popularity":{"monthly_downloads":393132,"position":7000,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.2.12"}
