website/docs/compatibility.md
watchman has been used in production since a few weeks after it was first
written, and thus it has always made an effort to be backward compatible across
releases and platforms.
watchman does not follow semantic versioning!
Since 3.8.
watchman introduces capabilities to describe new or
optional features. You can use the expanded version command
to query capabilities and avoid building knowledge of version numbers in your
client application(s).
Since May 2020
Watchman is continuously deployed inside Facebook, which means that we don't explicitly maintain version numbers. For a while we maintained version numbers for GitHub releases but found it to be too much overhead.
Starting in 2020 we've set up automation to cut a weekly date based on the date; this more closely matches our internal processes than manually managing version numbers.
You'll notice that both the
tags on GitHub and the version
reported by watchman version are date based.