Starting with Mercurial version 0.9.2 there is a file .hg/requires which specifies the capabilities needed by a client to access this repository. It is a text file, where each line contains the name of a capability and optionally (separated by a = character from the name) a list of parameters, each separated by a comma (,).
Currently there are only capabilities which don't need parameters.
Capabilities
store
The directory .hg/store contains the subdirectories data (see CaseFoldingPlan)
revlogv1
RevlogNG is used.
fncache
Revlog data files are named to work around Windows limitations. (see fncacheRepoFormat)
See also: CompatibilityRules