./sysutils/watchman, Watches files and takes action when they change

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 4.7.0nb2, Package name: watchman-4.7.0nb2, Maintainer: pkgsrc-users

Watchman exists to watch files and record when they actually change.
It can also trigger actions (such as rebuilding assets) when matching
files change.

Required to run:

Required to build:

Master sites:

Filesize: 3332.467 KB

Version history: (Expand)

CVS history: (Expand)

   2023-08-14 07:25:36 by Thomas Klausner | Files touched by this commit (1247)
Log message:
*: recursive bump for Python 3.11 as new default
   2021-10-26 13:20:30 by Nia Alarie | Files touched by this commit (630)
Log message:
sysutils: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes
   2021-10-07 16:58:44 by Nia Alarie | Files touched by this commit (630)
Log message:
sysutils: Remove SHA1 hashes for distfiles
   2018-09-13 16:26:07 by Jonathan Perkin | Files touched by this commit (1)
Log message:
watchman: Don't set BROKEN for normal build issues.
   2017-08-11 18:37:04 by Niclas Rosenvik | Files touched by this commit (4)
Log message:
Install license to compy with apache version 2 license and
   2016-11-01 15:54:02 by Filip Hajny | Files touched by this commit (3) | Package updated
Log message:
Update sysutils/watchman to 4.7.0.

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
- 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
- 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
- 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
- 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
- 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.
   2016-10-29 22:14:42 by Filip Hajny | Files touched by this commit (1)
Log message:
Use proper configure arg instead of wrong subst that leaked DESTDIR.
Clean up. PKGREVISION bump.
   2015-11-04 02:32:42 by Alistair G. Crooks | Files touched by this commit (499)
Log message:
Add SHA512 digests for distfiles for sysutils category

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.