Hierarchical structured logging format. Easy for humans, fast for computers.
This library provides types, parsers and renderers for
Consider this a preview release: The API is likely to stay stable, but extensive testing, formalization and tooling is due.
See the BSD3 LICENSE file to learn about the legal terms and conditions for this library.
COMPILER ASSISTED BREAKING CHANGE: Change functions names
ToValueinstances for common types like
Changed colours in
- Added missing language pragma.
messagefunctions are now methods of the new
ToMessageclasses. Identity instances, as well as instances for
Text, have been introduced for these classes.
Messagedon’t strip surrounding whitespace anymore. When rendering
Value, the whitespace will be percent-encoded. When rendering
Message, the whitespace will be kept as is.
Keynow wrap lazy
Text, rather than strict
Text. This is to align their APIs with
Message, which already wrapped lazy
Textso as to prevent logged
Messages from to use much memory. It’s unlikely that
Keys are affected by this, since in practice they are almost always created statically. So, this change is mostly to make the API less surprising to users: Lazy
Textis used throughout.
Added draft BNF specification.
Fixed escaping of control characters in
Percent-escape less punctuation characters when rendering
TODO: write spec.
- Fixed compilation.
- Consider this a preview release: The API is likely to stay stable, but extensive testing, formalization and tooling is due.