Skip to content

YAML Conformance Tests and Fixes#2305

Merged
stephenberry merged 30 commits intomainfrom
yaml
Feb 13, 2026
Merged

YAML Conformance Tests and Fixes#2305
stephenberry merged 30 commits intomainfrom
yaml

Conversation

@stephenberry
Copy link
Owner

@stephenberry stephenberry commented Feb 6, 2026

YAML Conformance + Writer Reliability

Summary

This PR brings the YAML implementation much closer to spec behavior by:

  • adding full YAML conformance coverage from yaml-test-suite
  • fixing parser behavior for many previously failing edge cases (anchors/aliases, indentation, tags/directives, block/flow interactions, scalar folding/chomping)
  • expanding writer-focused tests, including large document generation and roundtrip checks for both glz::generic and C++ structs
  • fixing YAML writer output in flow collections so multiline strings are emitted as valid double-quoted escaped scalars (instead of invalid block scalars inside {...} / [...])

Key Changes

  • Added tests/yaml_conformance/yaml_conformance.cpp with broad conformance cases and integrated it into CTest.
  • Updated YAML parsing logic in:
    • include/glaze/yaml/read.hpp
    • include/glaze/yaml/common.hpp
    • include/glaze/yaml/skip.hpp
  • Updated writer behavior in:
    • include/glaze/yaml/write.hpp
  • Expanded and hardened coverage in:
    • tests/yaml_test/yaml_test.cpp
    • including regression tests for flow-style multiline serialization and large writer documents.

Validation

  • Conformance suite passes.
  • yaml_test passes with new regression and large-document writer cases.

@packit-as-a-service
Copy link

@packit-as-a-service
Copy link

@packit-as-a-service
Copy link

@packit-as-a-service
Copy link

@packit-as-a-service
Copy link

@packit-as-a-service
Copy link

One of the tests failed for e7f2018. @admin check logs None, packit dashboard https://dashboard.packit.dev/jobs/copr/3233359 and external service dashboard https://copr.fedorainfracloud.org/coprs/build/10101069/

@packit-as-a-service
Copy link

@packit-as-a-service
Copy link

@packit-as-a-service
Copy link

One of the tests failed for 1b3ad2e. @admin check logs None, packit dashboard https://dashboard.packit.dev/jobs/copr/3245846 and external service dashboard https://copr.fedorainfracloud.org/coprs/build/10113727/

@packit-as-a-service
Copy link

@packit-as-a-service
Copy link

One of the tests failed for ae7dec6. @admin check logs None, packit dashboard https://dashboard.packit.dev/jobs/copr/3251007 and external service dashboard https://copr.fedorainfracloud.org/coprs/build/10116908/

@packit-as-a-service
Copy link

One of the tests failed for ae7dec6. @admin check logs None, packit dashboard https://dashboard.packit.dev/jobs/copr/3251006 and external service dashboard https://copr.fedorainfracloud.org/coprs/build/10116908/

@packit-as-a-service
Copy link

One of the tests failed for ae7dec6. @admin check logs None, packit dashboard https://dashboard.packit.dev/jobs/copr/3251008 and external service dashboard https://copr.fedorainfracloud.org/coprs/build/10116908/

@packit-as-a-service
Copy link

@packit-as-a-service
Copy link

One of the tests failed for 2d8ed2f. @admin check logs None, packit dashboard https://dashboard.packit.dev/jobs/copr/3258499 and external service dashboard https://copr.fedorainfracloud.org/coprs/build/10125973/

@stephenberry stephenberry merged commit 4f484d3 into main Feb 13, 2026
43 of 44 checks passed
@stephenberry stephenberry deleted the yaml branch February 13, 2026 17:53
@stephenberry stephenberry mentioned this pull request Feb 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant