Skip to content

v4.0.0

Compare
Choose a tag to compare
@zkat zkat released this 23 Apr 09:37
· 48 commits to main since this release
ace541a

Hello again!

kdl-rs 4.0.0 is a complete rewrite, featuring a full-fledged
"document-oriented" parser: that is, formatting, whitespace, comments, etc,
are all preserved and can be programmatically manipulated. KDL documents are
fully round-trippable, without losing any of that human-written content!

This crate will, for the time being, not include a serde-based parser, but
there's also crates like knuffel and
kaydle now that do probide serde (or
serde-like) functionality. You should definitely check those out if you're
looking for that kind of workflow!

Please give this version a whirl if you've been curious about using KDL for
your own projects, and let me know what can be improved, or even what you love
about it!

Features

  • api: complete rewrite into document-oriented parser (#29) (364ea617)
    • BREAKING CHANGE: Completely new API and bumped MSRV to 1.56.0.
  • tests: add test for kdl-schema.kdl (#30) (ad34cfd9)
  • types: add type annotation support (#31) (16c82f1e)
  • errors: improve parsing errors and fix some bugs (#33) (8ed6a5cd)
  • clear_fmt: add methods to clear formatting and reset it to default (892bf06e)
  • errors: overhauled error reporting a ton (d63f336d)
  • len: add APIs to calculate component lengths (#36) (177c42ca)

Bug Fixes

  • parse: small parser tweaks + more tests (1a8eb351)
  • api: remove obsolete type (40b04418)