Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

KDL 2.0 compliance #1

Closed
zkat opened this issue Feb 7, 2024 · 1 comment
Closed

KDL 2.0 compliance #1

zkat opened this issue Feb 7, 2024 · 1 comment

Comments

@zkat
Copy link

zkat commented Feb 7, 2024

KDL 2.0.0-draft.3 is now generally available (kdl-org/kdl#286), and with it, we've decided to encourage existing implementations to start working towards 2.0 support and send feedback and suggestions for anything you might run into, so I'm making this tracking issue. :)

eilvelia added a commit that referenced this issue Apr 1, 2024
- Equal sign is now defined as `=` | U+FE66 | U+FF1D | U+1F7F0
- BOM is allowed in the start of the document only
- Added \s escape sequence
- Disallowed invalid escape sequences
- Allowed EOF right after the \ line continuation
- Strings and identifiers cannot include characters from the "Disallowed
  Literal Code Points" list
- true, false, and null values are now written as #true, #false, #null
  respectively
- Changed the raw string syntax from r"raw" to #"raw"#
- Removed no-whitespace checks around = and type annotations
- Strings can now be written as bare identifiers
- Added multi-line "dedented" strings, newlines in single-line strings
  are disallowed
- Newlines in multi-line strings are normalized to \n
- Identifiers cannot start with .<digits> anymore (optionally prefixed by +-)
- Added #inf, #-inf, #nan numbers
- true, false, inf, -inf, nan are invalid identifiers
- Small documentation improvements

TODO: The correct by the spec handling of whitespace is still to be implemented.
TODO: The pretty-printer doesn't yet work well for some special symbols and
      generally isn't good enough in edge cases.

Other KDL v2 changes have alredy been implemented before, namely:
Line Tabulation as whitespace, \/ is no longer an escape sequence, \ whitespace
escape.

#1
@eilvelia
Copy link
Owner

done

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

No branches or pull requests

2 participants