1Version NEXT:
2 * Changes
3 - Fix some Clippy warnings
4 * Fix
5 - Bump rxml version from 0.13.1 to 0.13.3. We needed a feature of .3.
6
7Version 0.18, released 2025-10-28:
8 * Breaking:
9 * Remove 'std' feature for now because it makes build fail on
10 no-default-features.
11 * Add `Element::attr_ns` that requires the attribute namespace in addition
12 to `Element::attr` (which defaults to `rxml::Namespace::none()`. Similar
13 changes on `ElementBuilder` methods.
14 `Element` now uses `AttrMap` to store attributes, and this also implies
15 some more changes in the Element interface such as iterators on
16 attributes.
17 * Changes
18 * Use thiserror for the error type. (!616)
19
20Version 0.17, released 2025-09-17:
21 * Changes
22 * Almost make the whole crate `no_std`, only `std::io` is still remaining.
23 * Update rxml dependency to 0.13.
24 * Fixes
25 * Remove warnings for elided lifetimes (rustc 1.90)
26 * Fixes serialization and ensure prefixes are set on Element when using
27 `Element::from_reader_with_prefixes`.
28
29Version 0.16, released 2024-07-23:
30 * Breaking
31 * Element comparison returns unequal when number of nodes is unequal.
32 * Changes
33 * New `Element::append_text` method.
34 * Update rxml to 0.11.0
35 * Fixes
36 * Prevent splitting of text nodes in TreeBuilder when there is no element in between.
37 * Update to edition 2021.
38 * Fix clippy lints, and other compiler warnings.
39
40Version 0.15.2, released 2023-05-13:
41 * Changes
42 * Fix a memory corruption on closing tags for elements with a name longer
43 than 24 bytes
44 * Only enable the mt features of rxml, we don’t need any additional one
45
46Version 0.15.1, released 2023-01-15:
47 * Changes
48 * Add `Element::from_reader_with_prefixes`
49 * (#44) Add test ensuring parsing two namespaces resolv
50
51Version 0.15.0, released 2022-07-13:
52 * Changes
53 * Drop quick-xml dependency (astro1, jssfr)
54
55Version 0.14.0, released 2022-03-07:
56 * Changes
57 * Bump quick-xml dependency (thanks eijebong!)
58 * Fixes
59 * Handle identical namespaces of sibling elements correctly (thanks Jasper!)
60 * Fix support for newer rustc (see https://github.com/rust-lang/rust/issues/90199)
61
62Version 0.13.0, released 2021-01-13:
63 * Changes
64 * Force namespaces on Element, which was a breaking change.
65
66Version 0.12.1, released 2021-01-13, yanked:
67 * Changes
68 * Bump quick-xml dependency.
69
70Version 0.12, released 2020-02-15:
71 * Breaking
72 * `Element.write_to` doesn't prepend xml prelude anymore. Use `write_to_decl` when necessary.
73 * PartialEq implementation for Element and Node have been changed to
74 ensure namespaces match even if the objects are not structurally
75 equivalent in Rust.
76 * Changes
77 * Explicitly focus on XMPP. Some features will eventually be removed from
78 the project to comply with this.
79 * Update edition to 2018
80 * Add NSChoice enum to allow comparing NSs differently
81 * Add impl for From<Into<Element>> for Node
82 * Fixes
83 * Update old CI configuration with newer Rust images
84
85Version 0.11.1, released 2019-09-06:
86 * Changes
87 * Update to quick-xml 0.16
88 * Add a default "comments" feature to transform comments into errors when unset.
89
90Version 0.11.0, released 2019-06-14:
91 * Breaking
92 * Get rid of IntoElements, replace with `Into<Node>` and `<T: Into<Node> IntoIterator<Item = T>>`
93 * Fixes
94 * Remote unused `mut` attribute on variable
95 * Changes
96 * Update quick-xml to 0.14
97 * Split Node into its own module
98 * Nicer Debug implementation for NamespaceSet
99
100Version 0.10.0, released 2018-10-21:
101 * Changes
102 * Update quick-xml to 0.13
103 * Update doc to reflect switch from xml-rs to quick-xml.
104
105Version 0.9.1, released 2018-05-29:
106 * Fixes
107 * Lumi fixed CDATA handling, minidom will not unescape CDATA bodies anymore.
108 * Small changes
109 - Link Mauve implemented IntoAttributeValue on std::net::IpAddr.
110
111Version 0.9.0, released 2018-04-10:
112 * Small changes
113 - Upgrade quick_xml to 0.12.1
114
115Version 0.8.0, released 2018-02-18:
116 * Additions
117 - Link Mauve replaced error\_chain with failure ( https://gitlab.com/lumi/minidom-rs/merge_requests/27 )
118 - Yue Liu added support for writing comments and made the writing methods use quick-xml's EventWriter ( https://gitlab.com/lumi/minidom-rs/merge_requests/26 )
119
120Version 0.6.2, released 2017-08-27:
121 * Additions
122 - Link Mauve added an implementation of IntoElements for all Into<Element> ( https://gitlab.com/lumi/minidom-rs/merge_requests/19 )
123
124Version 0.6.1, released 2017-08-20:
125 * Additions
126 - Astro added Element::has_ns, which checks whether an element's namespace matches the passed argument. ( https://gitlab.com/lumi/minidom-rs/merge_requests/16 )
127 - Link Mauve updated the quick-xml dependency to the latest version.
128 * Fixes
129 - Because break value is now stable, Link Mauve rewrote some code marked FIXME to use it.
130
131Version 0.6.0, released 2017-08-13:
132 * Big changes
133 - Astro added proper support for namespace prefixes. ( https://gitlab.com/lumi/minidom-rs/merge_requests/14 )
134 * Fixes
135 - Astro fixed a regression that caused the writer not to escape its xml output properly. ( https://gitlab.com/lumi/minidom-rs/merge_requests/15 )
136
137Version 0.5.0, released 2017-06-10:
138 * Big changes
139 - Eijebong made parsing a lot faster by switching the crate from xml-rs to quick_xml. ( https://gitlab.com/lumi/minidom-rs/merge_requests/11 )