Version NEXT: 0000-00-00 Jonas Schäfer * Breaking - The methods of `TextCodec` now have `&self` receivers. This also implies that `#[xml(text(codec = ..))]` now takes expressions instead of type paths. Because all implementations provided by `xso` were in fact unit structs, this should not change most invocations, with one exception: The type argument of `Base64` was removed. Replace all `Base64` references with `Base64.filtered(Foo)` to update your code. This change overall allows for more flexibility in the implementation of text codecs. * Added - Support for child elements in derive macros. Child elements may also be wrapped in Option or Box or in containers like Vec or HashSet. - Support for overriding the names of the types generated by the derive macros. - Support for deriving FromXml and AsXml on enums. - Support for extracting data from child elements without intermediate structs. - Support for collecting all unknown children in a single field as collection of `minidom::Element`, or one unknown child as a `minidom::Element`, or zero or one unknown children as an `Option`. - Support for "transparent" structs (newtype-like patterns for XSO). - FromXmlText and AsXmlText are now implemented for jid::NodePart, jid::DomainPart, and jid::ResourcePart (!485) - Support for optional child elements, the presence of which are translated into a boolean (`#[xml(flag)]`). - Generic TextCodec implementation for all base64 engines provided by the base64 crate (if the `base64` feature is enabled). - New `codec` field on `attribute` meta, to support decoding and encoding using any `TextCodec`. - Support for `no_std` usage (the alloc crate is required, though). - Add a PrintRawXml helper struct to be able to display raw xml, useful for debug logs. * Changes - Generated AsXml iterator and FromXml builder types are now doc(hidden), to not clutter hand-written documentation with auto generated garbage (something certain big tech companies could take an example of, honestly). Version 0.1.2: 2024-07-26 Jonas Schäfer * Added - FromXmlText and AsXmlText are now implemented on char. * Fixed - Docs build on docs.rs now shows feature-gated items. Version 0.1.1: 2024-07-25 Maxime “pep” Buquet * Added - Import various text codecs from parsers: FixedHex, ColonSeparatedHex, EmptyAsError. Version 0.1.0: 2024-07-25 Jonas Schäfer * Initial release of this crate