# Cargo Watch 4.0.0

## Release notes

Breaking changes:

• The command is now run immediately, instead of waiting for changes first (#37)
• New CLI usage. The simple invocation hasn't changed, but everything else has.
• You now have to use -x <cmd> to run custom cargo commands (multiple times as needed).

New features:

• Watch everything: the entire project is watched, but the target/ folder is ignored by default. (#31, #35, #39)
• You can decide to instead watch specific folders with -w <folder> (multiple times as needed).
• Gitignore support: .gitignore files are found and parsed recursively through the repo. This can be disabled with --no-gitignore.
• Custom ignore rules can be specified with -i <pattern> (multiple times as needed).
• If you absolutely need to, you can explicitly require that no ignoring is applied: --ignore-nothing.
• You can suppress all of cargo-watch's output with -q, leaving only the output from the commands.
• You can run arbitrary commands with -s <cmd> (for --shell) (multiple times as needed).
• You can customise the debouncing delay with --delay or -d, in seconds.

Features from 3.2.0 (which was just a few days ago so might be shadowed by this release):

• You can force cargo-watch to use polling instead of the native API with --poll.
• It will automatically fallback to polling if the native API fails to start.
• You can clear the screen between runs with --clear or -c.

Server development (#25) is still not quite supported, but is expected to make it in soon in a point release.