Skip to content

Add serde_nt to the Rust implementations - #68

Merged
KenKundert merged 1 commit into
KenKundert:masterfrom
x-at-01:add-serde-nt
Nov 13, 2026
Merged

KenKundert merged 1 commit into
KenKundert:masterfrom
x-at-01:add-serde-nt

Conversation

@x-at-01

@x-at-01 x-at-01 commented Nov 12, 2026

Copy link
Copy Markdown
Contributor

Adds serde_nt to the Rust section of the related projects page.

serde_nt is a Rust implementation of NestedText with serde support: documents are read straight into your own types (borrowed or owned) and written back as NestedText.

Conformance

The official test suite (nestedtext_tests) is vendored in the repository and run on every build. All 148 cases are covered:

  • the 80 valid documents are compared with the expected output and additionally round-tripped (read, write, read again);
  • the 68 invalid documents are checked, including the error message and the line number, which are reproduced 1:1 with the reference implementation, for example invalid indentation., invalid indentation, partial dedent., duplicate key: name., expected ‘:’, found ‘}’., line ended without closing delimiter., extra characters after closing delimiter: ‘b]’. and invalid character in indentation: '\xa0' (NO-BREAK SPACE).;
  • the two cases whose document bytes are not valid UTF-8 are left to the caller's decoder, exactly as load() does when it is handed raw bytes.
git clone https://github.com/i18n-site/i18n.site
cd i18n.site
cargo test -p serde_nt

Happy to adjust the wording, or the version label (I used v3.8, as v3.9 has no language changes), if you would prefer something else.

@KenKundert
KenKundert merged commit de8fb6d into KenKundert:master Nov 13, 2026
3 checks passed
@KenKundert

Copy link
Copy Markdown
Owner

Thank you!

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.

2 participants