Cargo Watch Versions Save

Watches over your Cargo project's source.

v8.1.1

2 years ago
  • Releng: Experimental: RPM packages are now available. These are built from the same binaries in the tarballs and DEB packages, so may not work properly for distros due to glibc versions or whatever. Untested as I don’t run RPM-based distros, tell me how it goes.
  • CI: Cross build targets + FreeBSD are now checked.
  • Workaround: -N / desktop notifications are disabled on FreeBSD (#184)

v8.1.0

2 years ago

Yanked from crates.io on 2022-01-22

  • New: the -B option injects RUST_BACKTRACE into the environment, which is a fairly common thing to do when catching panics. Use like: cargo watch -B1 -x run (tweet)
  • Fix: quoting issues with Zsh (#183)
  • Metadata: The rust-version field is now used in the Cargo.toml. This will generate a warning when compiling until rustc 1.56.
  • Releng: this is the first release with native Apple M1 binaries!

v8.0.0

2 years ago

Never released to crates.io

  • Breaking change: #177 the order of -x and -s is now respected. (This never actually happened. The code was not merged.)

    Example: cargo watch -s 'echo before' -x test -s 'echo after' Before: would run cargo test && echo before && echo after. Now: runs echo before && cargo test && echo after.

  • Experimental: --notify/-N flag sends a desktop notification when a change is observed (which may or may not trigger a command restart). While objectively the better behaviour would be to notify on command finish and vary the notification on exit status, we just can't do that at the moment with the current architecture.

v7.8.1

2 years ago
  • New: there’s now a website. Some of it is still being drafted, notably dedicated general documentation for this tool, but there’s already some specific documentation that’s been brought over and rewritten/improved, such as the inotify limitations and the glob patterns pages. Eventually a lot of the documentation that’s in the readme will be moved there, so the readme can become a much leaner page with only the important bits, and the information moved over will have a lot more space to really shine.
  • Meta: moved to the watchexec github organisation. As well as bringing these very related projects together under one umbrella, this should make the maintaining relationship much clearer. As a bonus, that enables Github’s tooling to move issues to a different repo.
  • Deps: updated to watchexec 1.16.1, which pins the globset crate to version 0.4.6. While not a good long-term fix, this fixes issues installing via cargo install cargo-watch yielding buggy (#176) builds without --locked.
  • Releng: in 7.8.0, binary release builds got checksums and signatures, but generated a combined CHECKSUMS file with both SHA512 and BLAKE3 checksums, which causes warnings to be emitted when checking with the sha512sum or b3sum tools, as well as being a bit ambiguous. In this release, checksums go in separate files, one for each checksum algorithm; these files are also signed separately. I also retroactively fixed that in the 7.8.0 release. The release download list on GitHub is becoming quite long! The one on the website is a lot easier to use.
  • Packagers: if you’re reading these notes:
    • The website now has a JSON metadata file for every release and the latest, and that’s probably easier to parse than fighting it out with the API and the filenames. It also has the release notes and the checksums in nicely machine readable locations if you’re into that.
    • The archive format for tarballs will change to ZStandard (.tar.zst) at some point in the future, probably around version 8.

v7.8.0

3 years ago
  • #172 Restore and document the behaviour where the directory is changed to the project/crate root by default, not the workspace root, as introduced by 7.7.1
  • New: -C/--workdir option to change the working directory to a custom location. Note that this will behave very strangely in combination with other path options (like -w/--watch) until real support is added upstream, cf watchexec/watchexec#188.
  • New: logo.
  • New: Windows ARM builds.
  • New: checksums and release signing.

v7.7.2

3 years ago

v7.7.1

3 years ago
  • Use cargo metadata crate to replace cargo root finding logic
  • Update insta test helper to maybe help on the cross-platform front (#170)
  • Include module path in debug logging
  • Update other deps
  • Remove dependence on an empty tests/touchdata directory for tests to pass
  • Run tests in CI again (on Linux)
  • Be a little more flexible on the version of watchexec (not quite semver yet!)

v7.7.0

3 years ago
  • Issue policy change / clarification: if an issue is a watchexec issue, it should go there, and issues opened here that ultimately are upstream issues will get moved/closed.
  • Upgrade to watchexec 1.15.
    • Add --shell option
    • Add --why switch
  • Add a manpage (cargo-watch in section 1)
  • Add Zsh completions (try them out and tell me if they work well!)

v7.6.1

3 years ago
  • #167 — add escaping to trailing command

v7.6.0

3 years ago
  • #97 We now support the cargo watch -- command... syntax style. That should make it a little more intuitive to those used to comparable unix tools.
  • GNU builds on Windows have been dropped
  • ARM v7 (hf) and v8 (aarch64) binaries are now available
  • DEBs are now available for both amd64 gnu and musl (if that's useful in some way), and for ARM builds
  • Builds are done on Github Actions (and are super fast! :rocket:)
  • MSRV has been bumped to 1.51.0 (not a breaking change as per policy)