Bump the embedded watcher version and re-vendor all four platform
binaries (checksums verified on download). 0.14.5 is event-correctness /
de-duplication work over 0.13.8 (macOS FSEvents create-event dedup,
Linux inotify rename-association and duplicate-create fixes), including a
fix for a regression 0.13.8 itself introduced (upstream #105 via #89).
The CLI invocation and stdout JSON event format are unchanged between
the two versions, so no parser or test changes are needed; the doctor
spec already masks the version line.
Also document watch mode's create/modify effect-type filter and why a
bare mtime 'touch' does not trigger a run.
Verified on macOS (arm64) and Linux (arm64, via Docker): doctor reports
0.14.5, full suite green, and 'plur watch' re-runs on content edits.
Bumps the embedded e-dant/watcher from
0.13.8to0.14.5and re-vendors all four platform binaries.Why
0.14.5is event-correctness / de-duplication work over0.13.8:0.13.8itself introduced (upstream fix(minitest): stop discarding stdout written by the tests themselves #105 via Explicit color options: --color=auto|always|never #89), so this is strictly more correct than what we shippedNet effect for plur: fewer or equal file events, never a new field or event type.
What changed
lib/plur/config.rb—edant_watcher_version0.13.8->0.14.5(single source of truth)embedded/watcher/*— all 4 platform binaries re-vendored viarake vendor:clean+rake vendor:download:all(checksums verified on download)docs/features/watch-mode.md— document thecreate/modifyeffect-type filter and why a bare mtimetouchdoes not trigger a runNo parser or test changes: the CLI invocation and stdout JSON event format (
path_type,path_name,effect_type,associated) are unchanged between the two versions, and the doctor spec already masks the version line.Verification
plur doctorreports0.14.5;bin/rakefull suite green (0 failures); raw binary emits the expected JSON.watcher-aarch64-unknown-linux-gnu, doctor reports0.14.5, rspec/minitest/mixed fixtures + a real external gem pass, andplur watchre-runs on a content edit (and correctly ignores a baretouch).Draft pending cross-platform CI (the Linux/Windows binaries can't be smoke-tested locally beyond the arm64 Docker run).