XMLCoder v0.13.0 Release Notes

Release Date: 2021-08-06 // 3 months ago
  • ๐Ÿ›  This release adds two new features and a bugfix.

    Namely:

    • ๐Ÿšš removeWhitespaceElements boolean flag on XMLDecoder allows removing elements that have purely whitespace content.
    • convertFromUppercase case on KeyDecodingStrategy allows converting ALL_CAPS_SNAKE_CASE to camelCase.
    • ๐Ÿ›  an edge case in intrinsic key value decoding has been fixed.

    Many thanks to @huwr, @kneekey23, and @wooj2 for their contributions!

    Closed issues:

    • Decoding special whitespace characters (#219)
    • Help with mix of attributes and elements (#212)

    ๐Ÿ”€ Merged pull requests:

    • Encode element with empty key, empty element, and attributes (#223) via @wooj2
    • ๐Ÿšš Implement removeWhitespaceElements on XMLDecoder (#222) via @wooj2
    • โž• Add convert from UPPERCASE decoding key strategy (#214) via @huwr

Previous changes from v0.12.0

  • ๐Ÿš€ This release adds a few new features. Namely:

    • ๐Ÿ†• New charactersEscapedInAttributes and charactersEscapedInElements properties on XMLEncoder that allow customizing how certain characters are escaped.
    • You can now override the implementation of TopLevelEncoder Combine protocol conformance when subclassing XMLEncoder.
    • ๐Ÿ†• New prettyPrintIndentation property on XMLEncoder, which can take XMLEncoder.PrettyPrintIndentation values such as .tabs(1) or .spaces(2).

    Thanks to Kenta Kubo for the contribution!

    Closed issues:

    • How to decode <itunes:episode> tags (#201)
    • ๐Ÿ— Fail to build in Xcode 12 beta (#196)
    • Changing the root node name ? (#191)
    • " in XML element may not always be escaping (#187)
    • &#10; in XML attributes (#185)
    • " and &quot; are not decoded equally (#184)
    • ๐Ÿ–จ Use 2 spaces instead of 4 when .prettyPrinted (#183)
    • (Help using) How to decode this XML? (#180)

    ๐Ÿ”€ Merged pull requests:

    • โœ… Test DynamicNodeEncoding for root elements (#195) via @MaxDesiatov
    • ๐Ÿ‘‰ Make character escaping customizable in XMLEncoder (#188) via @MaxDesiatov
    • โž• Add prettyPrintIndentation property on XMLEncoder (#186) via @MaxDesiatov
    • ๐Ÿ‘‰ Make TopLevelEncoder implementation overridable (#182) via @kkk669