logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

watchfiles - Simple, modern and high performance file watching

Arguments

target  Command or dotted function path to run
       paths   Filesystem paths to watch, defaults to current directory

Author

       Louis-Philippe Véronneau

                                                      2024                                         WATCHFILES(1)

Bugs

       Bugs    can    be    reported    to    your    distribution's    bug    tracker    or     upstream     at
       <https://github.com/samuelcolvin/watchfiles/issues>

Description

watchfiles  watches  one  or more directories and executes either a Shell command or a Python function on
       file changes.

Examples

       Watching the current directory and calling a Python function:
          $ watchfiles foobar.main

       Watching Python files in two local directories and calling a Shell command:
          $ watchfiles --filter python 'pytest --lf' src tests

Name

       watchfiles - Simple, modern and high performance file watching

Options

-h | --help
         Show this help message and exit

       --ignore-paths<IGNORE_PATHS>
         Specify directories to ignore, to ignore multiple paths use a comma as
         separator, e.g. "env" or "env,node_modules"

       --target-type (command | function | auto)
         Whether the target should be intercepted as a shell command or a Python
         function, defaults to "auto" which infers the target type from the target
         string

       --filter<FILTER>
         Which files to watch, defaults to "default" which uses the
         "DefaultFilter", "python" uses the "PythonFilter", "all" uses no filter,
         any other value is interpreted as a Python function/class path which is
         imported

       --args<ARGS>
         Arguments to set on sys.argv before calling target function, used only if
         the target is a function

       --verbose
         Set log level to "debug", wins over --verbosity--non-recursive
         Do not watch for changes in sub-directories recursively

       --verbosity (warning | info | debug)
         Log level, defaults to "info"

       --sigint-timeout<SIGINT_TIMEOUT>
         How long to wait for the sigint timeout before sending sigkill.

       --grace-period<GRACE_PERIOD>
         Number of seconds after the process is started before watching for
         changes.

       --sigkill-timeout<SIGKILL_TIMEOUT>
         How long to wait for the sigkill timeout before issuing a timeout
         exception.

       --ignore-permission-denied
         Ignore permission denied errors while watching files and directories.

       -V | --version
         Show program's version number and exit

Synopsis

       watchfiles  [--ignore-paths<IGNORE_PATHS>]  [--target-type  (command  |  function  |  auto)]  [--filter<FILTER>]  [--args<ARGS>]  [--verbose]  [--non-recursive]  [--verbosity  (warning  |  info  |   debug)]
       [--sigint-timeout<SIGINT_TIMEOUT>] [--grace-period<GRACE_PERIOD>] [--sigkill-timeout<SIGKILL_TIMEOUT>]
       [--ignore-permission-denied] target [paths ...]

       watchfiles (-h | --help)
       watchfiles (-V | --version)

See Also