Releases: vslavik/xmlwrapp
XML Libraries Windows Binaries
0.9.1
This release mostly contains build-related changes:
- The library doesn't depend on Boost at all any more.
- It can now be compiled by C++17 (or even C++20) compilers, including MSVS 2017/2019, projects for which are included in the distribution.
- DLL version of the library can now be built with MSVS too, and not only gcc (or with gcc without relying on auto-import).
At the API level, new xml::init::change_flag
has been added.
Another namespace-related bug was fixed.
Please use the following SHA-1 sums to verify your download:
6f5b74d6989b8da3a62392f390615d3be8854be7 xmlwrapp-0.9.1.tar.gz
6144684734a4518030b4080716a4b69a9bd7747c xmlwrapp-0.9.1.tar.xz
0.9.0
Main change is the addition of xml::relaxng
for validating XML documents using RelaxNG.
And the usual collection of bug fixes:
- Fix crash when initializing the library from multiple threads concurrently.
- Fix wrong namespace being used for children of a newly inserted node.
- Don't implicitly switch document encoding to Latin-1 when calling
get_encoding()
, but continue to use UTF-8.
Also fix some harmless warnings during the build.
Please use the following SHA-1 sums to verify your download:
6fa3193a013b7d29bb22e220e9bd015bc14eb11e *xmlwrapp-0.9.0.tar.gz
a63bb09565cfeaace33d2d4bc2041032df07a217 *xmlwrapp-0.9.0.tar.xz
Bug fix 0.8 release
The only change since 0.8.0 is that the distribution archive now includes the previously forgotten src/xmlwrapp/cpp11.h
file and can now be built.
Improved error handling and some new functionality
Version 0.8.0
Improve error handling:
- New behaviour: xml::document::save_to_{string,file}() now throws exception in case of failure by default instead of silently ignoring any errors.
- New behaviour: xpath_context::evaluate() also throws an exception if an invalid XPath expression is specified.
In both cases, ignore_errors
can be passed as the new on_error
argument to these functions to restore the old behaviour (this is, however, not recommended).
Some new features:
- Added xml::node::move_under().
- Added xml::node::set_namespace().
- Added xml::xpath_context class for evaluating XPath expressions.
- Added xml::nodes_view::erase() analogous to node::erase().
0.7.1
0.7.0
- Changed the
xml::node::node(name, content)
constructor so that it doesn't create a child text node if the content is empty. - Added
xml::node::set_text_content()
for setting unescaped textual content. - Added
xml::exception
class, derived fromstd::runtime_error
. Xmlwrapp will throw only this or derived exception, with the exception ofstd::bad_alloc()
, which is still thrown when appropriate. - Added
xml::error_handler
and related classes for collecting multiple errors and warnings. Added appropriate forms of constructors and functions to other classes. - Added
xml::node::clear()
method. - Added
xml::schema
class for XML Schema validation. - Added
xml::document(filename)
andxml::document(data, size)
constructors for convenient document creation without the need to usetree_parser
.