Skip to content

Release 0.3.0

Compare
Choose a tag to compare
@etingof etingof released this 13 Dec 19:13
· 13 commits to master since this release
9d9ce54

The major feature of this release is the ability of the library to preserve the exact layout
of the config file upon loading/dumping. The main motivation is to ensure the validity of
signatures whenever taken over config files.

Other features include:

  • Added unicode support: library can load/dump unicode config files.

  • Added line number to the exception message on parsing error

  • Added preservewhitespace option to control parser behaviour
    concerning insignificant whitespaces. When this option is
    enabled, the parser would collect all whitespaces into AST
    and (potentially) use them for code generation.

  • Added disableemptyelementstags option to disable parsing of
    empty element tags.

  • Added Sphinx documentation infrastructure (the docs are still
    to be moved from README).

We also caught a handful of annoying insects (specifically, bugs):

  • Fixed the issue of not collapsing trailing whitespaces into
    one in line continuation (as Perl parser does)

  • Fixed the issue of not preserving escaped hashes (#)

  • Fixed the issue of not respecting a comment that follows
    an escaped hash

  • Fixed the issue of not respecting a comment at the end of
    the line

  • Fixed the issue of not operational allowmultioptions option
    when the statement spans multiple lines

  • Fixed the issue of key-only statements parsing

Kudos to @sydneyli for making this release possible!