- Update to version 1.13:
* xml_attribute::set_value, xml_node::set_value and xml_text::set
now have overloads that accept pointer to non-null-terminated
string and size.
* Fix error handling in xml_document::save_file that could result
in the function succeeding while running out of disk space.
* Fix memory leak during error handling of some out-of-memory
conditions during xml_document::load.
OBS-URL: https://build.opensuse.org/request/show/1032951
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/pugixml?expand=0&rev=23
- update to 1.11.4:
* Add xml_node::remove_attributes and xml_node::remove_children
* Add a way to customize floating point precision via xml_attribute::set and
xml_text::set overloads
* XPath parser now limits recursion depth which prevents stack overflow on
malicious queries
* Exported CMake target name changed to pugixml::pugixml; see subsequent
patch releases
* Regression bugfixes
OBS-URL: https://build.opensuse.org/request/show/862442
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/pugixml?expand=0&rev=19
- Update to version 1.10:
* XPath union operation now is ~2x faster to compute and results
in a stable order that doesn't depend on pointer order.
* Add format_skip_control_chars formatting flag to skip
non-printable ASCII characters.
* Add format_attribute_single_quote formatting flag to use single
quotes for attribute values.
* Add Visual Studio .natvis files to improve debugging
experience.
- Remove merged patches:
* pugixml-1.9-use-CMAKE_INSTALL_LIBDIR.patch.
* pugixml-1.9-install-pc-file.patch.
OBS-URL: https://build.opensuse.org/request/show/770090
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/pugixml?expand=0&rev=17
- Update to version 1.9
* Specification changes
+ xml_document::load(const char*) (deprecated in 1.5) now has
deprecated attribute; use xml_document::load_string instead
+ xml_node::select_single_node (deprecated in 1.5) now has
deprecated attribute; use xml_node::select_node instead
* New features
+ Add move semantics support for xml_document and improve
move semantics support for other objects
+ CMake build now exports include directories
+ CMake build with BUILD_SHARED_LIBS=ON now uses dllexport
attribute for MSVC
* XPath improvements
+ Rework parser/evaluator to not rely on exceptional control
flow; longjmp is no longer used when exceptions are disabled
+ Improve error messages for certain invalid expressions such
as .[1] or (1
+ Minor performance improvements
* Compatibility improvements
+ Fix Texas Instruments compiler warnings
+ Fix compilation issues with limits.h for some versions of gcc
+ Fix compilation issues with Clang/C2
+ Fix implicit fallthrough warnings in gcc 7
+ Fix unknown attribute directive warnings in gcc 8
+ Fix cray++ compiler errors
+ Fix unsigned integer overflow errors with -fsanitize=integer
+ Fix undefined behavior sanitizer issues in compact mode
OBS-URL: https://build.opensuse.org/request/show/595366
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/pugixml?expand=0&rev=11
* New integer parsing/formatting implementation
+ Functions that convert from and to integers (e.g. as_int/set_value)
do not rely on CRT any more.
+ New implementation is 3-5x faster and is always correct wrt
overflow or underflow. This is a behavior change - where previously
as_uint() would return UINT_MAX on a value "-1", it now returns 0.
* New features
+ XPath objects (xpath_query, xpath_node_set, xpath_variable_set)
are now movable if your compiler supports C++11. Additionally,
xpath_variable_set is copyable.
+ Added format_indent_attributes that makes the resulting XML friendlier
to line diff/merge tools.
+ Added a variant of xml_node::attribute function with a hint that
can improve lookup performance.
+ Custom allocation functions are now allowed (but not required)
to throw instead of returning a null pointer.
* Bug fixes
+ Fix Clang 3.7 crashes in out-of-memory cases (C++ DR 1748)
+ Fix xpath_node_set assignment to provide strong exception guarantee
+ Fix saving for custom xml_writer implementations that can throw from write()
- Add pugixml-config.patch to enable long long support, works better than
enabling via build flags.
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/pugixml?expand=0&rev=7