Built from main at 1d902a0 on 2026-11-14

Data

The formats a project's data and configuration are written in: JSON (.json, .jsonc), TOML (.toml), YAML (.yaml, .yml) and XML (.xml, .xsd, .xsl, .xslt). A format, not a language: it has no toolchain, tests, coverage or dependencies, so none of those checks applies, and its files make no language the project's (a C++ project with a workflow file is not a YAML project; --map lists formats beside languages). What is asked of a format is hygiene.

Data files are recognised in the project and in its configuration directories (.github, .gitlab, .circleci, .buildkite, .devcontainer, .vscode), where a language's sources are not: a CI workflow is judged as the YAML it is. Vendored files (third_party/, vendor/) are not read.

data-wellformed

Every file parses, judged per format in each unit of the project whose files are in it. JSON that tools read with comments (*.jsonc, tsconfig*.json, jsconfig.json, devcontainer.json, .vscode/*.json) may have comments and trailing commas; YAML tags of any tool (GitLab's !reference) are accepted; XML external entities are never read; JSON nested deeper than Python recurses is read without recursion. Files over 5 MiB are not parsed, and said so. A test suite's data files (tests/, spec/, fixtures/, ...) are read but only reported, not judged: a parser's test data is malformed on purpose.