Cross platform library for file change notification.


Version on this page:0.2.1
LTS Haskell 21.13:
Stackage Nightly 2023-09-30:
Latest on Hackage:

See all snapshots fsnotify appears in

BSD-3-Clause licensed by Mark Dittmer
This version can be pinned in stack with:fsnotify-0.2.1@sha256:8e2b58c3767c5286eedd4fcdaaa5da7a2b6910630963f998814d341eea5faf07,2702

Module documentation for 0.2.1


Unified Haskell interface for basic file system notifications.

This is a library. There are executables built on top of it.



compile with -fthreaded



Version 0.2

Use filepath instead of deprecated system-filepath


  • Fix the tests


  • Restore compatibility with GHC 7.4
  • Fix a bug in treeExtAny, which previously work identically to treeExtExists
  • Improve documentation


Include CHANGELOG.md and README.md in the source distribution.

Version 0.1

  • Allow to stop a listening job. Note this changes the return type of watching functions from () to IO ().
  • Previously, some care was taken to prevent multiple callbacks from running simultaneously. It is now the user’s responsibility. See #43 for details.
  • Previously, paths returned to callbacks were relative on Windows. Now they are absolute, like on the other platforms.
  • The WatchConfig type has changed. Previously, it only specified debouncing parameters. Now it also contains polling parameters.
  • The isPollingManager function is added to determine, at runtime, whether the polling implementation is used.