watchexec-simple

Crates.iowatchexec-simple
lib.rswatchexec-simple
version0.2.0
sourcesrc
created_at2022-05-26 16:10:02.697532
updated_at2023-10-24 17:36:29.740012
descriptionAn alternative to watchexec
homepage
repository
max_upload_size
id594218
size48,129
Kurt Wolf (kurtbuilds)

documentation

README

Usage

watchexec-simple is a simpler alternative for the existing watchexec project. It doesn't implement nearly all the features that the full watchexec project provides. However, it provides the core functionality in a codebase that is much smaller (at last count, 5%). It is built on the same notify library, itself built by the same authors as watchexec. watchexec-simple installs to the same binary name as the watchexec project.

Here is a simple example of using watchexec-simple:

watchexec -- cargo run

Comparison to watchexec

When possible, watchexec-simple relies on the same option names as watchexec. The key differences are:

  1. For watchexec-simple, positional arguments are watched paths, and -- is required and used to separate the command. For watchexec, positional arguments are the command, and each path requires a -w to be passed in. For example:
# watchexec-simple
watchexec src/ data/ .env -- cargo run

# watchexec
watchexec -w src/ -w data/ -w .env cargo run
  1. By default, watchexec-simple restarts the process, even if it is actively running. For watchexec, the user is required to pass the -r option. Example:
# watchexec-simple
watchexec -- cargo run

# watchexec
watchexec -r cargo run
  1. watchexec-simple does not run the command in a shell. If you want a shell, use something like: watchexec -- /bin/bash -c 'command'. By default, watchexec runs all commands in a shell.

Installation

Not currently published to cargo. Git clone it and then install from local.

git clone https://github.com/kurtbuilds/watchexec-simple
cd watchexec-simple
cargo install --path .
Commit count: 0

cargo fmt