PureYAML/docs
Mihaela Mihaljevic dfb498a89c fix(parsing): accept anchors, tags, and aliases as mapping keys
A mapping key is a full node: it may carry &anchor and !tag properties and may itself be an *alias. Fixes: (1) anchor/alias name scanning now stops at the first non-name character per yaml_parser_scan_anchor, so *a: reads as alias 'a' plus a mapping indicator instead of name 'a:'; (2) the block-mapping parser enters on a leading node property or alias, attaches same-line key properties to the key node, and emits alias keys directly; (3) an anchor or tag at value position with no same-line node composes an empty (null) value carrying the property, so 'a: &anchor' registers the anchor; (4) the composer registers an anchor's resolved model value (an empty anchored scalar registers null); (5) implicit keys with trailing spaces before the colon are recognized.

Flips 10 official YAML test suite cases to passing (280/402), including G9HC now correctly rejected. 2SXE no longer false-rejects but still value-mismatches on compact-mapping interpretation (a separate gap), so it is reclassified in the manifest rather than removed. Updates the manifest, fixtures, counts, and roadmap.
2026-06-23 21:07:47 +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): accept anchors, tags, and aliases as mapping keys 2026-06-23 21:07:47 +02:00