0.86.3 – Wasm it up
Changes:
- The
XmlStreaming
object in core is replaced by an interfaceIXmlStreaming
with an accessor functionxmlStreaming
that provides an appropriate
instance. The platform specific objects have been retained, but deprecated.
In various places extension functions have been added. - The KTOR module has been dropped from this release. As ktor officially supports
the XML serialization using this library, please use the official ktor module.
Features:
- Update to kotlinx.serialization 1.6.1, add wasmJs/wasmWasi support.
- Support strict boolean parsing in policy
(using xml schema rules allowing: 1, true, 0, false) - Add an alias XmlBoolean that parses according to xml rules independent of
the policy. - Add versioned recommended configuration of the serializer. This provides
for a stable configuration without manual configuration. - Add support for purely text lists as text content (similar to attributes).
This comes with atextListDelimiters
policy function that allows
specifying delimiters (note that it will apply xml schema compatible
collapsing of whitespace - as articles do).
Fixes:
- Fix handling of empty textual value content.
- Fix collapsing whitespace when it is empty #180.
- Fix the way the recommended config works to apply the policy. Note that
recommended is not designed to be stable. - Fix regression on root tag strictness. Now if the root type has a declared
@XmlSerialName
this type will be expected as the root tag unless explicitly specified differently
as parameter. - Add a proper non-deprecated constructor for
DefaultXmlSerializationPolicy
this takes a Builder, or a configuration lambda. Both options enable
future proofing when further attributes are added. - In the platform independent (native) DOM implementation allow
comments outside the document element (rather than throwing an exception).
Fixes #189.