Skip to content

Latest commit

 

History

History
156 lines (100 loc) · 6.69 KB

CHANGELOG.md

File metadata and controls

156 lines (100 loc) · 6.69 KB

kdl Release Changelog

5.0.0-alpha.1 (2023-04-01)

This release upgrades miette and thiserror in lockstep, bringing in syn2, in order to avoid potential issues with the upgrade.

Features

  • deps: bump miette and thiserror (db0a395f)

5.0.0-alpha.0 (2022-12-05)

This release makes some breaking API changes, but most notably, introduces support for the KDL Query Language.

Features

  • kql: implement KQL query engine (#61) (6d1a516e)
  • api: Improve .get()/.entry() APIs to be more consistent with Rust conventions (3d8778a6)
    • BREAKING CHANGE:
  • spans: rework the span API to be strictly by-val (#60) (04471a53)
    • BREAKING CHANGE: this removes all the .span_mut() methods and changes the signature for .span().

4.6.0 (2022-10-09)

Features

  • errors: Add better diagnostics for errant plain identifiers in nodes (#59) (3ddbfec8)

4.5.0 (2022-08-31)

Features

  • spans: add spans to most elements (#57) (b17ef8e2)

4.4.0 (2022-08-18)

Features

Bug Fixes

  • formatting: Fix formatting when decoration is not present (#56) (2e9c0447)

4.3.0 (2022-06-11)

Features

  • fmt: Add clear_fmt_recursive method (#45) (cd2d6e42)

4.2.0 (2022-05-11)

Features

  • entry: Add accessors to entry type. (#43) (afccf012)

4.1.1 (2022-04-28)

Bug Fixes

  • compliance: pull in spec test suite and fix issues (#40) (58a40fdf)

4.1.0 (2022-04-24)

Features

  • fmt: shiny new comment-preserving formatter! (#38) (12d373a1)

4.0.0 (2022-04-23)

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)

3.0.0 (2021-09-16)

Features

  • spec: update parser to handle KDL 1.0.0 (f811c5c8)
    • BREAKING CHANGE: Various things have changed in the process of moving to KDL 1.0.0. Please test your stuff

2.0.0 (2021-09-16)

Features

  • license: change license to Apache-2.0 (0dbf75c7)
    • BREAKING CHANGE: This is a significant licensing change. Please review.

1.1.0 (2021-05-08)

It's been a while! This release brings kdl-rs much closer in sync with the actual spec.

Bug Fixes

  • deps: Remove nom dependency on bitvec and lexical (#14) (9bc5363b)
  • numbers: Fix parsing of non-integer and non-decimal numbers (#13) (c1b7c25c)

Features

  • display: implemented Display for KdlNode (#6) (b8c8b527)
  • docs: Add documentation for the entire crate (#16) (94190697)
  • identifier: much larger character set for identifiers (not just alphanumeric), to match spec more closely (#7) (95a1ee3e)

1.0.0 (2020-12-19)

Initial Release! �