PureYAML/Sources
Mihaela M 37e84b5eb4 fix(parsing): accept a tab as a leading indicator boundary
A tab is separation white space in YAML, forbidden only for indentation, so it
ends a leading indicator exactly as a space does. isIndicatorBoundary treated
only a space, line break, or end of input as a boundary, so a document marker,
block entry, or explicit key followed by a tab was folded into a plain scalar:
`---\tscalar` parsed to the string `---\tscalar` rather than a document whose
root scalar is `scalar`.

Accept a tab there too. The document-marker and block-entry forms also strip
the tab as separation, so the content is clean; the explicit-key form is now
recognized as well, with post-indicator tab stripping left for a later change.

Raises yaml-test-suite value-level conformance to 175/192 (91.1%) with the
parse-level and should-error rejection rates unchanged. 429 tests pass.
2026-06-28 20:19:16 +02:00
..
Coding
Decoding
Emitting feat(parser): harden diagnostics and streaming 2026-06-06 07:57:48 +02:00
Encoding
Model
Parsing fix(parsing): accept a tab as a leading indicator boundary 2026-06-28 20:19:16 +02:00
Stream
Tagged feat(validation): enforce tagged mapping-key uniqueness 2026-06-28 17:03:20 +02:00
Validation feat(validation): enforce tagged mapping-key uniqueness 2026-06-28 17:03:20 +02:00
API.swift feat(emitting): dump YAML streams 2026-06-05 17:14:41 +02:00
PureYAML.swift