Read a YAML config into JSON: nested maps, sequences, block scalars, inline collections and comments, with the ambiguous parts refused rather than guessed.
The result appears hereThe subset config files are written in: nested maps and sequences, quoted and plain scalars, comments, block scalars with | and >, and inline [] and {} collections. That covers a GitHub workflow, a docker-compose file and a Kubernetes manifest.
Because expanding them wrong is worse than saying no. Anchors, aliases, tags, directives and multi-document files are rejected with a message instead of being half-read.
Because it should. YAML 1.1 turns on, yes and no into booleans, which is how a GitHub workflow's on: becomes true: in half the parsers out there. Keys are read as text here; values still get the booleans.