watchexec

Executes commands in response to file modifications

APACHE-2.0 License

Downloads
1.3K
Stars
5.2K
Committers
64

Bot releases are hidden (Show)

watchexec - 1.9.2: Oh no! (Reverted some changes)

Published by passcod about 6 years ago

My bad. My changes related to whitespace handling completely broke several use cases, e.g.:

  • watchexec -- 'echo foo; echo bar'

See discussion on #82.

This release reverts (comments out) those parts, but keeps everything else.

watchexec -

Published by passcod about 6 years ago

  • #74 — Watchexec no longer panics on missing folders — patch1, 2
  • #95 — Fix issues with whitespace in commands — patch2
  • #96 — Add install instructions for Arch Linux — docs
  • Create a Debian package on release — releng
  • Add install instructions for Debian — docs

1: Other changes were added following this to convert more panics into normal errors: some glob parsing errors, and file watcher initialisation errors.

2: These changes also cause a breaking changes to the library interface, but this is not considered in the version numbers (i.e. if you use it, pin it). From cursory investigation only cargo-watch is a consumer and changes there in consequence are coordinated.

watchexec -

Published by passcod about 6 years ago

First release by @passcod! This release is merging in a variety of long-waiting improvements, but is otherwise fairly conservative.

  • #77 — Better default ignore patterns for Python, Emacs, and Vim — patch
  • #89 — On Linux, statically-compiled musl builds are now provided — releng
  • #90 — WATCHEXEC_*_PATH environment variables are now accurately documented — docs
  • #91 — On Windows, watchexec can now be installed using scoop.sh — docs
  • #92 — Support OpenBSD 6.3+ — patch
  • #93 — On Linux, fallback to polling if inotify limit is reached — minor
watchexec - https://github.com/watchexec/watchexec/releases/tag/1.8.6

Published by mattgreen about 7 years ago

watchexec - https://github.com/watchexec/watchexec/releases/tag/1.8.5

Published by mattgreen about 7 years ago

watchexec - https://github.com/watchexec/watchexec/releases/tag/1.8.4

Published by mattgreen over 7 years ago

watchexec - https://github.com/watchexec/watchexec/releases/tag/1.8.3

Published by mattgreen over 7 years ago

watchexec - https://github.com/watchexec/watchexec/releases/tag/1.8.2

Published by mattgreen over 7 years ago

watchexec -

Published by mattgreen over 7 years ago

  • Behavior change: removes the default ./.* ignore pattern, as it was often surprising and usually not needed with .gitignore handling.
  • Add --no-default-ignore to explicitly disable all default ignores (@akerl)
  • Restructured slightly to support being used as a library within other utilities (@passcod). Right now, this is mostly for cargo watch.
watchexec -

Published by mattgreen over 7 years ago

  • POSIX: Add --signal option to specify signal to send to child process (@chr4)
  • Add --no-shell option to exec() child process directly, instead of going through sh/cmd.exe (@chr4)
  • Requires Rust 1.15 for building/Cargo installation
watchexec -

Published by mattgreen over 7 years ago

  • Add -w/--watch option back to manually specify directories to watch. This is useful for cutting down on file descriptors used when watching deeply nested directory structures on Linux.
  • Load .gitignore files from all watched directories, and then search upwards in the directory hierarchy for any additional ones that need to be loaded. When watching multiple directories with a common parent, .gitignore files will only be loaded once.
  • Test all .gitignore files found for each notification from the outside in.
watchexec -

Published by mattgreen almost 8 years ago

  • Unix: reap children upon receipt of SIGCHLD
  • Add -k option for sending SIGKILL to child processes
watchexec -

Published by mattgreen almost 8 years ago

  • Unix: Add -k option to send SIGKILL to child processes
  • Unix: propagate SIGTSTP/SIGCONT signals (used when you hit control-z in your shell for job control)
watchexec -

Published by mattgreen almost 8 years ago

  • Drop --watch option, as it has confusing semantics around where to find .gitignore files. If you need it, file an issue.
  • POSIX-based OSes: wait for all child processes to exit before running command
  • Remove all features requiring nightly Rust builds
  • Build size optimizations
watchexec -

Published by mattgreen almost 8 years ago

  • Fix infinite loop when no .gitignore file found
  • Optimize filter matching
  • Upgrade to notify 3
watchexec - 1.3.0

Published by mattgreen almost 8 years ago

Automatically deployed release

watchexec - https://github.com/watchexec/watchexec/releases/tag/1.2.3

Published by mattgreen almost 8 years ago

watchexec -

Published by mattgreen almost 8 years ago

  • When waiting for all file system changes, de-dupe paths. This significantly reduces CPU for Linux users, as inotify sends a lot of notifications
watchexec - 1.2.1

Published by mattgreen almost 8 years ago

  • Windows: launch child processes in a new job object, letting us kill all subprocesses
watchexec - 1.2.0

Published by mattgreen almost 8 years ago

  • Add --run-initially flag
  • Search for .gitignore files in parent dirs
  • Set $WATCHEXEC_UPDATED_PATH to the first updated path
  • Add --force-poll option
  • macOS/Linux/BSD: launch child processes in their own process group