diff --git a/CHANGELOG.md b/CHANGELOG.md index 20c54c2..ae66260 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,22 @@ # KDL Changelog +## 2.0.0-draft.7 (2024-12-10) + +* `node-space` is now allowed as whitespace after a `slashdash`, meaning line + continuations will work now. +* One or two consecutive double-quotes are now allowed in the bodies of + multi-line quoted strings, without needing to be escaped. +* Grammar has been fixed to disallow raw strings like `#"""#`, which are now + properly treated as invalid multi-line raw strings (instead of the equivalent of + `"\""`). +* Test suite has been updated to include a `_fail` suffix in all test cases + which are expected to fail. +* A slew of additional slashdash and multi-line string compliance tests have + been added. Have fun. :) +* The organization of string types in the spec prose has been updated to a + hopefully more helpful structure. + + ## 2.0.0-draft.6 (2024-12-04) * Multiline strings, both Raw and Quoted, must now use `"""` instead of a single `"`. Using `"""` for a single-line string is a syntax error. @@ -7,6 +24,7 @@ * Some rewordings and clarification in the spec prose. * Slight grammar tweak where the pre-terminator `node-space*` for `node` and `final-node` have been moved into `base-node`. + ## 2.0.0-draft.5 (2024-11-28) * Equals signs other than `=` are no longer supported in properties. @@ -19,6 +37,7 @@ including comments and newlines, which are breaking changes. * Various updates to test suite to reflect changes. + ## 2.0.0 (Unreleased) ### Grammar @@ -87,7 +106,12 @@ * Correspondingly, the identifiers `inf`, `-inf`, and `nan` are now syntax errors. * `u128` and `i128` have been added as well-known number type annotations. -* Slashdash (`/-`) -compatible locations adjusted to be more clear and intuitive. +* Slashdash (`/-`) -compatible locations adjusted to be more clear and + intuitive. They can now be used in exactly three different places: before nodes, + before entire entries, or before entire child blocks. +* Furthermore, The ordering of slashdashed elements has been restricted such + that a slashdashed child block cannot go before an entry (including slashdashed + entries). ### KQL diff --git a/README.md b/README.md index 9fca890..f45a94b 100644 --- a/README.md +++ b/README.md @@ -55,7 +55,7 @@ There's a living [specification](SPEC.md), as well as various [implementations](#implementations). You can also check out the [FAQ](#faq) to answer all your burning questions! -The current version of the KDL spec is `2.0.0-draft.6`. +The current version of the KDL spec is `2.0.0-draft.7`. In addition to a spec for KDL itself, there are also standard specs for [a KDL Query Language](QUERY-SPEC.md) based on CSS selectors, and [a KDL Schema diff --git a/SPEC.md b/SPEC.md index 0405823..c147a88 100644 --- a/SPEC.md +++ b/SPEC.md @@ -3,8 +3,8 @@ This is the semi-formal specification for KDL, including the intended data model and the grammar. -This document describes KDL version `2.0.0-draft.6`. It was released on -2024-12-04. +This document describes KDL version `2.0.0-draft.7`. It was released on +2024-12-10. ## Compatibility