Watchman 4.7.0 (2016-09-10)
- Reduced memory usage by 40%
- Queries can now run with a shared lock.
- Added new glob generator as a walking strategy for queries.
- Added "case_sensitive": true option to queries to force matches to happen
in a case sensitive manner, even if the watched root is on a case
insensitive filesystem.
- Fixed a race condition during subscription initiation that could emit
incorrect clock values.
- Fixed spurious over-notification for parent directories of changed files
on Mac.
- Fixed some reliability issues on Windows
Watchman 4.6.0 (2016-07-09)
- Improved I/O scheduling when processing recursive deletes and deep
directory rename operations.
- Improved performance of the ignore_dirs configuration option on macOS and
Windows systems.
- Added an optional recrawl recovery strategy for macOS that will attempt to
resync from the fseventsd journal rather than performing a full filesystem
walk.
- Fixed accidental exponential time complexity issue with recursive deletes
and deep directory rename operations on case-insensitive filesystems (such
as macOS).
- Added support for allowing non-owner access to a Watchman instance.
- Added support for inetd-style socket activation of the watchman service.
- Added the symlink_target field to the stored metadata for files.
- Fixed an issue where watchman may not reap child processes spawned by
triggers.
- Fixed an issue where watchman may block forever during shutdown if there
are other connected clients.
- Added hint_num_dirs configuration option.
Watchman 4.5.0 (2016-02-18)
- Fixed an inotify race condition for non-atomic directory replacements that
was introduced in Watchman 4.4.
Watchman 4.4.0 (2016-02-02)
- Added state-enter and state-leave commands can allow subscribers to more
intelligently settle/coalesce events around hg update or builds.
- Fixed an issue where subscriptions could double-notify for the same
events.
- Fixed an issue where subscriptions that never match any files add
O(all-observed-files) CPU cost to every subscription dispatch
Watchman 4.3.0 (2015-12-14)
- Improved handling of case insensitive renames; halved the memory usage and
doubled crawl speed on OS X.
Watchman 4.2.0 (2015-12-08)
- Increased strictness of checks for symlinks; rather than just checking
whether the leaf of a directory tree is a symlink, we now check each
component down from the root of the watch.
- Increased priority of the watchman process on OS X.
Watchman 4.1.0 (2015-10-20)
- Fixed an issue where symlink size was always reported as 0 on OS X using
the new bulkstat functionality
Watchman 4.0.0 (2015-10-19)
- Fixed an issue where a directory that was replaced by a symlink would
cause a symlink traversal instead of correctly updating the type of the
node and marking the children removed.
- Fixed a debugging log line that was emitted at the wrong log level on
every directory traversal.
Watchman 3.9.0 (2015-10-12)
- Fixed an issue where dir renames on OS X could cause us to lose track of
the files inside the renamed dir
- Fixed an issue where dir deletes and replacements on Linux could cause us
to lose track of the files inside the replaced dir (similar to the OS X
issue above in manifestation, but a different root cause).
- Improved (re)crawl speed for dirs with more than a couple of entries on
average (improvement can be up to 5x for dirs with up to 64 entries on
average).
- Improved (re)crawl speed on OS X 10.10 and later by using getattrlistbulk.
- Add optional sync_timeout to the clock command
- Avoid accidentally passing descriptors other than the stdio streams when
we spawn the watchman service.
- Fixed a race condition where we could start two sets of watcher threads
for the same dir if two clients issue a watch or watch-project at the same
time
- Added a helpful error for a tmux + launchd issue on OS X
Watchman 3.8.0 (2015-09-14)
- Improved latency of processing kernel notifications.
- Improved idle behavior.
- Improved inotify move tracking.
- Hardened statedir and permissions.
- Fixed a possible deadlock in the idle watch reaper
- Fixed an issue where the watchman -p log-level debug could drop log
notifications in the CLI
- Disabled the IO-throttling-during-crawl that we added in 3.7. It proved to
be more harmful than beneficial.
- -j CLI option now accepts either JSON or BSER encoded command on stdin
- Added capabilities to the server, and added the capabilityCheck method to
the python and node clients.
Watchman 3.7.0 (2015-08-05)
- Fixed bug where query match on foo*.java with wholename scope would
incorrectly match foo/bar/baz.java.
- Added src/**/*.java recursive glob pattern support to query match.
- Added options dictionary to query's match operator.
- Added includedotfiles option to query match to include files whose names
start with ..
- Added noescape option to query match to make \ match literal \.
- We'll now automatically age out and stop watches.
- watch-project will now try harder to re-use an existing watch and avoid
creating an overlapping watch.
- Reduce I/O priority during crawling on systems that support this
- Fixed issue with the long long data type in the python BSER module
Watchman 3.5.0 (2015-06-29)
- Fix the version number reported by watchman.
Watchman 3.4.0 (2015-06-29)
- trigger now supports an optional relative_root argument.
Watchman 3.3.0 (2015-06-22)
- query and subscribe now support an optional relative_root argument.
Problems found with existing digests:
Package memconf distfile memconf-2.16/memconf.gz
b6f4b736cac388dddc5070670351cf7262aba048 [recorded]
95748686a5ad8144232f4d4abc9bf052721a196f [calculated]
Problems found locating distfiles:
Package dc-tools: missing distfile dc-tools/abs0-dc-burn-netbsd-1.5-0-gae55ec9
Package ipw-firmware: missing distfile ipw2100-fw-1.2.tgz
Package iwi-firmware: missing distfile ipw2200-fw-2.3.tgz
Package nvnet: missing distfile nvnet-netbsd-src-20050620.tgz
Package syslog-ng: missing distfile syslog-ng-3.7.2.tar.gz
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
- Convert to MASTER_SITE_GITHUB, thanks tnn
- Add SUBST to set VARBASE for WATCHMAN_STATE_DIR
(upstream)
- Update 3.0.0 to 3.1
.. ChangeLog doesn't seem to be available
Watchman exists to watch files and record when they actually change.
It can also trigger actions (such as rebuilding assets) when matching
files change.