PureYAML/docs
Mihaela Mihaljevic 1875d66d46 fix(parsing): parse multi-line and block scalars at the document root
Model libyaml's parser->indent (the enclosing block-collection column, -1 at the bare root) separately from per-line indentation, via a blockIndent stack that rolls on block-sequence entries and mapping keys, unrolls at each block-line start, and resets at document boundaries. Plain-scalar continuation folding now compares against blockIndent, so a root scalar folds its column-0 continuations (single break to space, blank line to newline, per-line whitespace stripped) while a scalar inside a collection still ends at a sibling line. The ':' value indicator deliberately does not roll the block indent.

A '---' document-start marker may now be followed by the document's root node on the same line ('--- foo', '--- [1, 2]', '--- |', '--- >'), and a block scalar whose body sits at the document root's column 0 is captured and ends at the next '---'/'...' marker.

Flips 33 official YAML test suite cases (338/402): 18 false-rejects and 12 value mismatches now match, and 3 invalid inputs (9KBC, ZVH3, 9MQT/01) are now correctly rejected. M7A3 and NB6Z now parse but with mismatched values (separate multi-doc and tab-folding gaps) and stay tracked. Adds root multi-line plain scalar regression tests; updates manifest, fixtures, counts, and roadmap.
2026-06-23 22:56:33 +02:00
..
releases feat(parser): harden diagnostics and streaming 2026-06-06 07:57:48 +02:00
rules ci: use checkout action with node 24 2026-06-06 00:32:53 +02:00
CONVENTIONS.md test(coding): add sequence fixtures and contract gate 2026-06-05 12:33:09 +02:00
CORPUS.md feat(parser): harden diagnostics and streaming 2026-06-06 07:57:48 +02:00
DESIGN.md feat(emitting): dump YAML streams 2026-06-05 17:14:41 +02:00
MIGRATION.md fix(ci): prepare 0.1.0 release 2026-06-05 21:20:20 +02:00
RELEASE.md feat(parser): harden diagnostics and streaming 2026-06-06 07:57:48 +02:00
USAGE.md docs(release): prepare 0.1.1 2026-06-06 00:28:38 +02:00
YAML_TEST_SUITE_CONFORMANCE.md fix(parsing): parse multi-line and block scalars at the document root 2026-06-23 22:56:33 +02:00