NEWS 18.9 KB
Newer Older
Murray Cumming's avatar
Murray Cumming committed
1 2 3 4 5 6 7 8 9 10
2.39.2 (unstable):

* SaxParser: Fix “double free or corruption” if a std::exception is thrown
  by a handler method.
  (Daniel Trebbien, Kjell Ahlstedt)
* Replace some (deprecated in C++11) std::auto_ptr by std::unique_ptr.
  There are still some auto_ptrs in header files bug replacing them would
  break ABI.
  (Kjell Ahlstedt) Bug #753123.

Murray Cumming's avatar
Murray Cumming committed
11 12 13 14 15
2.39.1 (unstable):

* Use (and require) C++11.
  (Murray Cumming)

Murray Cumming's avatar
Murray Cumming committed
16 17 18 19 20 21 22 23 24 25
2.38.1 (stable):

* Fix the build with C++11 compilers, such as MS Visual C++ 2013 - Implicit
  conversions from streams to bool are no longer allowed.)
  (Mikhail Titov)
* Build: Disable deprecated API in dependencies if --enable-warnings=fatal
  (Kjell Ahlstedt)
* Build: Require libxml2 2.7.7 or later
  (Kjell Ahlstedt)

Kjell Ahlstedt's avatar
Kjell Ahlstedt committed
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
2.38.0 (stable):

This stable version is identical to the unstable version 2.37.2.

API additions since 2.36:

* Add Node::add_child_with_new_ns().
  (Kjell Ahlstedt) Bug #737682 (Mathias Lorente)
* Add XsdSchema and XsdValidator classes. Deprecate Schema and SchemaValidator.
  Add RelaxNGSchema and RelaxNGValidator.
  (Kjell Ahlstedt) Bug #737712 (Michel Stam)
  Thanks to Tjalling Hattink, who made initial versions of the RelaxNG classes.
* Parser: Add input operator>>(std::istream& in, Parser& parser).
  (Kjell Ahlstedt) Bug #329281 (Pierre Thierry)
* Parser: Add [set|get]_include_default_attributes() and
  [set|get]_parser_options().
  (Kjell Ahlstedt) Bug #701674 (Bob Nolty)

Kjell Ahlstedt's avatar
Kjell Ahlstedt committed
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
2.37.2 (unstable):

* Add version information to libxml++config.h.
  (Kjell Ahlstedt)
* Document: Avoid possible null pointer dereference.
  (Gaurav) Bug #732604
* Element::set_namespace_declaration(): Update the node's associated namespace.
  Add dom_update_namespace example program.
  (Mathias Lorente) Bug #737682
* Add Node::add_child_with_new_ns().
  (Kjell Ahlstedt) Bug #737682 (Mathias Lorente)
* Schema: Don't use null pointers in get_name(), get_target_namespace()
  and get_version().
  (Kjell Ahlstedt)
* Add XsdSchema and XsdValidator. Deprecate Schema and SchemaValidator.
  Add RelaxNGSchema and RelaxNGValidator.
  (Kjell Ahlstedt) Bug #737712 (Michel Stam)
  Thanks to Tjalling Hattink, who made initial versions of the RelaxNG classes.
* Parser: Add input operator>>(std::istream& in, Parser& parser).
  (Kjell Ahlstedt) Bug #329281 (Pierre Thierry)

Documentation:
* Use doxygen-extra.css from the mm-common package.
  Requires mm-common 0.9.7 when configured to use maintainer-mode.
  (Kjell Ahlstedt)

Build:
* Avoid infinite loop with Doxygen 1.8.6.
  (Kjell Ahlstedt)

74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
2.37.1 (unstable):

* Parser: Add [set|get]_include_default_attributes().
  (Kjell Ahlstedt) Bug #701674 (Bob Nolty)
* Improve some null-pointer checks
  (Kjell Ahlstedt) Bug #705187 (Gaurav)

Documentation:
* Manual: Add XIncludeStart and XIncludeEnd to the node type tree.
  (Kjell Ahlstedt)
* Update Doxyfile.in for doxygen 1.8.3.
  (Kjell Ahlstedt)

Build:
* Fix examples/Makefile.am for new versions of automake.
  (Kjell Ahlstedt) Bug #678390
* Examples dom_parse_entities and dom_parser: Fix when LC_ALL=C.
  (Murray Cumming) Bug #702136 (Michael Biebl)

2.36.0 (stable):
Murray Cumming's avatar
Murray Cumming committed
94 95 96 97 98 99 100 101 102

* Element::set_namespace_declaration():
  It is not an error to set the same URI twice.
  (Kjell Ahlstedt) Bug #635846, comment 27.
* Require libxml-2.0 >= 2.7.3.
  (Kjell Ahlstedt)
* Parser::initialize_context(): Call xmlCtxtUseOptions().
  (Kjell Ahlstedt)

Murray Cumming's avatar
Murray Cumming committed
103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124
2.35.4 (unstable):

* Document:
  - Add process_xinclude(), using new XIncludeStart
    and XIncludeEnd classes, derived from Node.
    (Kjell Ahlsted) Bug #338521.
  - Make the Document(xmlDoc*) constructor public.
    (Kjell Ahlsted) Bug #668980.
* Parser: Make it thread-safe.
  (Kjell Ahlstedt) Bug #681467.
* Schema::set_document(): If the argument 'document' is 0 then
  create an empty document, as the documentation says.
  (Kjell Ahlstedt)
* Improve the error handling.
  (Kjell Ahlstedt) Bug #635846.
* Documentation:
  - Add incremental parsing to the SaxParser example program.
  - DtdValidation and SchemaValidation: Print all exception information.
  - Improve error descriptions.
    (Kjell Ahlstedt)


Murray Cumming's avatar
Murray Cumming committed
125 126 127 128 129 130 131 132 133 134 135 136 137
2.35.3 (unstable):

* Node:
  - Add eval_to_[boolean|number|string]() methods.
  (Kjell Ahlstedt) Bug #316244
  - Fix memory problems in import_node().
  (Kjell Ahlstedt) Bug #672992
* Build:
  - The examples are now built and run during make check.
  (Kjell Ahlstedt) Bug #678390
  - Define LIBXMLCPP_EXCEPTIONS_ENABLED unconditionally.
  (Kjell Ahlstedt)

Murray Cumming's avatar
Murray Cumming committed
138 139 140 141 142 143 144
2.35.2 (unstable):

* Node: Add get_first_child().
  (Murray Cumming, Based on a patch by Ilya Murav'jov in bug #648125)
* Build: Remove the --disable-api-exceptions configure option.
  (Murray Cumming)

Murray Cumming's avatar
Murray Cumming committed
145 146 147 148 149 150 151 152 153 154 155
2.35.1 (unstable):

* Handle attributes with default values correctly.
  (Kjell Ahlstedt) Bug #669635.
* Improved handling of entity references and processing instructions.
  (Kjell Ahlstedt) Bug #669481
* Parser: Throw more detailed error messages.
  (Kjell Ahlstedt) Bug #304020 (Virgile Devaux)
* Document: Make the Document(xmlDoc*) constructor protected.
  (Murray Cumming) Bug #668980 (A. Pignotti).

Murray Cumming's avatar
Murray Cumming committed
156 157 158 159 160 161 162 163
2.34.2 (stable):

* Element: Add add_child_cdata(), like the existing add_child_text().
* Node::create_new_child_node(): Use the default namespace if none is specified.
  (Mathias Lorente) Bug #656110
* Documentation: Fix a markup typo.
  (Murray Cumming)
	
Murray Cumming's avatar
Murray Cumming committed
164 165 166 167 168
2.34.1 (stable):

* Do not require mm-common during the tarball build.
  (Murray Cumming)

Murray Cumming's avatar
Murray Cumming committed
169
2.34.0 (stable):
Murray Cumming's avatar
Murray Cumming committed
170

Murray Cumming's avatar
Murray Cumming committed
171
Major changes since 2.32:
Murray Cumming's avatar
Murray Cumming committed
172 173 174 175 176 177 178 179 180 181

* Allow separate and multi-threaded libxml2 usage by
  not using the global xmlRegisterNodeDefault() and xmlDeregisterNodeDefault()
  callbacks.
  (Alessandro Pignotti)
* Do not call xmlCleanupParser() when the library is unloaded,
  because it is brutal and can break other parts of applications that try to
  use libxml separately.
  (Murray Cumming)

Murray Cumming's avatar
Murray Cumming committed
182 183
2.33.2 (unstable):

Murray Cumming's avatar
Murray Cumming committed
184
* Node::remove_child(): Fix a memory management problem introduced in
Murray Cumming's avatar
Murray Cumming committed
185 186
  2.33.1.
  (Murray Cumming)
Murray Cumming's avatar
Murray Cumming committed
187
* Document::do_write_to_stream(), Schema::set_document(): Check the results from
Murray Cumming's avatar
Murray Cumming committed
188 189
	xmlSchemaNewDocParserCtxt() and xmlSaveFormatFileTo().
  (Murray Cumming) Bug #635846 (Markus Elfring)
Murray Cumming's avatar
Murray Cumming committed
190

191
2.33.1 (unstable):
Murray Cumming's avatar
Murray Cumming committed
192

Murray Cumming's avatar
Murray Cumming committed
193 194
* (Hopefully) allow separate and multi-threaded libxml2 usage by
  not using the global xmlRegisterNodeDefault() and xmlDeregisterNodeDefault()
Murray Cumming's avatar
Murray Cumming committed
195 196
  callbacks.
  (Alessandro Pignotti)
Murray Cumming's avatar
Murray Cumming committed
197 198
* Do not call xmlCleanupParser() when the library is unloaded,
  because it is brutal and can break other parts of applications that try to
Murray Cumming's avatar
Murray Cumming committed
199 200 201 202 203 204
  use libxml separately.
  (Murray Cumming)
* Minor code improvement.
  (Knut Aksel Røysland)
* Build: Build the examples by default.
  (Murray Cumming)
Murray Cumming's avatar
Murray Cumming committed
205

Murray Cumming's avatar
Murray Cumming committed
206 207 208 209 210 211 212 213
2.32.0 (stable):

* Node::find(): Check xmlNode::type for a XML_NAMESPACE_DECL to prevent a
  crash/corruption.
  (Murray Cumming) Bug #386013 (Max Kirillov)
* Build: Added an MSVC .net 2010 and 64-bit Windows builds.
  (Armin Burgmeier)

Murray Cumming's avatar
Murray Cumming committed
214 215 216 217 218 219 220 221 222
2.30.1 (stable):

* Documentation:
  - Added main page doxygen text.
  (David King, Murray Cumming)
  - Show NodeList.
  (Murray Cumming) Bug #583412 (Hubert Figuiere).
  - Correct some @newin tags.
  (Murray Cumming)
Murray Cumming's avatar
Murray Cumming committed
223

Murray Cumming's avatar
Murray Cumming committed
224
2.30.0(stable):
David King's avatar
David King committed
225 226 227 228 229 230 231

* Build system rewrite.
* Use mm-common for reference documentation generation. Fixes GNOME bugs
  #583411 (Hubert Figuiere), #614260 (David King) and #551501 (Johannes Schmid)
* Fix several compiler warnings.
* Use 0 instead of NULL. (Murray Cumming)

Murray Cumming's avatar
Murray Cumming committed
232
2.26.1(stable):
Johannes Schmid's avatar
Johannes Schmid committed
233 234 235 236

* Build fixes
* Build without exceptions

Murray Cumming's avatar
Murray Cumming committed
237
2.26.0(stable):
Murray Cumming's avatar
Murray Cumming committed
238 239 240

* Increased version number to match GNOME 2.26.

Murray Cumming's avatar
Murray Cumming committed
241
2.24.3 (stable):
Murray Cumming's avatar
Murray Cumming committed
242 243

* TextReader: Actually throw exceptions on errors.
Murray Cumming's avatar
Murray Cumming committed
244
  (This breaks ABI but we do not believe that this class could be used with
Murray Cumming's avatar
Murray Cumming committed
245 246 247 248 249
  this problem so it should not actually break any application.)
  Bug #348006.
* Build: Windows: Remove unnecessary vsnprint define.
  (Armin Burgmeier)

Murray Cumming's avatar
Murray Cumming committed
250
2.24.2 (stable):
Armin Burgmeier's avatar
Armin Burgmeier committed
251 252 253 254 255 256

* Fixed another two memory leaks.
  (Armin Burgmeier) Bug #563321 (Arjan Franzen)
* Removed obsolete MSVC6 project files
  (Armin Burgmeier)

Murray Cumming's avatar
Murray Cumming committed
257
2.24.1 (stable):
258 259 260 261 262 263 264 265

* Added new Schema and SchemaValidator classes to MSVC project files
  (Arjan Franzen, Arming Burgmeier) Bug #563664.
* Avoid a memory leak in Validator::check_for_exception.
  (Arjan Franzen, Murray Cumming) Bug #563321.
* Avoid a memory leak in schema class.
  (Balazs Tirpak, Murray Cumming) Bug #312216.

Murray Cumming's avatar
Murray Cumming committed
266
2.24.0 (stable):
Murray Cumming's avatar
Murray Cumming committed
267 268 269 270 271

Changes since 2.22:

* Attribute: Return the correct value even when using a namespace.
  (Murray Cumming) Bug #547689 (Sergei Fedorov)
Murray Cumming's avatar
Murray Cumming committed
272
* Added Schema and SchemaValidator classes, demonstrated in
Murray Cumming's avatar
Murray Cumming committed
273 274
  examples/schemavalidation.
  (Emilien KIA) Bug #312216.
Murray Cumming's avatar
Murray Cumming committed
275
* Element: Added add_child_text() with a previous_node parameter, for adding
Murray Cumming's avatar
Murray Cumming committed
276
  between existing nodes. Added add_child_text_before() too.
Murray Cumming's avatar
Murray Cumming committed
277
* Node: Added add_child() with a previous_node parameter, for adding between
Murray Cumming's avatar
Murray Cumming committed
278 279 280 281 282 283
  existing nodes. Added add_child_before() too.
  (Murray Cumming)
* SaxParser: added parse_chunk_raw().
  (Armin Burgmeier)


Murray Cumming's avatar
Murray Cumming committed
284
2.23.3 (unstable):
Murray Cumming's avatar
Murray Cumming committed
285 286 287 288 289 290

* Attribute: Return the correct value even when using a namespace.
  (Murray Cumming) Bug #547689 (Sergei Fedorov)
* Fixed MSVC++ Windows build.
  (Armin Burgmeier)

Murray Cumming's avatar
Murray Cumming committed
291
2.23.2 (unstable):
Murray Cumming's avatar
Murray Cumming committed
292 293 294

* SaxParser: added parse_chunk_raw().
  (Armin Burgmeier)
Murray Cumming's avatar
Murray Cumming committed
295
* examples: sax_parser: Catch convert errors when printing an exception to
Murray Cumming's avatar
Murray Cumming committed
296 297 298
  std:cout, though libxml++/libxml should always supply valid UTF-8.
  (Murray Cumming)

Murray Cumming's avatar
Murray Cumming committed
299
2.23.1 (unstable):
300

Murray Cumming's avatar
Murray Cumming committed
301
* Added Schema and SchemaValidator classes, demonstrated in
302 303
  examples/schemavalidation.
  (Emilien KIA) Bug #312216.
Murray Cumming's avatar
Murray Cumming committed
304
* Element: Added add_child_text() with a previous_node parameter, for adding
305
  between existing nodes. Added add_child_text_before() too.
Murray Cumming's avatar
Murray Cumming committed
306
* Node: Added add_child() with a previous_node parameter, for adding between
307 308 309
  existing nodes. Added add_child_before() too.
  (Murray Cumming)

Murray Cumming's avatar
Murray Cumming committed
310
2.22.0 (stable):
Murray Cumming's avatar
Murray Cumming committed
311

Murray Cumming's avatar
Murray Cumming committed
312
* Document: Fix a memory leak, by calling xmlCleanupParser
Murray Cumming's avatar
Murray Cumming committed
313 314 315 316 317
  in the destructor.
  (Deng Xiyue) Bug #501168 (Matt G.)
* Build: Fix the build with gcc 4.3 pre-releases.
  (Martin Michlmayr) Bug #510053.

Murray Cumming's avatar
Murray Cumming committed
318
2.20.0 (stable):
319 320

Changes since 2.18:
Murray Cumming's avatar
Murray Cumming committed
321
* Element: Added get_attribute_value(),
322 323
  to get a simple text value for an attribute.
  (Stef Walter) Bug #373573.
Murray Cumming's avatar
Murray Cumming committed
324 325
* Added an experimental --enable-api-exceptions
  configure option, to allow libxml++ to build without
326 327
  exceptions.
  (Murray Cumming)
Murray Cumming's avatar
Murray Cumming committed
328

Murray Cumming's avatar
Murray Cumming committed
329
2.19.2 (unstable):
Murray Cumming's avatar
Murray Cumming committed
330

Murray Cumming's avatar
Murray Cumming committed
331 332
* Added an experimental --enable-api-exceptions
  configure option, to allow libxml++ to build without
Murray Cumming's avatar
Murray Cumming committed
333 334
  exceptions.

Murray Cumming's avatar
Murray Cumming committed
335
2.19.1(unstable):
Murray Cumming's avatar
Murray Cumming committed
336

Murray Cumming's avatar
Murray Cumming committed
337
* Element.h: Added get_attribute_value(),
Murray Cumming's avatar
Murray Cumming committed
338 339 340
  to get a simple text value for an attribute.
  (Stef Walter) Bug #373573.

Murray Cumming's avatar
Murray Cumming committed
341
2.18.2 (stable):
Murray Cumming's avatar
Murray Cumming committed
342

Murray Cumming's avatar
Murray Cumming committed
343
* TextReader: get_name(): Fixed a memory leak.
Murray Cumming's avatar
Murray Cumming committed
344 345
  (Christophe de Vienne) Bug #447535.

Murray Cumming's avatar
Murray Cumming committed
346
2.18.1 (stable):
347

Murray Cumming's avatar
Murray Cumming committed
348
* Document::add_comment,
Murray Cumming's avatar
Murray Cumming committed
349
  Element: add_child_text(), add_child_comment():
Murray Cumming's avatar
Murray Cumming committed
350 351
  avoid accessing freed memory. (Murray Cumming)

Murray Cumming's avatar
Murray Cumming committed
352
2.18.0(stable):
Murray Cumming's avatar
Murray Cumming committed
353 354 355 356 357 358

* Slight win32 build improvement, possibly.
  (Artur Wegele)
* Slight improvement to examples.
  (Murray Cumming)

Murray Cumming's avatar
Murray Cumming committed
359
2.17.2 (unstable):
Murray Cumming's avatar
Murray Cumming committed
360 361 362 363 364

* Node: Adedd get_next_sibling() and get_previous_sibling().
  Bug #351867.
  (Nate Nielsen)

Murray Cumming's avatar
Murray Cumming committed
365
2.17.1 (unstable):
Murray Cumming's avatar
Murray Cumming committed
366 367

* Node: Added get_parent() Bug #351876 (Patch by Nate Nielsen)
Murray Cumming's avatar
Murray Cumming committed
368
* TextReader: Added TextReader(const char* data) constructor, for
Murray Cumming's avatar
Murray Cumming committed
369 370 371 372 373 374 375
  parsing memory buffers. Bug #351215 (Patch by Nate Nielsen)
* Element::set_attribute(): Really return the new attribute.
  Bug #361950 (Patch by Nate Nielsen)
* Build: Added MS Visual Studio 2005 project files.
  (Cedric Gustin)


Murray Cumming's avatar
Murray Cumming committed
376
2.14 (stable):
377 378 379 380

* Documentation:
  - Improved ContentNode documentation (Murray Cumming)

Murray Cumming's avatar
Murray Cumming committed
381
2.13.1 (unstable):
Murray Cumming's avatar
Murray Cumming committed
382 383 384

* First unstable 2.13.x release, to become stable 2.14.x, for GNOME 2.14.
* Node:
Murray Cumming's avatar
Murray Cumming committed
385
  - Added find() overload that takes namespaces to register during the search,
Murray Cumming's avatar
Murray Cumming committed
386
  using xmlXPathRegisterNs(). Bug #323935. (Robert Fleming)
Murray Cumming's avatar
Murray Cumming committed
387
  - set_namespace(): When creating a default namespace, avoid the
Murray Cumming's avatar
Murray Cumming committed
388 389 390 391 392 393 394 395 396
  "The namespace () has not been declared" warning, by passing 0 to
  xmlSearchNs() instead of an empty string. Bug #318186.
  (Erik Oestby).
* Build: Fix buildir!=srcdir builds. Bug #319863.(Vadim Zeitlin)
* Documentation:
  - Tutorial: Mention pkg-config.
  - Reference: Grammar fixes and a small fix for find().
  (Murray Cumming)

Murray Cumming's avatar
Murray Cumming committed
397
2.12.0 (stable):
398 399 400

* Added the state "Reading" to xml Reader States list.

Murray Cumming's avatar
Murray Cumming committed
401
2.11.0 (unstable):
402 403 404 405 406 407

* First unstable 2.11.x release, to become stable 2.12.x
* Fixed Document::set_entity_declaration behavior (Murray Cumming)
* Updated MSVC.Net2003 project files (Cedric Gustin)
* Fixed bugs #301727, #301712, #156352, #161825, #307481, #314419

Murray Cumming's avatar
Murray Cumming committed
408
2.10.0 (stable):
409 410 411

* Fixed documentation packaging problems (Murray Cumming, Christophe de Vienne)

Murray Cumming's avatar
Murray Cumming committed
412
2.9.2 (unstable):
413 414 415

* Added MSVC .Net 2003 support (Cedric Gustin)
* Improved documentation + Added a manual (Murray Cumming)
416
* Fixed a bug in utf8 handling in Document::do_write_to_string (Murray Cumming)
417

Murray Cumming's avatar
Murray Cumming committed
418
2.9.1 (unstable):
Murray Cumming's avatar
Murray Cumming committed
419 420

* First unstable 2.9.x release, to become stable 2.10.x.
Murray Cumming's avatar
Murray Cumming committed
421
* DomParser, SaxParser: Added
Murray Cumming's avatar
Murray Cumming committed
422 423 424
  parse_memory_raw(const unsigned char* contents, size_type bytes)
  for parsing non-utf8 text or text of unknown encoding.

Murray Cumming's avatar
Murray Cumming committed
425
2.8.0 (stable):
426 427 428

* Code Cleaning.

429 430 431
* Changes compared to libxml++ 2.7:
  - Added Validator and DtdValidator classes.

Murray Cumming's avatar
Murray Cumming committed
432
2.7.1 (unstable):
433 434 435

* Fixed bug #150082 (Christophe de Vienne)

Murray Cumming's avatar
Murray Cumming committed
436
2.7.0 (unstable):
437 438 439

* Added Validator and DtdValidator (Guillaume Arreckx)

Murray Cumming's avatar
Murray Cumming committed
440
2004-05-05 2.6.1 (stable):
441 442

* Fixed an issue (#141824) with Glib::ustring.
443
* Fixed ContentNode::SetContent behavior.
444

Murray Cumming's avatar
Murray Cumming committed
445
2004-04-13 2.6.0 (stable):
Christophe de Vienne's avatar
Christophe de Vienne committed
446 447 448

* Corrected constness of TextReader::get_current_node (Murray Cumming)

Murray Cumming's avatar
Murray Cumming committed
449
2004-03-02 2.5.2 (unstable):
450 451 452 453

* Fixed bug #134390: "SEGFAULT in Element::get_attribute" (John Coyle)
* Code cleaning.

Murray Cumming's avatar
Murray Cumming committed
454
2004-02-09 2.5.1 (unstable):
455 456 457 458 459 460

* Introduced Glib::ustring instead of std::string (Murray Cumming)
* Added Document::create_root_node_by_import (Kim Garrison)
* Fixed bugs #131018, #131329 and #132014.
* Added TextReader interface (Christophe de Vienne)

Murray Cumming's avatar
Murray Cumming committed
461
2003-12-18 1.0.0 (stable):
Christophe de Vienne's avatar
Christophe de Vienne committed
462 463 464 465

* Updated msvc files (Ephraim Vider)
* Fixed an issue in SaxParser (Murray Cumming)

Murray Cumming's avatar
Murray Cumming committed
466
2003-12-08 0.28 (unstable):
Christophe de Vienne's avatar
Christophe de Vienne committed
467 468 469 470 471 472

* Added entity handling to the SAX parser + examples (Dan Dennedy and Murray Cumming)
* Replaced SaxParser::AttributeMap with an ordered container (Christophe de Vienne)
* Fixed an issue with threading (Christophe de Vienne)
* Complete switched to pkg-config (Christophe de Vienne)

Murray Cumming's avatar
Murray Cumming committed
473
2003-11-05 0.27 (unstable):
Christophe de Vienne's avatar
Christophe de Vienne committed
474 475 476 477 478 479 480

* Completed documentation
* Added Element::add_comment (Dan Dennedy)
* Wrapped xmlIO output buffers and added Document::write_to_stream (Christophe de Vienne)
* Cleaned and made more consistent Element API (Murray Cumming)
* Added entities support in DomParser (Murray Cumming)

Murray Cumming's avatar
Murray Cumming committed
481
2003-09-23 0.26 (unstable):
Christophe de Vienne's avatar
Christophe de Vienne committed
482 483 484 485 486 487 488

* Added import_node example into MSVC6 project files (Ephraim Vider)
* Node::import_node now takes a const Node (suggested by Rafael Vuijk)
* Fixed threading issue due to incorrect libxml2 initialisation (Fredrik Arnerup)
* Updated Doxyfile (Christophe de Vienne)
* Added Namespaces support (Dan Dennedy, Murray Cumming)

Murray Cumming's avatar
Murray Cumming committed
489
2003-07-18 0.25 (unstable):
Christophe de Vienne's avatar
Christophe de Vienne committed
490 491 492 493 494 495 496

* Fixed MSVC6 project files (Ephraim Vider)
* Added Node::import_node (Eric Bourque)
* Removed throw specification (Christophe de Vienne).
* Removed old-style autoconf macro for libxml++ detection (Christophe de Vienne).
* Removed unused examples (Murray Cumming)

Murray Cumming's avatar
Murray Cumming committed
497
2003-06-11 0.24 (unstable):
Christophe de Vienne's avatar
Christophe de Vienne committed
498 499 500 501

* Added Document::write_to_file_formatted() and
  Document::write_to_string_formatted() - they add white space indenting.
  (Christophe de Vienne)
Murray Cumming's avatar
Murray Cumming committed
502
* Added ContentNode::is_white_space() to make it easier for applications to
Christophe de Vienne's avatar
Christophe de Vienne committed
503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520
   ignore white space such as indenting. (Murray Cumming)
* Node: Added set_name(). (Christophe de Vienne)
* Compiles with gcc's pedantic warnings as errors.
  (Christophe de Vienne)
* libxml++ header files no longer include any libxml header files.
  (Christophe de Vienne)
* Removed superfluous standalone parse_* methods in document.[h|cc]
  (Murray Cumming)
* Minor reference documentation corrections.
  (Jonathan Wakely)
* Replaced some <istream> with <iostream> to support older compilers.
  (Jonathan Wakely)
* Added classes to wrap the missing node types. (Ephraim Vider).
* Fixed a memory leak in write_to_string[_formatted] functions. (Morten Hanssen)
* Fixed compile error in keepblanks.h with MSVC 6.0. (Christophe de Vienne).
* Fixed segfault in DomParser::parse_stream on parsing failure.
  (Christophe de Vienne).

Murray Cumming's avatar
Murray Cumming committed
521
2003-05-20: 0.23 (unstable):
Christophe de Vienne's avatar
Christophe de Vienne committed
522 523 524 525 526 527 528 529 530 531 532 533 534

* Fixed incorrect use of xmlKeepBlanksDefault. Handling of white spaces
  is now conforming to xml specification. (Christophe de Vienne)
* Classes inherit from NonCopyable to avoid mistakes and clarify the
  memory mangement.
  (Murray Cumming)
* Node::find() returns empty NodeSet if it does not find the path.
  (Andy Glew)
* DomParser: Fixed memory leak. (Christophe de Vienne, Thierry Blanchard)
* Fixed NetBSD compilation (Chistophe de Vienne, Jaka Jejcic)
* Improved .spec.in file. (Eric Bourque)
* Some MSVC++ support and minor corrections. (Ephraim Vider)

Murray Cumming's avatar
Murray Cumming committed
535
0.22 (unstable):
Christophe de Vienne's avatar
Christophe de Vienne committed
536 537 538 539 540 541 542

* DOM Parser:
  - Reduced API duplication - you must now use get_document().
  (Ephraim Vider)
  - Now throws exception if document not found.
  (Christophe de Vienne)
  - Added const get_document() overload. (Murray Cumming)
Murray Cumming's avatar
Murray Cumming committed
543

Murray Cumming's avatar
Murray Cumming committed
544
0.21 (unstable):
Christophe de Vienne's avatar
Christophe de Vienne committed
545 546

* Parsers:
Murray Cumming's avatar
Murray Cumming committed
547
  - Validation now supported: Use Parser::set_validate() to turn on validation.
Christophe de Vienne's avatar
Christophe de Vienne committed
548 549 550 551 552
    Parsers will then throw validation_error exceptions if validation fails.
    (Murray Cumming)
  - SaxParser: Added parse_chunk() for gradual parsing of XML fragments.
    (Ole Laursen)
* Node:
Murray Cumming's avatar
Murray Cumming committed
553
  - Moved add_child_content(), get_child_content(), set_child_content(),
Christophe de Vienne's avatar
Christophe de Vienne committed
554 555 556 557
    and has_content() to Element class.
  - Fixed set_child_content() to add content instead of creating a node.
    (Murray Cumming)
* Added spec file for RPMs. (Eric Bourque)
Murray Cumming's avatar
Murray Cumming committed
558

Christophe de Vienne's avatar
Christophe de Vienne committed
559

Murray Cumming's avatar
Murray Cumming committed
560
2003-02-15: 0.20 (unstable):
Christophe de Vienne's avatar
Christophe de Vienne committed
561 562 563 564 565

* Node::remove_child() now works.
  (Murray Cumming)
* Added examples/dom_xpath.
  (Stefan Seefeld, Murray Cumming)
Murray Cumming's avatar
Murray Cumming committed
566

Murray Cumming's avatar
Murray Cumming committed
567
2003-02-08: 0.19 (unstable):
Christophe de Vienne's avatar
Christophe de Vienne committed
568 569 570 571 572 573 574 575 576 577 578 579 580 581

* The imlementation now uses libxml's API more instead of reimplementing data structures.
  (Stefan Seefeld, Murray Cumming)
* Attribute::get_value() use libxml's API properly, so it now respects the DTD.
  (Stefan Seefeld)
* Node: Added get_path() and find() for xpath lookup. (Stefan Seefeld)
* Attribute now inherits from Node, as required by the find() method. (Stefan Seefeld)
* Added Document class. (Stefan Seefeld)
* Added cobj() accessors, in case you need to use unwrapped libxml API. (Murray Cumming)
* SaxParser:
    Added CDATA section handler.
    fixed a potential buffer overflow problem
  (Valentin Rusu)

Murray Cumming's avatar
Murray Cumming committed
582
2003-01-09: 0.18 (unstable):
Christophe de Vienne's avatar
Christophe de Vienne committed
583 584 585 586 587 588

* big API change for nodes handling : the different types of node now herit
from a base Node class. This, among other advantages, avoids previous ambiguity
on content() acessors meaning.
* little bugfixes and improvements in SaxParser.

Murray Cumming's avatar
Murray Cumming committed
589
2002-12-10: 0.17 (unstable):
Christophe de Vienne's avatar
Christophe de Vienne committed
590 591 592 593 594 595 596 597 598 599

* properties are now called attributes.
* it is now possible to throw exceptions from callback
methods in SaxParser.
* parsers can parse from a stream.
* memory leak fixed in SaxParser.
* configure check for libxml2 2.4.1 at least.
* bug fixes.


Murray Cumming's avatar
Murray Cumming committed
600
2002-11-20: 0.16 (unstable):
Christophe de Vienne's avatar
Christophe de Vienne committed
601 602 603 604 605 606 607 608 609 610 611

* Examples added.
* Xml type name prefix removed.
* Tree replaced with DomParser.
* Parser renamed to SaxParser.
* Property renamed to Attribute
* Errors thrown as exceptions.
* Both parsers can parse from either file or memory.

* Simplified memory management -
  no more returning of static temporaries.
Murray Cumming's avatar
Murray Cumming committed
612
* set_*() methods return void.