1 
   2         NEWS file for libxml2
   3 
   4   Note that this is automatically generated from the news webpage at:
   5        http://xmlsoft.org/news.html
   6 
   7 Items not finished and worked on, get in touch with the list if you want
   8 to help those   - More testing on RelaxNG
   9    - Finishing up XML
  10   Schemas
  11 
  12 The change log at 
  13 ChangeLog.html
  14  describes the recents commits
  15 to the SVN at 
  16 http://svn.gnome.org/viewcvs/libxml2/trunk/
  17  code base.Here is the list of public releases:
  18 2.7.2: Oct 3 2008:
  19    - Portability fix: fix solaris compilation problem, fix compilation
  20         if XPath is not configured in
  21    - Bug fixes: nasty entity bug introduced in 2.7.0, restore old behaviour
  22         when saving an HTML doc with an xml dump function, HTML UTF-8 parsing
  23         bug, fix reader custom error handlers (Riccardo Scussat)
  24     
  25    - Improvement: xmlSave options for more flexibility to save as
  26         XML/HTML/XHTML, handle leading BOM in HTML documents
  27 
  28 
  29 2.7.1: Sep 1 2008:
  30    - Portability fix: Borland C fix (Moritz Both)
  31    - Bug fixes: python serialization wrappers, XPath QName corner
  32         case handking and leaks (Martin)
  33    - Improvement: extend the xmlSave to handle HTML documents and trees
  34    - Cleanup: python serialization wrappers
  35 
  36 
  37 2.7.0: Aug 30 2008:
  38    - Documentation: switch ChangeLog to UTF-8, improve mutithreads and
  39       xmlParserCleanup docs
  40    - Portability fixes: Older Win32 platforms (Rob Richards), MSVC
  41       porting fix (Rob Richards), Mac OS X regression tests (Sven Herzberg),
  42       non GNUCC builds (Rob Richards), compilation on Haiku (Andreas Färber)
  43       
  44    - Bug fixes: various realloc problems (Ashwin), potential double-free
  45       (Ashwin), regexp crash, icrash with invalid whitespace facets (Rob
  46       Richards), pattern fix when streaming (William Brack), various XML
  47       parsing and validation fixes based on the W3C regression tests, reader
  48       tree skipping function fix (Ashwin), Schemas regexps escaping fix
  49       (Volker Grabsch), handling of entity push errors (Ashwin), fix a slowdown
  50       when encoder cant serialize characters on output
  51    - Code cleanup: compilation fix without the reader, without the output
  52       (Robert Schwebel), python whitespace (Martin), many space/tabs cleanups,
  53       serious cleanup of the entity handling code
  54    - Improvement: switch parser to XML-1.0 5th edition, add parsing flags
  55       for old versions, switch URI parsing to RFC 3986,
  56       add xmlSchemaValidCtxtGetParserCtxt (Holger Kaelberer),
  57       new hashing functions for dictionnaries (based on Stefan Behnel work),
  58       improve handling of misplaced html/head/body in HTML parser, better
  59       regression test tools and code coverage display, better algorithms
  60       to detect various versions of the billion laughts attacks, make
  61       arbitrary parser limits avoidable as a parser option
  62 
  63 
  64 2.6.32: Apr 8 2008:
  65    - Documentation: returning heap memory to kernel (Wolfram Sang),
  66       trying to clarify xmlCleanupParser() use, xmlXPathContext improvement
  67       (Jack Jansen), improve the *Recover* functions documentation,
  68       XmlNodeType doc link fix (Martijn Arts)
  69    - Bug fixes: internal subset memory leak (Ashwin), avoid problem with
  70       paths starting with // (Petr Sumbera), streaming XSD validation callback
  71       patches (Ashwin), fix redirection on port other than 80 (William Brack),
  72       SAX2 leak (Ashwin), XInclude fragment of own document (Chris Ryan),
  73       regexp bug with '.' (Andrew Tosh), flush the writer at the end of the
  74       document (Alfred Mickautsch), output I/O bug fix (William Brack),
  75       writer CDATA output after a text node (Alex Khesin), UTF-16 encoding
  76       detection (William Brack), fix handling of empty CDATA nodes for Safari
  77       team, python binding problem with namespace nodes, improve HTML parsing
  78       (Arnold Hendriks), regexp automata build bug, memory leak fix (Vasily
  79       Chekalkin), XSD test crash, weird system parameter entity parsing problem,
  80       allow save to file:///X:/ windows paths, various attribute normalisation
  81       problems, externalSubsetSplit fix (Ashwin), attribute redefinition in
  82       the DTD (Ashwin), fix in char ref parsing check (Alex Khesin), many
  83       out of memory handling fixes (Ashwin), XPath out of memory handling fixes
  84       (Alvaro Herrera), various realloc problems (Ashwin), UCS4 encoding
  85       conversion buffer size (Christian Fruth), problems with EatName
  86       functions on memory errors, BOM handling in external parsed entities
  87       (Mark Rowe)
  88    - Code cleanup: fix build under VS 2008 (David Wimsey), remove useless
  89       mutex in xmlDict (Florent Guilian), Mingw32 compilation fix (Carlo
  90       Bramini), Win and MacOS EOL cleanups (Florent Guiliani), iconv need
  91       a const detection (Roumen Petrov), simplify xmlSetProp (Julien Charbon),
  92       cross compilation fixes for Mingw (Roumen Petrov), SCO Openserver build
  93       fix (Florent Guiliani), iconv uses const on Win32 (Rob Richards),
  94       duplicate code removal (Ashwin), missing malloc test and error reports
  95       (Ashwin), VMS makefile fix (Tycho Hilhorst)
  96    - improvements: better plug of schematron in the normal error handling
  97       (Tobias Minich)
  98 
  99 
 100 2.6.31: Jan 11 2008:
 101    - Security fix: missing of checks in UTF-8 parsing
 102    - Bug fixes: regexp bug, dump attribute from XHTML document, fix
 103       xmlFree(NULL) to not crash in debug mode, Schematron parsing crash
 104       (Rob Richards), global lock free on Windows (Marc-Antoine Ruel),
 105       XSD crash due to double free (Rob Richards), indentation fix in
 106       xmlTextWriterFullEndElement (Felipe Pena), error in attribute type
 107       parsing if attribute redeclared, avoid crash in hash list scanner if
 108       deleting elements, column counter bug fix (Christian Schmidt),
 109       HTML embed element saving fix (Stefan Behnel), avoid -L/usr/lib
 110       output from xml2-config (Fred Crozat), avoid an xmllint crash 
 111       (Stefan Kost), don't stop HTML parsing on out of range chars.
 112       
 113    - Code cleanup: fix open() call third argument, regexp cut'n paste
 114       copy error, unused variable in __xmlGlobalInitMutexLock (Hannes Eder),
 115       some make distcheck realted fixes (John Carr)
 116    - Improvements: HTTP Header: includes port number (William Brack),
 117       testURI --debug option, 
 118 
 119 
 120 2.6.30: Aug 23 2007:
 121    - Portability: Solaris crash on error handling, windows path fixes
 122       (Roland Schwarz and Rob Richards), mingw build (Roland Schwarz)
 123    - Bugfixes: xmlXPathNodeSetSort problem (William Brack), leak when
 124       reusing a writer for a new document (Dodji Seketeli), Schemas
 125       xsi:nil handling patch (Frank Gross), relative URI build problem
 126       (Patrik Fimml), crash in xmlDocFormatDump, invalid char in comment
 127       detection bug, fix disparity with xmlSAXUserParseMemory, automata
 128       generation for complex regexp counts problems, Schemas IDC import
 129       problems (Frank Gross), xpath predicate evailation error handling
 130       (William Brack)
 131 
 132 
 133 2.6.29: Jun 12 2007:
 134    - Portability: patches from Andreas Stricke for WinCEi,
 135       fix compilation warnings (William Brack), avoid warnings on Apple OS/X
 136       (Wendy Doyle and Mark Rowe), Windows compilation and threading
 137       improvements (Rob Richards), compilation against old Python versions,
 138       new GNU tar changes (Ryan Hill)
 139    - Documentation: xmlURIUnescapeString comment, 
 140    - Bugfixes: xmlBufferAdd problem (Richard Jones), 'make valgrind'
 141       flag fix (Richard Jones), regexp interpretation of \,
 142       htmlCreateDocParserCtxt (Jean-Daniel Dupas), configure.in
 143       typo (Bjorn Reese), entity content failure, xmlListAppend() fix
 144       (Georges-André Silber), XPath number serialization (William Brack),
 145       nanohttp gzipped stream fix (William Brack and Alex Cornejo),
 146       xmlCharEncFirstLine typo (Mark Rowe), uri bug (François Delyon),
 147       XPath string value of PI nodes (William Brack), XPath node set
 148       sorting bugs (William Brack), avoid outputting namespace decl
 149       dups in the writer (Rob Richards), xmlCtxtReset bug, UTF-8 encoding
 150       error handling, recustion on next in catalogs, fix a Relax-NG crash,
 151       workaround wrong file: URIs, htmlNodeDumpFormatOutput on attributes,
 152       invalid character in attribute detection bug, big comments before 
 153       internal subset streaming bug, HTML parsing of attributes with : in
 154       the name, IDness of name in HTML (Dagfinn I. Mannsåker) 
 155    - Improvement: keep URI query parts in raw form (Richard Jones),
 156       embed tag support in HTML (Michael Day) 
 157 
 158 
 159 2.6.28: Apr 17 2007:
 160    - Documentation: comment fixes (Markus Keim), xpath comments fixes too
 161       (James Dennett)
 162    - Bug fixes: XPath bug (William Brack), HTML parser autoclose stack usage
 163       (Usamah Malik), various regexp bug fixes (DV and William), path conversion
 164       on Windows (Igor Zlatkovic), htmlCtxtReset fix (Michael Day), XPath
 165       principal node of axis bug, HTML serialization of some codepoint
 166       (Steven Rainwater), user data propagation in XInclude (Michael Day),
 167       standalone and XML decl detection (Michael Day), Python id ouptut
 168       for some id, fix the big python string memory leak, URI parsing fixes
 169       (Stéphane Bidoul and William), long comments parsing bug (William),
 170       concurrent threads initialization (Ted Phelps), invalid char
 171       in text XInclude (William), XPath memory leak (William), tab in
 172       python problems (Andreas Hanke), XPath node comparison error
 173       (Oleg Paraschenko), cleanup patch for reader (Julien Reichel),
 174       XML Schemas attribute group (William), HTML parsing problem (William),
 175       fix char 0x2d in regexps (William), regexp quantifier range with
 176       min occurs of 0 (William), HTML script/style parsing (Mike Day)
 177    - Improvement: make xmlTextReaderSetup() public
 178    - Compilation and postability: fix a missing include problem (William),
 179       __ss_familly on AIX again (Björn Wiberg), compilation without zlib
 180       (Michael Day), catalog patch for Win32 (Christian Ehrlicher),
 181       Windows CE fixes (Andreas Stricke)
 182    - Various CVS to SVN infrastructure changes
 183 
 184 
 185 2.6.27: Oct 25 2006:
 186    - Portability fixes: file names on windows (Roland Schwingel, 
 187       Emelyanov Alexey), windows compile fixup (Rob Richards), 
 188       AIX iconv() is apparently case sensitive
 189    - improvements: Python XPath types mapping (Nic Ferrier), XPath optimization
 190       (Kasimier), add xmlXPathCompiledEvalToBoolean (Kasimier), Python node
 191       equality and comparison (Andreas Pakulat), xmlXPathCollectAndTest
 192       improvememt (Kasimier), expose if library was compiled with zlib 
 193       support (Andrew Nosenko), cache for xmlSchemaIDCMatcher structs
 194       (Kasimier), xmlTextConcat should work with comments and PIs (Rob
 195       Richards), export htmlNewParserCtxt needed by Michael Day, refactoring
 196       of catalog entity loaders (Michael Day), add XPointer support to 
 197       python bindings (Ross Reedstrom, Brian West and Stefan Anca), 
 198       try to sort out most file path to URI conversions and xmlPathToUri,
 199       add --html --memory case to xmllint
 200    - building fix: fix --with-minimum (Felipe Contreras), VMS fix, 
 201       const'ification of HTML parser structures (Matthias Clasen),
 202       portability fix (Emelyanov Alexey), wget autodetection (Peter
 203       Breitenlohner),  remove the build path recorded in the python
 204       shared module, separate library flags for shared and static builds
 205       (Mikhail Zabaluev), fix --with-minimum --with-sax1 builds, fix
 206       --with-minimum --with-schemas builds
 207    - bug fix: xmlGetNodePath fix (Kasimier), xmlDOMWrapAdoptNode and
 208       attribute (Kasimier), crash when using the recover mode, 
 209       xmlXPathEvalExpr problem (Kasimier), xmlXPathCompExprAdd bug (Kasimier),
 210       missing destry in xmlFreeRMutex (Andrew Nosenko), XML Schemas fixes
 211       (Kasimier), warning on entities processing, XHTML script and style
 212       serialization (Kasimier), python generator for long types, bug in
 213       xmlSchemaClearValidCtxt (Bertrand Fritsch), xmlSchemaXPathEvaluate
 214       allocation bug (Marton Illes), error message end of line (Rob Richards),
 215       fix attribute serialization in writer (Rob Richards), PHP4 DTD validation
 216       crasher, parser safety patch (Ben Darnell), _private context propagation
 217       when parsing entities (with Michael Day), fix entities behaviour when 
 218       using SAX, URI to file path fix (Mikhail Zabaluev), disapearing validity
 219       context, arg error in SAX callback (Mike Hommey), fix mixed-content
 220       autodetect when using --noblanks, fix xmlIOParseDTD error handling,
 221       fix bug in xmlSplitQName on special Names, fix Relax-NG element content
 222       validation bug, fix xmlReconciliateNs bug, fix potential attribute 
 223       XML parsing bug, fix line/column accounting in XML parser, chunking bug
 224       in the HTML parser on script, try to detect obviously buggy HTML
 225       meta encoding indications, bugs with encoding BOM and xmlSaveDoc, 
 226       HTML entities in attributes parsing, HTML minimized attribute values,
 227       htmlReadDoc and htmlReadIO were broken, error handling bug in
 228       xmlXPathEvalExpression (Olaf Walkowiak), fix a problem in
 229       htmlCtxtUseOptions, xmlNewInputFromFile could leak (Marius Konitzer),
 230       bug on misformed SSD regexps (Christopher Boumenot)
 231       
 232    - documentation: warning about XML_PARSE_COMPACT (Kasimier Buchcik),
 233       fix xmlXPathCastToString documentation, improve man pages for
 234       xmllitn and xmlcatalog (Daniel Leidert), fixed comments of a few
 235       functions
 236 
 237 
 238 2.6.26: Jun 6 2006:
 239    - portability fixes: Python detection (Joseph Sacco), compilation
 240     error(William Brack and Graham Bennett), LynxOS patch (Olli Savia)
 241    - bug fixes: encoding buffer problem, mix of code and data in
 242     xmlIO.c(Kjartan Maraas), entities in XSD validation (Kasimier Buchcik),
 243     variousXSD validation fixes (Kasimier), memory leak in pattern (Rob
 244     Richards andKasimier), attribute with colon in name (Rob Richards), XPath
 245     leak inerror reporting (Aleksey Sanin), XInclude text include of
 246     selfdocument.
 247    - improvements: Xpath optimizations (Kasimier), XPath object
 248     cache(Kasimier)
 249 
 250 
 251 2.6.25: Jun 6 2006::
 252 Do not use or package 2.6.25
 253 2.6.24: Apr 28 2006:
 254    - Portability fixes: configure on Windows, testapi compile on windows
 255       (Kasimier Buchcik, venkat naidu), Borland C++ 6 compile (Eric Zurcher),
 256       HP-UX compiler workaround (Rick Jones), xml2-config bugfix, gcc-4.1
 257       cleanups, Python detection scheme (Joseph Sacco), UTF-8 file paths on
 258       Windows (Roland Schwingel).
 259       
 260    - Improvements: xmlDOMWrapReconcileNamespaces xmlDOMWrapCloneNode (Kasimier
 261       Buchcik), XML catalog debugging (Rick Jones), update to Unicode 4.01.
 262    - Bug fixes: xmlParseChunk() problem in 2.6.23, xmlParseInNodeContext()
 263       on HTML docs, URI behaviour on Windows (Rob Richards), comment streaming
 264       bug, xmlParseComment (with William Brack), regexp bug fixes (DV &
 265       Youri Golovanov), xmlGetNodePath on text/CDATA (Kasimier),
 266       one Relax-NG interleave bug, xmllint --path and --valid,
 267       XSD bugfixes (Kasimier), remove debug
 268       left in Python bindings (Nic Ferrier), xmlCatalogAdd bug (Martin Cole),
 269       xmlSetProp fixes (Rob Richards), HTML IDness (Rob Richards), a large
 270       number of cleanups and small fixes based on Coverity reports, bug
 271       in character ranges, Unicode tables const (Aivars Kalvans), schemas
 272       fix (Stefan Kost), xmlRelaxNGParse error deallocation, 
 273       xmlSchemaAddSchemaDoc error deallocation, error handling on unallowed
 274       code point, ixmllint --nonet to never reach the net (Gary Coady),
 275       line break in writer after end PI (Jason Viers). 
 276    - Documentation: man pages updates and cleanups (Daniel Leidert).
 277    - New features: Relax NG structure error handlers.
 278 
 279 
 280 2.6.23: Jan 5 2006:
 281    - portability fixes: Windows (Rob Richards), getaddrinfo on Windows
 282     (Kolja Nowak, Rob Richards), icc warnings (Kjartan Maraas),
 283     --with-minimum compilation fixes (William Brack), error case handling fix
 284     on Solaris (Albert Chin), don't use 'list' as parameter name reported by
 285     Samuel Diaz Garcia, more old Unices portability fixes (Albert Chin),
 286     MinGW compilation (Mark Junker), HP-UX compiler warnings (Rick
 287   Jones),
 288    - code cleanup: xmlReportError (Adrian Mouat), remove xmlBufferClose
 289     (Geert Jansen), unreachable code (Oleksandr Kononenko), refactoring
 290     parsing code (Bjorn Reese)
 291    - bug fixes: xmlBuildRelativeURI and empty path (William Brack),
 292     combinatory explosion and performances in regexp code, leak in
 293     xmlTextReaderReadString(), xmlStringLenDecodeEntities problem (Massimo
 294     Morara), Identity Constraints bugs and a segfault (Kasimier Buchcik),
 295     XPath pattern based evaluation bugs (DV & Kasimier),
 296     xmlSchemaContentModelDump() memory leak (Kasimier), potential leak in
 297     xmlSchemaCheckCSelectorXPath(), xmlTextWriterVSprintf() misuse of
 298     vsnprintf (William Brack), XHTML serialization fix (Rob Richards), CRLF
 299     split problem (William), issues with non-namespaced attributes in
 300     xmlAddChild() xmlAddNextSibling() and xmlAddPrevSibling() (Rob Richards),
 301     HTML parsing of script, Python must not output to stdout (Nic Ferrier),
 302     exclusive C14N namespace visibility (Aleksey Sanin), XSD dataype
 303     totalDigits bug (Kasimier Buchcik), error handling when writing to an
 304     xmlBuffer (Rob Richards), runtest schemas error not reported (Hisashi
 305     Fujinaka), signed/unsigned problem in date/time code (Albert Chin), fix
 306     XSI driven XSD validation (Kasimier), parsing of xs:decimal (Kasimier),
 307     fix DTD writer output (Rob Richards), leak in xmlTextReaderReadInnerXml
 308     (Gary Coady), regexp bug affecting schemas (Kasimier), configuration of
 309     runtime debugging (Kasimier), xmlNodeBufGetContent bug on entity refs
 310     (Oleksandr Kononenko), xmlRegExecPushString2 bug (Sreeni Nair),
 311     compilation and build fixes (Michael Day), removed dependancies on
 312     xmlSchemaValidError (Kasimier), bug with <xml:foo/>, more XPath
 313     pattern based evaluation fixes (Kasimier)
 314    - improvements: XSD Schemas redefinitions/restrictions (Kasimier
 315     Buchcik), node copy checks and fix for attribute (Rob Richards), counted
 316     transition bug in regexps, ctxt->standalone = -2 to indicate no
 317     standalone attribute was found, add xmlSchemaSetParserStructuredErrors()
 318     (Kasimier Buchcik), add xmlTextReaderSchemaValidateCtxt() to API
 319     (Kasimier), handle gzipped HTTP resources (Gary Coady), add
 320     htmlDocDumpMemoryFormat. (Rob Richards),
 321    - documentation: typo (Michael Day), libxml man page (Albert Chin), save
 322     function to XML buffer (Geert Jansen), small doc fix (Aron Stansvik),
 323 
 324 
 325 2.6.22: Sep 12 2005:
 326    - build fixes: compile without schematron (Stéphane Bidoul)
 327    - bug fixes: xmlDebugDumpNode on namespace node (Oleg Paraschenko)i,
 328     CDATA push parser bug, xmlElemDump problem with XHTML1 doc,
 329     XML_FEATURE_xxx clash with expat headers renamed XML_WITH_xxx, fix some
 330     output formatting for meta element (Rob Richards), script and style
 331     XHTML1 serialization (David Madore), Attribute derivation fixups in XSD
 332     (Kasimier Buchcik), better IDC error reports (Kasimier Buchcik)
 333    - improvements: add XML_SAVE_NO_EMPTY xmlSaveOption (Rob Richards), add
 334     XML_SAVE_NO_XHTML xmlSaveOption, XML Schemas improvements preparing for
 335     derive (Kasimier Buchcik).
 336    - documentation: generation of gtk-doc like docs, integration with
 337     devhelp.
 338 
 339 
 340 2.6.21: Sep 4 2005:
 341    - build fixes: Cygwin portability fixes (Gerrit P. Haase), calling
 342     convention problems on Windows (Marcus Boerger), cleanups based on Linus'
 343     sparse tool, update of win32/configure.js (Rob Richards), remove warnings
 344     on Windows(Marcus Boerger), compilation without SAX1, detection of the
 345     Python binary, use $GCC inestad of $CC = 'gcc' (Andrew W. Nosenko),
 346     compilation/link with threads and old gcc, compile problem by C370 on
 347     Z/OS,
 348    - bug fixes: http_proxy environments (Peter Breitenlohner), HTML UTF-8
 349     bug (Jiri Netolicky), XPath NaN compare bug (William Brack),
 350     htmlParseScript potential bug, Schemas regexp handling of spaces, Base64
 351     Schemas comparisons NIST passes, automata build error xsd:all,
 352     xmlGetNodePath for namespaced attributes (Alexander Pohoyda), xmlSchemas
 353     foreign namespaces handling, XML Schemas facet comparison (Kupriyanov
 354     Anatolij), xmlSchemaPSimpleTypeErr error report (Kasimier Buchcik), xml:
 355     namespace ahndling in Schemas (Kasimier), empty model group in Schemas
 356     (Kasimier), wilcard in Schemas (Kasimier), URI composition (William),
 357     xs:anyType in Schemas (Kasimier), Python resolver emmitting error
 358     messages directly, Python xmlAttr.parent (Jakub Piotr Clapa), trying to
 359     fix the file path/URI conversion, xmlTextReaderGetAttribute fix (Rob
 360     Richards), xmlSchemaFreeAnnot memleak (Kasimier), HTML UTF-8
 361     serialization, streaming XPath, Schemas determinism detection problem,
 362     XInclude bug, Schemas context type (Dean Hill), validation fix (Derek
 363     Poon), xmlTextReaderGetAttribute[Ns] namespaces (Rob Richards), Schemas
 364     type fix (Kuba Nowakowski), UTF-8 parser bug, error in encoding handling,
 365     xmlGetLineNo fixes, bug on entities handling, entity name extraction in
 366     error handling with XInclude, text nodes in HTML body tags (Gary Coady),
 367     xml:id and IDness at the treee level fixes, XPath streaming patterns
 368   bugs.
 369    - improvements: structured interfaces for schemas and RNG error reports
 370     (Marcus Boerger), optimization of the char data inner loop parsing
 371     (thanks to Behdad Esfahbod for the idea), schematron validation though
 372     not finished yet, xmlSaveOption to omit XML declaration, keyref match
 373     error reports (Kasimier), formal expression handling code not plugged
 374     yet, more lax mode for the HTML parser, parser XML_PARSE_COMPACT option
 375     for text nodes allocation.
 376    - documentation: xmllint man page had --nonet duplicated
 377 
 378 
 379 2.6.20: Jul 10 2005:
 380    - build fixes: Windows build (Rob Richards), Mingw compilation (Igor
 381     Zlatkovic), Windows Makefile (Igor), gcc warnings (Kasimier and
 382     andriy@google.com), use gcc weak references to pthread to avoid the
 383     pthread dependancy on Linux, compilation problem (Steve Nairn), compiling
 384     of subset (Morten Welinder), IPv6/ss_family compilation (William Brack),
 385     compilation when disabling parts of the library, standalone test
 386     distribution.
 387    - bug fixes: bug in lang(), memory cleanup on errors (William Brack),
 388     HTTP query strings (Aron Stansvik), memory leak in DTD (William), integer
 389     overflow in XPath (William), nanoftp buffer size, pattern "." apth fixup
 390     (Kasimier), leak in tree reported by Malcolm Rowe, replaceNode patch
 391     (Brent Hendricks), CDATA with NULL content (Mark Vakoc), xml:base fixup
 392     on XInclude (William), pattern fixes (William), attribute bug in
 393     exclusive c14n (Aleksey Sanin), xml:space and xml:lang with SAX2 (Rob
 394     Richards), namespace trouble in complex parsing (Malcolm Rowe), XSD type
 395     QNames fixes (Kasimier), XPath streaming fixups (William), RelaxNG bug
 396     (Rob Richards), Schemas for Schemas fixes (Kasimier), removal of ID (Rob
 397     Richards), a small RelaxNG leak, HTML parsing in push mode bug (James
 398     Bursa), failure to detect UTF-8 parsing bugs in CDATA sections,
 399     areBlanks() heuristic failure, duplicate attributes in DTD bug
 400   (William).
 401    - improvements: lot of work on Schemas by Kasimier Buchcik both on
 402     conformance and streaming, Schemas validation messages (Kasimier Buchcik,
 403     Matthew Burgess), namespace removal at the python level (Brent
 404     Hendricks), Update to new Schemas regression tests from W3C/Nist
 405     (Kasimier), xmlSchemaValidateFile() (Kasimier), implementation of
 406     xmlTextReaderReadInnerXml and xmlTextReaderReadOuterXml (James Wert),
 407     standalone test framework and programs, new DOM import APIs
 408     xmlDOMWrapReconcileNamespaces() xmlDOMWrapAdoptNode() and
 409     xmlDOMWrapRemoveNode(), extension of xmllint capabilities for SAX and
 410     Schemas regression tests, xmlStopParser() available in pull mode too,
 411     ienhancement to xmllint --shell namespaces support, Windows port of the
 412     standalone testing tools (Kasimier and William),
 413     xmlSchemaValidateStream() xmlSchemaSAXPlug() and xmlSchemaSAXUnplug() SAX
 414     Schemas APIs, Schemas xmlReader support.
 415 
 416 
 417 2.6.19: Apr 02 2005:
 418    - build fixes: drop .la from RPMs, --with-minimum build fix (William
 419     Brack), use XML_SOCKLEN_T instead of SOCKLEN_T because it breaks with AIX
 420     5.3 compiler, fixed elfgcchack.h generation and PLT reduction code on
 421     Linux/ELF/gcc4
 422    - bug fixes: schemas type decimal fixups (William Brack), xmmlint return
 423     code (Gerry Murphy), small schemas fixes (Matthew Burgess and GUY
 424     Fabrice), workaround "DAV:" namespace brokeness in c14n (Aleksey Sanin),
 425     segfault in Schemas (Kasimier Buchcik), Schemas attribute validation
 426     (Kasimier), Prop related functions and xmlNewNodeEatName (Rob Richards),
 427     HTML serialization of name attribute on a elements, Python error handlers
 428     leaks and improvement (Brent Hendricks), uninitialized variable in
 429     encoding code, Relax-NG validation bug, potential crash if
 430     gnorableWhitespace is NULL, xmlSAXParseDoc and xmlParseDoc signatures,
 431     switched back to assuming UTF-8 in case no encoding is given at
 432     serialization time
 433    - improvements: lot of work on Schemas by Kasimier Buchcik on facets
 434     checking and also mixed handling.
 435    - 
 436 
 437 
 438 2.6.18: Mar 13 2005:
 439    - build fixes: warnings (Peter Breitenlohner), testapi.c generation,
 440     Bakefile support (Francesco Montorsi), Windows compilation (Joel Reed),
 441     some gcc4 fixes, HP-UX portability fixes (Rick Jones).
 442    - bug fixes: xmlSchemaElementDump namespace (Kasimier Buchcik), push and
 443     xmlreader stopping on non-fatal errors, thread support for dictionnaries
 444     reference counting (Gary Coady), internal subset and push problem, URL
 445     saved in xmlCopyDoc, various schemas bug fixes (Kasimier), Python paths
 446     fixup (Stephane Bidoul), xmlGetNodePath and namespaces, xmlSetNsProp fix
 447     (Mike Hommey), warning should not count as error (William Brack),
 448     xmlCreatePushParser empty chunk, XInclude parser flags (William), cleanup
 449     FTP and HTTP code to reuse the uri parsing and IPv6 (William),
 450     xmlTextWriterStartAttributeNS fix (Rob Richards), XMLLINT_INDENT being
 451     empty (William), xmlWriter bugs (Rob Richards), multithreading on Windows
 452     (Rich Salz), xmlSearchNsByHref fix (Kasimier), Python binding leak (Brent
 453     Hendricks), aliasing bug exposed by gcc4 on s390, xmlTextReaderNext bug
 454     (Rob Richards), Schemas decimal type fixes (William Brack),
 455     xmlByteConsumed static buffer (Ben Maurer).
 456    - improvement: speedup parsing comments and DTDs, dictionnary support for
 457     hash tables, Schemas Identity constraints (Kasimier), streaming XPath
 458     subset, xmlTextReaderReadString added (Bjorn Reese), Schemas canonical
 459     values handling (Kasimier), add xmlTextReaderByteConsumed (Aron
 460   Stansvik),
 461    - Documentation: Wiki support (Joel Reed)
 462 
 463 
 464 2.6.17: Jan 16 2005:
 465    - build fixes: Windows, warnings removal (William Brack),
 466     maintainer-clean dependency(William), build in a different directory
 467     (William), fixing --with-minimum configure build (William), BeOS build
 468     (Marcin Konicki), Python-2.4 detection (William), compilation on AIX (Dan
 469     McNichol)
 470    - bug fixes: xmlTextReaderHasAttributes (Rob Richards), xmlCtxtReadFile()
 471     to use the catalog(s), loop on output (William Brack), XPath memory leak,
 472     ID deallocation problem (Steve Shepard), debugDumpNode crash (William),
 473     warning not using error callback (William), xmlStopParser bug (William),
 474     UTF-16 with BOM on DTDs (William), namespace bug on empty elements in
 475     push mode (Rob Richards), line and col computations fixups (Aleksey
 476     Sanin), xmlURIEscape fix (William), xmlXPathErr on bad range (William),
 477     patterns with too many steps, bug in RNG choice optimization, line number
 478     sometimes missing.
 479    - improvements: XSD Schemas (Kasimier Buchcik), python generator
 480     (William), xmlUTF8Strpos speedup (William), unicode Python strings
 481     (William), XSD error reports (Kasimier Buchcik), Python __str__ call
 482     serialize().
 483    - new APIs: added xmlDictExists(), GetLineNumber and GetColumnNumber for
 484     the xmlReader (Aleksey Sanin), Dynamic Shared Libraries APIs (mostly Joel
 485     Reed), error extraction API from regexps, new XMLSave option for format
 486     (Phil Shafer)
 487    - documentation: site improvement (John Fleck), FAQ entries
 488   (William).
 489 
 490 
 491 2.6.16: Nov 10 2004:
 492    - general hardening and bug fixing crossing all the API based on new
 493     automated regression testing
 494    - build fix: IPv6 build and test on AIX (Dodji Seketeli)
 495    - bug fixes: problem with XML::Libxml reported by Petr Pajas,  encoding
 496     conversion functions return values, UTF-8 bug affecting XPath reported by
 497     Markus Bertheau, catalog problem with NULL entries (William Brack)
 498    - documentation: fix to xmllint man page, some API function descritpion
 499     were updated.
 500    - improvements: DTD validation APIs provided at the Python level (Brent
 501     Hendricks)
 502 
 503 
 504 2.6.15: Oct 27 2004:
 505    - security fixes on the nanoftp and nanohttp modules
 506    - build fixes: xmllint detection bug in configure, building outside the
 507     source tree (Thomas Fitzsimmons)
 508    - bug fixes: HTML parser on broken ASCII chars in names (William), Python
 509     paths (Malcolm Tredinnick), xmlHasNsProp and default namespace (William),
 510     saving to python file objects (Malcolm Tredinnick), DTD lookup fix
 511     (Malcolm), save back <group> in catalogs (William), tree build
 512     fixes (DV and Rob Richards), Schemas memory bug, structured error handler
 513     on Python 64bits, thread local memory deallocation, memory leak reported
 514     by Volker Roth, xmlValidateDtd in the presence of an internal subset,
 515     entities and _private problem (William), xmlBuildRelativeURI error
 516     (William).
 517    - improvements: better XInclude error reports (William), tree debugging
 518     module and tests, convenience functions at the Reader API (Graham
 519     Bennett), add support for PI in the HTML parser.
 520 
 521 
 522 2.6.14: Sep 29 2004:
 523    - build fixes: configure paths for xmllint and xsltproc, compilation
 524     without HTML parser, compilation warning cleanups (William Brack &
 525     Malcolm Tredinnick), VMS makefile update (Craig Berry),
 526    - bug fixes: xmlGetUTF8Char (William Brack), QName properties (Kasimier
 527     Buchcik), XInclude testing, Notation serialization, UTF8ToISO8859x
 528     transcoding (Mark Itzcovitz), lots of XML Schemas cleanup and fixes
 529     (Kasimier), ChangeLog cleanup (Stepan Kasal), memory fixes (Mark Vakoc),
 530     handling of failed realloc(), out of bound array adressing in Schemas
 531     date handling, Python space/tabs cleanups (Malcolm Tredinnick), NMTOKENS
 532     E20 validation fix (Malcolm),
 533    - improvements: added W3C XML Schemas testsuite (Kasimier Buchcik), add
 534     xmlSchemaValidateOneElement (Kasimier), Python exception hierearchy
 535     (Malcolm Tredinnick), Python libxml2 driver improvement (Malcolm
 536     Tredinnick), Schemas support for xsi:schemaLocation,
 537     xsi:noNamespaceSchemaLocation, xsi:type (Kasimier Buchcik)
 538 
 539 
 540 2.6.13: Aug 31 2004:
 541    - build fixes: Windows and zlib (Igor Zlatkovic), -O flag with gcc,
 542     Solaris compiler warning, fixing RPM BuildRequires,
 543    - fixes: DTD loading on Windows (Igor), Schemas error reports APIs
 544     (Kasimier Buchcik), Schemas validation crash, xmlCheckUTF8 (William Brack
 545     and Julius Mittenzwei), Schemas facet check (Kasimier), default namespace
 546     problem (William), Schemas hexbinary empty values, encoding error could
 547     genrate a serialization loop.
 548    - Improvements: Schemas validity improvements (Kasimier), added --path
 549     and --load-trace options to xmllint
 550    - documentation: tutorial update (John Fleck)
 551 
 552 
 553 2.6.12: Aug 22 2004:
 554    - build fixes: fix --with-minimum, elfgcchack.h fixes (Peter
 555     Breitenlohner), perl path lookup (William), diff on Solaris (Albert
 556     Chin), some 64bits cleanups.
 557    - Python: avoid a warning with 2.3 (William Brack), tab and space mixes
 558     (William), wrapper generator fixes (William), Cygwin support (Gerrit P.
 559     Haase), node wrapper fix (Marc-Antoine Parent), XML Schemas support
 560     (Torkel Lyng)
 561    - Schemas: a lot of bug fixes and improvements from Kasimier Buchcik
 562    - fixes: RVT fixes (William), XPath context resets bug (William), memory
 563     debug (Steve Hay), catalog white space handling (Peter Breitenlohner),
 564     xmlReader state after attribute reading (William), structured error
 565     handler (William), XInclude generated xml:base fixup (William), Windows
 566     memory reallocation problem (Steve Hay), Out of Memory conditions
 567     handling (William and Olivier Andrieu), htmlNewDoc() charset bug,
 568     htmlReadMemory init (William), a posteriori validation DTD base
 569     (William), notations serialization missing, xmlGetNodePath (Dodji),
 570     xmlCheckUTF8 (Diego Tartara), missing line numbers on entity
 571   (William)
 572    - improvements: DocBook catalog build scrip (William), xmlcatalog tool
 573     (Albert Chin), xmllint --c14n option, no_proxy environment (Mike Hommey),
 574     xmlParseInNodeContext() addition, extend xmllint --shell, allow XInclude
 575     to not generate start/end nodes, extend xmllint --version to include CVS
 576     tag (William)
 577    - documentation: web pages fixes, validity API docs fixes (William)
 578     schemas API fix (Eric Haszlakiewicz), xmllint man page (John Fleck)
 579 
 580 
 581 2.6.11: July 5 2004:
 582    - Schemas: a lot of changes and improvements by Kasimier Buchcik for
 583     attributes, namespaces and simple types.
 584    - build fixes: --with-minimum (William Brack),  some gcc cleanup
 585     (William), --with-thread-alloc (William)
 586    - portability: Windows binary package change (Igor Zlatkovic), Catalog
 587     path on Windows
 588    - documentation: update to the tutorial (John Fleck), xmllint return code
 589     (John Fleck), man pages (Ville Skytta),
 590    - bug fixes: C14N bug serializing namespaces (Aleksey Sanin), testSAX
 591     properly initialize the library (William), empty node set in XPath
 592     (William), xmlSchemas errors (William), invalid charref problem pointed
 593     by Morus Walter, XInclude xml:base generation (William), Relax-NG bug
 594     with div processing (William), XPointer and xml:base problem(William),
 595     Reader and entities, xmllint return code for schemas (William), reader
 596     streaming problem (Steve Ball), DTD serialization problem (William),
 597     libxml.m4 fixes (Mike Hommey), do not provide destructors as methods on
 598     Python classes, xmlReader buffer bug, Python bindings memory interfaces
 599     improvement (with Stéphane Bidoul), Fixed the push parser to be back to
 600     synchronous behaviour.
 601    - improvement: custom per-thread I/O enhancement (Rob Richards), register
 602     namespace in debug shell (Stefano Debenedetti), Python based regression
 603     test for non-Unix users (William), dynamically increase the number of
 604     XPath extension functions in Python and fix a memory leak (Marc-Antoine
 605     Parent and William)
 606    - performance: hack done with Arjan van de Ven to reduce ELF footprint
 607     and generated code on Linux, plus use gcc runtime profiling to optimize
 608     the code generated in the RPM packages.
 609 
 610 
 611 2.6.10: May 17 2004:
 612    - Web page generated for ChangeLog
 613    - build fixes: --without-html problems, make check without make all
 614    - portability: problem with xpath.c on Windows (MSC and Borland), memcmp
 615     vs. strncmp on Solaris, XPath tests on Windows (Mark Vakoc), C++ do not
 616     use "list" as parameter name, make tests work with Python 1.5 (Ed
 617   Davis),
 618    - improvements: made xmlTextReaderMode public, small buffers resizing
 619     (Morten Welinder), add --maxmem option to xmllint, add
 620     xmlPopInputCallback() for Matt Sergeant, refactoring of serialization
 621     escaping, added escaping customization
 622    - bugfixes: xsd:extension (Taihei Goi), assorted regexp bugs (William
 623     Brack), xmlReader end of stream problem, node deregistration with reader,
 624     URI escaping and filemanes,  XHTML1 formatting (Nick Wellnhofer), regexp
 625     transition reduction (William), various XSD Schemas fixes (Kasimier
 626     Buchcik), XInclude fallback problem (William), weird problems with DTD
 627     (William), structured error handler callback context (William), reverse
 628     xmlEncodeSpecialChars() behaviour back to escaping '"'
 629 
 630 
 631 2.6.9: Apr 18 2004:
 632    - implement xml:id Working Draft, relaxed XPath id() checking
 633    - bugfixes: xmlCtxtReset (Brent Hendricks), line number and CDATA (Dave
 634     Beckett), Relax-NG compilation (William Brack), Regexp patches (with
 635     William), xmlUriEscape (Mark Vakoc), a Relax-NG notAllowed problem (with
 636     William), Relax-NG name classes compares (William), XInclude duplicate
 637     fallback (William), external DTD encoding detection (William), a DTD
 638     validation bug (William), xmlReader Close() fix, recusive extention
 639     schemas
 640    - improvements: use xmlRead* APIs in test tools (Mark Vakoc), indenting
 641     save optimization, better handle IIS broken HTTP redirect  behaviour (Ian
 642     Hummel), HTML parser frameset (James Bursa), libxml2-python RPM
 643     dependancy, XML Schemas union support (Kasimier Buchcik), warning removal
 644     clanup (William), keep ChangeLog compressed when installing from RPMs
 645    - documentation: examples and xmlDocDumpMemory docs (John Fleck), new
 646     example (load, xpath, modify, save), xmlCatalogDump() comments,
 647    - Windows: Borland C++ builder (Eric Zurcher), work around Microsoft
 648     compiler NaN handling bug (Mark Vakoc)
 649 
 650 
 651 2.6.8: Mar 23 2004:
 652    - First step of the cleanup of the serialization code and APIs
 653    - XML Schemas: mixed content (Adam Dickmeiss), QName handling fixes (Adam
 654     Dickmeiss), anyURI for "" (John Belmonte)
 655    - Python: Canonicalization C14N support added (Anthony Carrico)
 656    - xmlDocCopyNode() extension (William)
 657    - Relax-NG: fix when processing XInclude results (William), external
 658     reference in interleave (William), missing error on <choice>
 659     failure (William), memory leak in schemas datatype facets.
 660    - xmlWriter: patch for better DTD support (Alfred Mickautsch)
 661    - bug fixes: xmlXPathLangFunction memory leak (Mike Hommey and William
 662     Brack), no ID errors if using HTML_PARSE_NOERROR, xmlcatalog fallbacks to
 663     URI on SYSTEM lookup failure, XInclude parse flags inheritance (William),
 664     XInclude and XPointer fixes for entities (William), XML parser bug
 665     reported by Holger Rauch, nanohttp fd leak (William),  regexps char
 666     groups '-' handling (William), dictionnary reference counting problems,
 667     do not close stderr.
 668    - performance patches from Petr Pajas
 669    - Documentation fixes: XML_CATALOG_FILES in man pages (Mike Hommey)
 670    - compilation and portability fixes: --without-valid, catalog cleanups
 671     (Peter Breitenlohner), MingW patch (Roland Schwingel), cross-compilation
 672     to Windows (Christophe de Vienne),  --with-html-dir fixup (Julio Merino
 673     Vidal), Windows build (Eric Zurcher)
 674 
 675 
 676 2.6.7: Feb 23 2004:
 677    - documentation: tutorial updates (John Fleck), benchmark results
 678    - xmlWriter: updates and fixes (Alfred Mickautsch, Lucas Brasilino)
 679    - XPath optimization (Petr Pajas)
 680    - DTD ID handling optimization
 681    - bugfixes: xpath number with  > 19 fractional (William Brack), push
 682     mode with unescaped '>' characters, fix xmllint --stream --timing, fix
 683     xmllint --memory --stream memory usage, xmlAttrSerializeTxtContent
 684     handling NULL, trying to fix Relax-NG/Perl interface.
 685    - python: 2.3 compatibility, whitespace fixes (Malcolm Tredinnick)
 686    - Added relaxng option to xmllint --shell
 687 
 688 
 689 2.6.6: Feb 12 2004:
 690    - nanohttp and nanoftp: buffer overflow error on URI parsing (Igor and
 691     William) reported by Yuuichi Teranishi
 692    - bugfixes: make test and path issues, xmlWriter attribute serialization
 693     (William Brack), xmlWriter indentation (William), schemas validation
 694     (Eric Haszlakiewicz), XInclude dictionnaries issues (William and Oleg
 695     Paraschenko), XInclude empty fallback (William), HTML warnings (William),
 696     XPointer in XInclude (William), Python namespace serialization,
 697     isolat1ToUTF8 bound error (Alfred Mickautsch), output of parameter
 698     entities in internal subset (William), internal subset bug in push mode,
 699     <xs:all> fix (Alexey Sarytchev)
 700    - Build: fix for automake-1.8 (Alexander Winston), warnings removal
 701     (Philip Ludlam), SOCKLEN_T detection fixes (Daniel Richard), fix
 702     --with-minimum configuration.
 703    - XInclude: allow the 2001 namespace without warning.
 704    - Documentation: missing example/index.html (John Fleck), version
 705     dependancies (John Fleck)
 706    - reader API: structured error reporting (Steve Ball)
 707    - Windows compilation: mingw, msys (Mikhail Grushinskiy), function
 708     prototype (Cameron Johnson), MSVC6 compiler warnings, _WINSOCKAPI_
 709   patch
 710    - Parsers: added xmlByteConsumed(ctxt) API to get the byte offest in
 711     input.
 712 
 713 
 714 2.6.5: Jan 25 2004:
 715    - Bugfixes: dictionnaries for schemas (William Brack), regexp segfault
 716     (William), xs:all problem (William), a number of XPointer bugfixes
 717     (William), xmllint error go to stderr, DTD validation problem with
 718     namespace, memory leak (William), SAX1 cleanup and minimal options fixes
 719     (Mark Vadoc), parser context reset on error (Shaun McCance), XPath union
 720     evaluation problem (William) , xmlReallocLoc with NULL (Aleksey Sanin),
 721     XML Schemas double free (Steve Ball), XInclude with no href, argument
 722     callbacks order for XPath callbacks (Frederic Peters)
 723    - Documentation: python scripts (William Brack), xslt stylesheets (John
 724     Fleck), doc (Sven Zimmerman), I/O example.
 725    - Python bindings: fixes (William), enum support (Stéphane Bidoul),
 726     structured error reporting (Stéphane Bidoul)
 727    - XInclude: various fixes for conformance, problem related to dictionnary
 728     references (William & me), recursion (William)
 729    - xmlWriter: indentation (Lucas Brasilino), memory leaks (Alfred
 730     Mickautsch),
 731    - xmlSchemas: normalizedString datatype (John Belmonte)
 732    - code cleanup for strings functions (William)
 733    - Windows: compiler patches (Mark Vakoc)
 734    - Parser optimizations, a few new XPath and dictionnary APIs for future
 735     XSLT optimizations.
 736 
 737 
 738 2.6.4: Dec 24 2003:
 739    - Windows build fixes (Igor Zlatkovic)
 740    - Some serious XInclude problems reported by Oleg Paraschenko and
 741    - Unix and Makefile packaging fixes (me, William Brack,
 742    - Documentation improvements (John Fleck, William Brack), example fix
 743     (Lucas Brasilino)
 744    - bugfixes: xmlTextReaderExpand() with xmlReaderWalker, XPath handling of
 745     NULL strings (William Brack) , API building reader or parser from
 746     filedescriptor should not close it, changed XPath sorting to be stable
 747     again (William Brack), xmlGetNodePath() generating '(null)' (William
 748     Brack), DTD validation and namespace bug (William Brack), XML Schemas
 749     double inclusion behaviour
 750 
 751 
 752 2.6.3: Dec 10 2003:
 753    - documentation updates and cleanup (DV, William Brack, John Fleck)
 754    - added a repository of examples, examples from Aleksey Sanin, Dodji
 755     Seketeli, Alfred Mickautsch
 756    - Windows updates: Mark Vakoc, Igor Zlatkovic, Eric Zurcher, Mingw
 757     (Kenneth Haley)
 758    - Unicode range checking (William Brack)
 759    - code cleanup (William Brack)
 760    - Python bindings: doc (John Fleck),  bug fixes
 761    - UTF-16 cleanup and BOM issues (William Brack)
 762    - bug fixes: ID and xmlReader validation, XPath (William Brack),
 763     xmlWriter (Alfred Mickautsch), hash.h inclusion problem, HTML parser
 764     (James Bursa), attribute defaulting and validation, some serialization
 765     cleanups, XML_GET_LINE macro, memory debug when using threads (William
 766     Brack), serialization of attributes and entities content, xmlWriter
 767     (Daniel Schulman)
 768    - XInclude bugfix, new APIs and update to the last version including the
 769     namespace change.
 770    - XML Schemas improvements: include (Robert Stepanek), import and
 771     namespace handling, fixed the regression tests troubles, added examples
 772     based on Eric van der Vlist book, regexp fixes
 773    - preliminary pattern support for streaming (needed for schemas
 774     constraints), added xmlTextReaderPreservePattern() to collect subdocument
 775     when streaming.
 776    - various fixes in the structured error handling
 777 
 778 
 779 2.6.2: Nov 4 2003:
 780    - XPath context unregistration fixes
 781    - text node coalescing fixes (Mark Lilback)
 782    - API to screate a W3C Schemas from an existing document (Steve Ball)
 783    - BeOS patches (Marcin 'Shard' Konicki)
 784    - xmlStrVPrintf function added (Aleksey Sanin)
 785    - compilation fixes (Mark Vakoc)
 786    - stdin parsing fix (William Brack)
 787    - a posteriori DTD validation fixes
 788    - xmlReader bug fixes: Walker fixes, python bindings
 789    - fixed xmlStopParser() to really stop the parser and errors
 790    - always generate line numbers when using the new xmlReadxxx
 791   functions
 792    - added XInclude support to the xmlReader interface
 793    - implemented XML_PARSE_NONET parser option
 794    - DocBook XSLT processing bug fixed
 795    - HTML serialization for <p> elements (William Brack and me)
 796    - XPointer failure in XInclude are now handled as resource errors
 797    - fixed xmllint --html to use the HTML serializer on output (added
 798     --xmlout to implement the previous behaviour of saving it using the XML
 799     serializer)
 800 
 801 
 802 2.6.1: Oct 28 2003:
 803    - Mostly bugfixes after the big 2.6.0 changes
 804    - Unix compilation patches: libxml.m4 (Patrick Welche), warnings cleanup
 805     (William Brack)
 806    - Windows compilation patches (Joachim Bauch, Stephane Bidoul, Igor
 807     Zlatkovic)
 808    - xmlWriter bugfix (Alfred Mickautsch)
 809    - chvalid.[ch]: couple of fixes from Stephane Bidoul
 810    - context reset: error state reset, push parser reset (Graham
 811   Bennett)
 812    - context reuse: generate errors if file is not readable
 813    - defaulted attributes for element coming from internal entities
 814     (Stephane Bidoul)
 815    - Python: tab and spaces mix (William Brack)
 816    - Error handler could crash in DTD validation in 2.6.0
 817    - xmlReader: do not use the document or element _private field
 818    - testSAX.c: avoid a problem with some PIs (Massimo Morara)
 819    - general bug fixes: mandatory encoding in text decl, serializing
 820     Document Fragment nodes, xmlSearchNs 2.6.0 problem (Kasimier Buchcik),
 821     XPath errors not reported,  slow HTML parsing of large documents.
 822 
 823 
 824 2.6.0: Oct 20 2003:
 825    - Major revision release: should be API and ABI compatible but got a lot
 826     of change
 827    - Increased the library modularity, far more options can be stripped out,
 828     a --with-minimum configuration will weight around 160KBytes
 829    - Use per parser and per document dictionnary, allocate names and small
 830     text nodes from the dictionnary
 831    - Switch to a SAX2 like parser rewrote most of the XML parser core,
 832     provides namespace resolution and defaulted attributes, minimize memory
 833     allocations and copies, namespace checking and specific error handling,
 834     immutable buffers, make predefined entities static structures, etc...
 835    - rewrote all the error handling in the library, all errors can be
 836     intercepted at a structured level, with precise information
 837   available.
 838    - New simpler and more generic XML and HTML parser APIs, allowing to
 839     easilly modify the parsing options and reuse parser context for multiple
 840     consecutive documents.
 841    - Similar new APIs for the xmlReader, for options and reuse, provided new
 842     functions to access content as const strings, use them for Python
 843   bindings
 844    - a  lot of other smaller API improvements: xmlStrPrintf (Aleksey Sanin),
 845     Walker i.e. reader on a document tree based on Alfred Mickautsch code,
 846     make room in nodes for line numbers, reference counting and future PSVI
 847     extensions, generation of character ranges to be checked with faster
 848     algorithm (William),  xmlParserMaxDepth (Crutcher Dunnavant), buffer
 849     access
 850    - New xmlWriter API provided by Alfred Mickautsch
 851    - Schemas: base64 support by Anthony Carrico
 852    - Parser<->HTTP integration fix, proper processing of the Mime-Type
 853     and charset information if available.
 854    - Relax-NG: bug fixes including the one reported by Martijn Faassen and
 855     zeroOrMore, better error reporting.
 856    - Python bindings (Stéphane Bidoul), never use stdout for errors
 857   output
 858    - Portability: all the headers have macros for export and calling
 859     convention definitions (Igor Zlatkovic), VMS update (Craig A. Berry),
 860     Windows: threads (Jesse Pelton), Borland compiler (Eric Zurcher,  Igor),
 861     Mingw (Igor), typos (Mark Vakoc),  beta version (Stephane Bidoul),
 862     warning cleanups on AIX and MIPS compilers (William Brack), BeOS (Marcin
 863     'Shard' Konicki)
 864    - Documentation fixes and README (William Brack), search fix (William),
 865     tutorial updates (John Fleck), namespace docs (Stefan Kost)
 866    - Bug fixes: xmlCleanupParser (Dave Beckett), threading uninitialized
 867     mutexes, HTML doctype lowercase,  SAX/IO (William), compression detection
 868     and restore (William), attribute declaration in DTDs (William), namespace
 869     on attribute in HTML output (William), input filename (Rob Richards),
 870     namespace DTD validation, xmlReplaceNode (Chris Ryland), I/O callbacks
 871     (Markus Keim), CDATA serialization (Shaun McCance), xmlReader (Peter
 872     Derr), high codepoint charref like &#x10FFFF;, buffer access in push
 873     mode (Justin Fletcher), TLS threads on Windows (Jesse Pelton), XPath bug
 874     (William), xmlCleanupParser (Marc Liyanage), CDATA output (William), HTTP
 875     error handling.
 876    - xmllint options: --dtdvalidfpi for Tobias Reif, --sax1 for compat
 877     testing,  --nodict for building without tree dictionnary, --nocdata to
 878     replace CDATA by text, --nsclean to remove surperfluous  namespace
 879     declarations
 880    - added xml2-config --libtool-libs option from Kevin P. Fleming
 881    - a lot of profiling and tuning of the code, speedup patch for
 882     xmlSearchNs() by Luca Padovani. The xmlReader should do far less
 883     allocation and it speed should get closer to SAX. Chris Anderson worked
 884     on speeding and cleaning up repetitive checking code.
 885    - cleanup of "make tests"
 886    - libxml-2.0-uninstalled.pc from Malcolm Tredinnick
 887    - deactivated the broken docBook SGML parser code and plugged the XML
 888     parser instead.
 889 
 890 
 891 2.5.11: Sep 9 2003:
 892 A bugfix only release:   - risk of crash in Relax-NG
 893    - risk of crash when using multithreaded programs
 894 
 895 
 896 2.5.10: Aug 15 2003:
 897 A bugfixes only release   - Windows Makefiles (William Brack)
 898    - UTF-16 support fixes (Mark Itzcovitz)
 899    - Makefile and portability (William Brack) automake, Linux alpha, Mingw
 900     on Windows (Mikhail Grushinskiy)
 901    - HTML parser (Oliver Stoeneberg)
 902    - XInclude performance problem reported by Kevin Ruscoe
 903    - XML parser performance problem reported by Grant Goodale
 904    - xmlSAXParseDTD() bug fix from Malcolm Tredinnick
 905    - and a couple other cleanup
 906 
 907 
 908 2.5.9: Aug 9 2003:
 909    - bugfixes: IPv6 portability, xmlHasNsProp (Markus Keim), Windows build
 910     (Wiliam Brake, Jesse Pelton, Igor), Schemas (Peter Sobisch), threading
 911     (Rob Richards), hexBinary type (), UTF-16 BOM (Dodji Seketeli),
 912     xmlReader, Relax-NG schemas compilation, namespace handling,  EXSLT (Sean
 913     Griffin), HTML parsing problem (William Brack), DTD validation for mixed
 914     content + namespaces, HTML serialization, library initialization,
 915     progressive HTML parser
 916    - better interfaces for Relax-NG error handling (Joachim Bauch, )
 917    - adding xmlXIncludeProcessTree() for XInclud'ing in a subtree
 918    - doc fixes and improvements (John Fleck)
 919    - configure flag for -with-fexceptions when embedding in C++
 920    - couple of new UTF-8 helper functions (William Brack)
 921    - general encoding cleanup + ISO-8859-x without iconv (Peter Jacobi)
 922    - xmlTextReader cleanup + enum for node types (Bjorn Reese)
 923    - general compilation/warning cleanup Solaris/HP-UX/... (William
 924   Brack)
 925 
 926 
 927 2.5.8: Jul 6 2003:
 928    - bugfixes: XPath, XInclude, file/URI mapping, UTF-16 save (Mark
 929     Itzcovitz), UTF-8 checking, URI saving, error printing (William Brack),
 930     PI related memleak, compilation without schemas or without xpath (Joerg
 931     Schmitz-Linneweber/Garry Pennington), xmlUnlinkNode problem with DTDs,
 932     rpm problem on , i86_64, removed a few compilation problems from 2.5.7,
 933     xmlIOParseDTD, and xmlSAXParseDTD (Malcolm Tredinnick)
 934    - portability: DJGPP (MsDos) , OpenVMS (Craig A. Berry)
 935    - William Brack fixed multithreading lock problems
 936    - IPv6 patch for FTP and HTTP accesses (Archana Shah/Wipro)
 937    - Windows fixes (Igor Zlatkovic,  Eric Zurcher), threading (Stéphane
 938     Bidoul)
 939    - A few W3C Schemas Structure improvements
 940    - W3C Schemas Datatype improvements (Charlie Bozeman)
 941    - Python bindings for thread globals (Stéphane Bidoul), and method/class
 942     generator
 943    - added --nonet option to xmllint
 944    - documentation improvements (John Fleck)
 945 
 946 
 947 2.5.7: Apr 25 2003:
 948    - Relax-NG: Compiling to regexp and streaming validation on top of the
 949     xmlReader interface, added to xmllint --stream
 950    - xmlReader: Expand(), Next() and DOM access glue, bug fixes
 951    - Support for large files: RGN validated a 4.5GB instance
 952    - Thread support is now configured in by default
 953    - Fixes: update of the Trio code (Bjorn), WXS Date and Duration fixes
 954     (Charles Bozeman), DTD and namespaces (Brent Hendricks), HTML push parser
 955     and zero bytes handling, some missing Windows file path conversions,
 956     behaviour of the parser and validator in the presence of "out of memory"
 957     error conditions
 958    - extended the API to be able to plug a garbage collecting memory
 959     allocator, added xmlMallocAtomic() and modified the allocations
 960     accordingly.
 961    - Performances: removed excessive malloc() calls, speedup of the push and
 962     xmlReader interfaces, removed excessive thread locking
 963    - Documentation: man page (John Fleck), xmlReader documentation
 964    - Python: adding binding for xmlCatalogAddLocal (Brent M Hendricks)
 965 
 966 
 967 2.5.6: Apr 1 2003:
 968    - Fixed W3C XML Schemas datatype, should be compliant now except for
 969     binHex and base64 which are not supported yet.
 970    - bug fixes: non-ASCII IDs, HTML output, XInclude on large docs and
 971     XInclude entities handling, encoding detection on external subsets, XML
 972     Schemas bugs and memory leaks, HTML parser (James Bursa)
 973    - portability: python/trio (Albert Chin), Sun compiler warnings
 974    - documentation: added --relaxng option to xmllint man page (John)
 975    - improved error reporting: xml:space, start/end tag mismatches, Relax NG
 976     errors
 977 
 978 
 979 2.5.5: Mar 24 2003:
 980    - Lot of fixes on the Relax NG implementation. More testing including
 981     DocBook and TEI examples.
 982    - Increased the support for W3C XML Schemas datatype
 983    - Several bug fixes in the URI handling layer
 984    - Bug fixes: HTML parser, xmlReader, DTD validation, XPath, encoding
 985     conversion, line counting in the parser.
 986    - Added support for $XMLLINT_INDENT environment variable, FTP delete
 987    - Fixed the RPM spec file name
 988 
 989 
 990 2.5.4: Feb 20 2003:
 991    - Conformance testing and lot of fixes on Relax NG and XInclude
 992     implementation
 993    - Implementation of XPointer element() scheme
 994    - Bug fixes: XML parser, XInclude entities merge, validity checking on
 995     namespaces,
 996     2 serialization bugs, node info generation problems, a DTD regexp
 997     generation problem.
 998   
 999    - Portability: windows updates and path canonicalization (Igor)
1000    - A few typo fixes (Kjartan Maraas)
1001    - Python bindings generator fixes (Stephane Bidoul)
1002 
1003 
1004 2.5.3: Feb 10 2003:
1005    - RelaxNG and XML Schemas datatypes improvements, and added a first
1006     version of RelaxNG Python bindings
1007    - Fixes: XLink (Sean Chittenden), XInclude (Sean Chittenden), API fix for
1008     serializing namespace nodes, encoding conversion bug, XHTML1
1009   serialization
1010    - Portability fixes: Windows (Igor), AMD 64bits RPM spec file
1011 
1012 
1013 2.5.2: Feb 5 2003:
1014    - First implementation of RelaxNG, added --relaxng flag to xmllint
1015    - Schemas support now compiled in by default.
1016    - Bug fixes: DTD validation, namespace checking, XInclude and entities,
1017     delegateURI in XML Catalogs, HTML parser, XML reader (Stéphane Bidoul),
1018     XPath parser and evaluation,  UTF8ToUTF8 serialization, XML reader memory
1019     consumption, HTML parser, HTML serialization in the presence of
1020   namespaces
1021    - added an HTML API to check elements and attributes.
1022    - Documentation improvement, PDF for the tutorial (John Fleck), doc
1023     patches (Stefan Kost)
1024    - Portability fixes: NetBSD (Julio Merino), Windows (Igor Zlatkovic)
1025    - Added python bindings for XPointer, contextual error reporting
1026     (Stéphane Bidoul)
1027    - URI/file escaping problems (Stefano Zacchiroli)
1028 
1029 
1030 2.5.1: Jan 8 2003:
1031    - Fixes a memory leak and configuration/compilation problems in 2.5.0
1032    - documentation updates (John)
1033    - a couple of XmlTextReader fixes
1034 
1035 
1036 2.5.0: Jan 6 2003:
1037    - New XmltextReader interface based on C#
1038     API (with help of Stéphane Bidoul)
1039    - Windows: more exports, including the new API (Igor)
1040    - XInclude fallback fix
1041    - Python: bindings for the new API, packaging (Stéphane Bidoul),
1042     drv_libxml2.py Python xml.sax driver (Stéphane Bidoul), fixes, speedup
1043     and iterators for Python-2.2 (Hannu Krosing)
1044    - Tutorial fixes (john Fleck and Niraj Tolia) xmllint man update
1045   (John)
1046    - Fix an XML parser bug raised by Vyacheslav Pindyura
1047    - Fix for VMS serialization (Nigel Hall) and config (Craig A. Berry)
1048    - Entities handling fixes
1049    - new API to optionally track node creation and deletion (Lukas
1050   Schroeder)
1051    - Added documentation for the XmltextReader interface and some XML guidelines
1052 
1053 
1054 2.4.30: Dec 12 2002:
1055    - 2.4.29 broke the python bindings, rereleasing
1056    - Improvement/fixes of the XML API generator, and couple of minor code
1057     fixes.
1058 
1059 
1060 2.4.29: Dec 11 2002:
1061    - Windows fixes (Igor): Windows CE port, pthread linking, python bindings
1062     (Stéphane Bidoul), Mingw (Magnus Henoch), and export list updates
1063    - Fix for prev in python bindings (ERDI Gergo)
1064    - Fix for entities handling (Marcus Clarke)
1065    - Refactored the XML and HTML dumps to a single code path, fixed XHTML1
1066     dump
1067    - Fix for URI parsing when handling URNs with fragment identifiers
1068    - Fix for HTTP URL escaping problem
1069    - added an TextXmlReader (C#) like API (work in progress)
1070    - Rewrote the API in XML generation script, includes a C parser and saves
1071     more information needed for C# bindings
1072 
1073 
1074 2.4.28: Nov 22 2002:
1075    - a couple of python binding fixes
1076    - 2 bug fixes in the XML push parser
1077    - potential memory leak removed (Martin Stoilov)
1078    - fix to the configure script for Unix (Dimitri Papadopoulos)
1079    - added encoding support for XInclude parse="text"
1080    - autodetection of XHTML1 and specific serialization rules added
1081    - nasty threading bug fixed (William Brack)
1082 
1083 
1084 2.4.27: Nov 17 2002:
1085    - fixes for the Python bindings
1086    - a number of bug fixes: SGML catalogs, xmlParseBalancedChunkMemory(),
1087     HTML parser,  Schemas (Charles Bozeman), document fragment support
1088     (Christian Glahn), xmlReconciliateNs (Brian Stafford), XPointer,
1089     xmlFreeNode(), xmlSAXParseMemory (Peter Jones), xmlGetNodePath (Petr
1090     Pajas), entities processing
1091    - added grep to xmllint --shell
1092    - VMS update patch from Craig A. Berry
1093    - cleanup of the Windows build with support for more compilers (Igor),
1094     better thread support on Windows
1095    - cleanup of Unix Makefiles and spec file
1096    - Improvements to the documentation (John Fleck)
1097 
1098 
1099 2.4.26: Oct 18 2002:
1100    - Patches for Windows CE port, improvements on Windows paths handling
1101    - Fixes to the validation  code (DTD and Schemas), xmlNodeGetPath() ,
1102     HTML serialization, Namespace compliance,  and a number of small
1103   problems
1104 
1105 
1106 2.4.25: Sep 26 2002:
1107    - A number of bug fixes: XPath, validation, Python bindings, DOM and
1108     tree, xmlI/O,  Html
1109    - Serious rewrite of XInclude
1110    - Made XML Schemas regexp part of the default build and APIs, small fix
1111     and improvement of the regexp core
1112    - Changed the validation code to reuse XML Schemas regexp APIs
1113    - Better handling of Windows file paths, improvement of Makefiles (Igor,
1114     Daniel Gehriger, Mark Vakoc)
1115    - Improved the python I/O bindings, the tests, added resolver and regexp
1116     APIs
1117    - New logos from Marc Liyanage
1118    - Tutorial improvements: John Fleck, Christopher Harris
1119    - Makefile: Fixes for AMD x86_64 (Mandrake), DESTDIR (Christophe
1120   Merlet)
1121    - removal of all stderr/perror use for error reporting
1122    - Better error reporting: XPath and DTD validation
1123    - update of the trio portability layer (Bjorn Reese)
1124 
1125 2.4.24: Aug 22 2002   - XPath fixes (William), xf:escape-uri() (Wesley Terpstra)
1126    - Python binding fixes: makefiles (William), generator, rpm build, x86-64
1127     (fcrozat)
1128    - HTML <style> and boolean attributes serializer fixes
1129    - C14N improvements by Aleksey
1130    - doc cleanups: Rick Jones
1131    - Windows compiler makefile updates: Igor and Elizabeth Barham
1132    - XInclude: implementation of fallback and xml:base fixup added
1133 
1134 
1135 2.4.23: July 6 2002:
1136    - performances patches: Peter Jacobi
1137    - c14n fixes, testsuite and performances: Aleksey Sanin
1138    - added xmlDocFormatDump: Chema Celorio
1139    - new tutorial: John Fleck
1140    - new hash functions and performances: Sander Vesik, portability fix from
1141     Peter Jacobi
1142    - a number of bug fixes: XPath (William Brack, Richard Jinks), XML and
1143     HTML parsers, ID lookup function
1144    - removal of all remaining sprintf: Aleksey Sanin
1145 
1146 
1147 2.4.22: May 27 2002:
1148    - a number of bug fixes: configure scripts, base handling, parser, memory
1149     usage, HTML parser, XPath, documentation (Christian Cornelssen),
1150     indentation, URI parsing
1151    - Optimizations for XMLSec, fixing and making public some of the network
1152     protocol handlers (Aleksey)
1153    - performance patch from Gary Pennington
1154    - Charles Bozeman provided date and time support for XML Schemas
1155   datatypes
1156 
1157 
1158 2.4.21: Apr 29 2002:
1159 This release is both a bug fix release and also contains the early XML
1160 Schemas structures at 
1161 http://www.w3.org/TR/xmlschema-1/
1162  and datatypes at 
1163 http://www.w3.org/TR/xmlschema-2/
1164  code, beware, all
1165 interfaces are likely to change, there is huge holes, it is clearly a work in
1166 progress and don't even think of putting this code in a production system,
1167 it's actually not compiled in by default. The real fixes are:   - a couple of bugs or limitations introduced in 2.4.20
1168    - patches for Borland C++ and MSC by Igor
1169    - some fixes on XPath strings and conformance patches by Richard
1170   Jinks
1171    - patch from Aleksey for the ExcC14N specification
1172    - OSF/1 bug fix by Bjorn
1173 
1174 
1175 2.4.20: Apr 15 2002:
1176    - bug fixes: file descriptor leak, XPath, HTML output, DTD validation
1177    - XPath conformance testing by Richard Jinks
1178    - Portability fixes: Solaris, MPE/iX, Windows, OSF/1, python bindings,
1179     libxml.m4
1180 
1181 
1182 2.4.19: Mar 25 2002:
1183    - bug fixes: half a dozen XPath bugs, Validation, ISO-Latin to UTF8
1184     encoder
1185    - portability fixes in the HTTP code
1186    - memory allocation checks using valgrind, and profiling tests
1187    - revamp of the Windows build and Makefiles
1188 
1189 
1190 2.4.18: Mar 18 2002:
1191    - bug fixes: tree, SAX, canonicalization, validation, portability,
1192   XPath
1193    - removed the --with-buffer option it was becoming unmaintainable
1194    - serious cleanup of the Python makefiles
1195    - speedup patch to XPath very effective for DocBook stylesheets
1196    - Fixes for Windows build, cleanup of the documentation
1197 
1198 
1199 2.4.17: Mar 8 2002:
1200    - a lot of bug fixes, including "namespace nodes have no parents in
1201   XPath"
1202    - fixed/improved the Python wrappers, added more examples and more
1203     regression tests, XPath extension functions can now return node-sets
1204    - added the XML Canonicalization support from Aleksey Sanin
1205 
1206 
1207 2.4.16: Feb 20 2002:
1208    - a lot of bug fixes, most of them were triggered by the XML Testsuite
1209     from OASIS and W3C. Compliance has been significantly improved.
1210    - a couple of portability fixes too.
1211 
1212 
1213 2.4.15: Feb 11 2002:
1214    - Fixed the Makefiles, especially the python module ones
1215    - A few bug fixes and cleanup
1216    - Includes cleanup
1217 
1218 
1219 2.4.14: Feb 8 2002:
1220    - Change of License to the MIT
1221     License basically for integration in XFree86 codebase, and removing
1222     confusion around the previous dual-licensing
1223    - added Python bindings, beta software but should already be quite
1224     complete
1225    - a large number of fixes and cleanups, especially for all tree
1226     manipulations
1227    - cleanup of the headers, generation of a reference API definition in
1228   XML
1229 
1230 
1231 2.4.13: Jan 14 2002:
1232    - update of the documentation: John Fleck and Charlie Bozeman
1233    - cleanup of timing code from Justin Fletcher
1234    - fixes for Windows and initial thread support on Win32: Igor and Serguei
1235     Narojnyi
1236    - Cygwin patch from Robert Collins
1237    - added xmlSetEntityReferenceFunc() for Keith Isdale work on xsldbg
1238 
1239 
1240 2.4.12: Dec 7 2001:
1241    - a few bug fixes: thread (Gary Pennington), xmllint (Geert Kloosterman),
1242     XML parser (Robin Berjon), XPointer (Danny Jamshy), I/O cleanups
1243   (robert)
1244    - Eric Lavigne contributed project files for MacOS
1245    - some makefiles cleanups
1246 
1247 
1248 2.4.11: Nov 26 2001:
1249    - fixed a couple of errors in the includes, fixed a few bugs, some code
1250     cleanups
1251    - xmllint man pages improvement by Heiko Rupp
1252    - updated VMS build instructions from John A Fotheringham
1253    - Windows Makefiles updates from Igor
1254 
1255 
1256 2.4.10: Nov 10 2001:
1257    - URI escaping fix (Joel Young)
1258    - added xmlGetNodePath() (for paths or XPointers generation)
1259    - Fixes namespace handling problems when using DTD and validation
1260    - improvements on xmllint: Morus Walter patches for --format and
1261     --encode, Stefan Kost and Heiko Rupp improvements on the --shell
1262    - fixes for xmlcatalog linking pointed by Weiqi Gao
1263    - fixes to the HTML parser
1264 
1265 
1266 2.4.9: Nov 6 2001:
1267    - fixes more catalog bugs
1268    - avoid a compilation problem, improve xmlGetLineNo()
1269 
1270 
1271 2.4.8: Nov 4 2001:
1272    - fixed SGML catalogs broken in previous release, updated xmlcatalog
1273   tool
1274    - fixed a compile errors and some includes troubles.
1275 
1276 
1277 2.4.7: Oct 30 2001:
1278    - exported some debugging interfaces
1279    - serious rewrite of the catalog code
1280    - integrated Gary Pennington thread safety patch, added configure option
1281     and regression tests
1282    - removed an HTML parser bug
1283    - fixed a couple of potentially serious validation bugs
1284    - integrated the SGML DocBook support in xmllint
1285    - changed the nanoftp anonymous login passwd
1286    - some I/O cleanup and a couple of interfaces for Perl wrapper
1287    - general bug fixes
1288    - updated xmllint man page by John Fleck
1289    - some VMS and Windows updates
1290 
1291 
1292 2.4.6: Oct 10 2001:
1293    - added an updated man pages by John Fleck
1294    - portability and configure fixes
1295    - an infinite loop on the HTML parser was removed (William)
1296    - Windows makefile patches from Igor
1297    - fixed half a dozen bugs reported for libxml or libxslt
1298    - updated xmlcatalog to be able to modify SGML super catalogs
1299 
1300 
1301 2.4.5: Sep 14 2001:
1302    - Remove a few annoying bugs in 2.4.4
1303    - forces the HTML serializer to output decimal charrefs since some
1304     version of Netscape can't handle hexadecimal ones
1305 
1306 
1307 1.8.16: Sep 14 2001:
1308    - maintenance release of the old libxml1 branch, couple of bug and
1309     portability fixes
1310 
1311 
1312 2.4.4: Sep 12 2001:
1313    - added --convert to xmlcatalog, bug fixes and cleanups of XML
1314   Catalog
1315    - a few bug fixes and some portability changes
1316    - some documentation cleanups
1317 
1318 
1319 2.4.3:  Aug 23 2001:
1320    - XML Catalog support see the doc
1321    - New NaN/Infinity floating point code
1322    - A few bug fixes
1323 
1324 
1325 2.4.2:  Aug 15 2001:
1326    - adds xmlLineNumbersDefault() to control line number generation
1327    - lot of bug fixes
1328    - the Microsoft MSC projects files should now be up to date
1329    - inheritance of namespaces from DTD defaulted attributes
1330    - fixes a serious potential security bug
1331    - added a --format option to xmllint
1332 
1333 
1334 2.4.1:  July 24 2001:
1335    - possibility to keep line numbers in the tree
1336    - some computation NaN fixes
1337    - extension of the XPath API
1338    - cleanup for alpha and ia64 targets
1339    - patch to allow saving through HTTP PUT or POST
1340 
1341 
1342 2.4.0: July 10 2001:
1343    - Fixed a few bugs in XPath, validation, and tree handling.
1344    - Fixed XML Base implementation, added a couple of examples to the
1345     regression tests
1346    - A bit of cleanup
1347 
1348 
1349 2.3.14: July 5 2001:
1350    - fixed some entities problems and reduce memory requirement when
1351     substituting them
1352    - lots of improvements in the XPath queries interpreter can be
1353     substantially faster
1354    - Makefiles and configure cleanups
1355    - Fixes to XPath variable eval, and compare on empty node set
1356    - HTML tag closing bug fixed
1357    - Fixed an URI reference computation problem when validating
1358 
1359 
1360 2.3.13: June 28 2001:
1361    - 2.3.12 configure.in was broken as well as the push mode XML parser
1362    - a few more fixes for compilation on Windows MSC by Yon Derek
1363 
1364 
1365 1.8.14: June 28 2001:
1366    - Zbigniew Chyla gave a patch to use the old XML parser in push mode
1367    - Small Makefile fix
1368 
1369 
1370 2.3.12: June 26 2001:
1371    - lots of cleanup
1372    - a couple of validation fix
1373    - fixed line number counting
1374    - fixed serious problems in the XInclude processing
1375    - added support for UTF8 BOM at beginning of entities
1376    - fixed a strange gcc optimizer bugs in xpath handling of float, gcc-3.0
1377     miscompile uri.c (William), Thomas Leitner provided a fix for the
1378     optimizer on Tru64
1379    - incorporated Yon Derek and Igor Zlatkovic  fixes and improvements for
1380     compilation on Windows MSC
1381    - update of libxml-doc.el (Felix Natter)
1382    - fixed 2 bugs in URI normalization code
1383 
1384 
1385 2.3.11: June 17 2001:
1386    - updates to trio, Makefiles and configure should fix some portability
1387     problems (alpha)
1388    - fixed some HTML serialization problems (pre, script, and block/inline
1389     handling), added encoding aware APIs, cleanup of this code
1390    - added xmlHasNsProp()
1391    - implemented a specific PI for encoding support in the DocBook SGML
1392     parser
1393    - some XPath fixes (-Infinity, / as a function parameter and namespaces
1394     node selection)
1395    - fixed a performance problem and an error in the validation code
1396    - fixed XInclude routine to implement the recursive behaviour
1397    - fixed xmlFreeNode problem when libxml is included statically twice
1398    - added --version to xmllint for bug reports
1399 
1400 
1401 2.3.10: June 1 2001:
1402    - fixed the SGML catalog support
1403    - a number of reported bugs got fixed, in XPath, iconv detection,
1404     XInclude processing
1405    - XPath string function should now handle unicode correctly
1406 
1407 
1408 2.3.9: May 19 2001:
1409 Lots of bugfixes, and added a basic SGML catalog support:   - HTML push bugfix #54891 and another patch from Jonas Borgström
1410    - some serious speed optimization again
1411    - some documentation cleanups
1412    - trying to get better linking on Solaris (-R)
1413    - XPath API cleanup from Thomas Broyer
1414    - Validation bug fixed #54631, added a patch from Gary Pennington, fixed
1415     xmlValidGetValidElements()
1416    - Added an INSTALL file
1417    - Attribute removal added to API: #54433
1418    - added a basic support for SGML catalogs
1419    - fixed xmlKeepBlanksDefault(0) API
1420    - bugfix in xmlNodeGetLang()
1421    - fixed a small configure portability problem
1422    - fixed an inversion of SYSTEM and PUBLIC identifier in HTML document
1423 
1424 
1425 1.8.13: May 14 2001:
1426    - bugfixes release of the old libxml1 branch used by Gnome
1427 
1428 
1429 2.3.8: May 3 2001:
1430    - Integrated an SGML DocBook parser for the Gnome project
1431    - Fixed a few things in the HTML parser
1432    - Fixed some XPath bugs raised by XSLT use, tried to fix the floating
1433     point portability issue
1434    - Speed improvement (8M/s for SAX, 3M/s for DOM, 1.5M/s for
1435     DOM+validation using the XML REC as input and a 700MHz celeron).
1436    - incorporated more Windows cleanup
1437    - added xmlSaveFormatFile()
1438    - fixed problems in copying nodes with entities references (gdome)
1439    - removed some troubles surrounding the new validation module
1440 
1441 
1442 2.3.7: April 22 2001:
1443    - lots of small bug fixes, corrected XPointer
1444    - Non deterministic content model validation support
1445    - added xmlDocCopyNode for gdome2
1446    - revamped the way the HTML parser handles end of tags
1447    - XPath: corrections of namespaces support and number formatting
1448    - Windows: Igor Zlatkovic patches for MSC compilation
1449    - HTML output fixes from P C Chow and William M. Brack
1450    - Improved validation speed sensible for DocBook
1451    - fixed a big bug with ID declared in external parsed entities
1452    - portability fixes, update of Trio from Bjorn Reese
1453 
1454 
1455 2.3.6: April 8 2001:
1456    - Code cleanup using extreme gcc compiler warning options, found and
1457     cleared half a dozen potential problem
1458    - the Eazel team found an XML parser bug
1459    - cleaned up the user of some of the string formatting function. used the
1460     trio library code to provide the one needed when the platform is missing
1461     them
1462    - xpath: removed a memory leak and fixed the predicate evaluation
1463     problem, extended the testsuite and cleaned up the result. XPointer seems
1464     broken ...
1465 
1466 
1467 2.3.5: Mar 23 2001:
1468    - Biggest change is separate parsing and evaluation of XPath expressions,
1469     there is some new APIs for this too
1470    - included a number of bug fixes(XML push parser, 51876, notations,
1471   52299)
1472    - Fixed some portability issues
1473 
1474 
1475 2.3.4: Mar 10 2001:
1476    - Fixed bugs #51860 and #51861
1477    - Added a global variable xmlDefaultBufferSize to allow default buffer
1478     size to be application tunable.
1479    - Some cleanup in the validation code, still a bug left and this part
1480     should probably be rewritten to support ambiguous content model :-\
1481    - Fix a couple of serious bugs introduced or raised by changes in 2.3.3
1482     parser
1483    - Fixed another bug in xmlNodeGetContent()
1484    - Bjorn fixed XPath node collection and Number formatting
1485    - Fixed a loop reported in the HTML parsing
1486    - blank space are reported even if the Dtd content model proves that they
1487     are formatting spaces, this is for XML conformance
1488 
1489 
1490 2.3.3: Mar 1 2001:
1491    - small change in XPath for XSLT
1492    - documentation cleanups
1493    - fix in validation by Gary Pennington
1494    - serious parsing performances improvements
1495 
1496 
1497 2.3.2: Feb 24 2001:
1498    - chasing XPath bugs, found a bunch, completed some TODO
1499    - fixed a Dtd parsing bug
1500    - fixed a bug in xmlNodeGetContent
1501    - ID/IDREF support partly rewritten by Gary Pennington
1502 
1503 
1504 2.3.1: Feb 15 2001:
1505    - some XPath and HTML bug fixes for XSLT
1506    - small extension of the hash table interfaces for DOM gdome2
1507     implementation
1508    - A few bug fixes
1509 
1510 
1511 2.3.0: Feb 8 2001 (2.2.12 was on 25 Jan but I didn't kept track):
1512    - Lots of XPath bug fixes
1513    - Add a mode with Dtd lookup but without validation error reporting for
1514     XSLT
1515    - Add support for text node without escaping (XSLT)
1516    - bug fixes for xmlCheckFilename
1517    - validation code bug fixes from Gary Pennington
1518    - Patch from Paul D. Smith correcting URI path normalization
1519    - Patch to allow simultaneous install of libxml-devel and
1520   libxml2-devel
1521    - the example Makefile is now fixed
1522    - added HTML to the RPM packages
1523    - tree copying bugfixes
1524    - updates to Windows makefiles
1525    - optimization patch from Bjorn Reese
1526 
1527 
1528 2.2.11: Jan 4 2001:
1529    - bunch of bug fixes (memory I/O, xpath, ftp/http, ...)
1530    - added htmlHandleOmittedElem()
1531    - Applied Bjorn Reese's IPV6 first patch
1532    - Applied Paul D. Smith patches for validation of XInclude results
1533    - added XPointer xmlns() new scheme support
1534 
1535 
1536 2.2.10: Nov 25 2000:
1537    - Fix the Windows problems of 2.2.8
1538    - integrate OpenVMS patches
1539    - better handling of some nasty HTML input
1540    - Improved the XPointer implementation
1541    - integrate a number of provided patches
1542 
1543 
1544 2.2.9: Nov 25 2000:
1545    - erroneous release :-(
1546 
1547 
1548 2.2.8: Nov 13 2000:
1549    - First version of XInclude
1550     support
1551    - Patch in conditional section handling
1552    - updated MS compiler project
1553    - fixed some XPath problems
1554    - added an URI escaping function
1555    - some other bug fixes
1556 
1557 
1558 2.2.7: Oct 31 2000:
1559    - added message redirection
1560    - XPath improvements (thanks TOM !)
1561    - xmlIOParseDTD() added
1562    - various small fixes in the HTML, URI, HTTP and XPointer support
1563    - some cleanup of the Makefile, autoconf and the distribution content
1564 
1565 
1566 2.2.6: Oct 25 2000::
1567    - Added an hash table module, migrated a number of internal structure to
1568     those
1569    - Fixed a posteriori validation problems
1570    - HTTP module cleanups
1571    - HTML parser improvements (tag errors, script/style handling, attribute
1572     normalization)
1573    - coalescing of adjacent text nodes
1574    - couple of XPath bug fixes, exported the internal API
1575 
1576 
1577 2.2.5: Oct 15 2000::
1578    - XPointer implementation and testsuite
1579    - Lot of XPath fixes, added variable and functions registration, more
1580     tests
1581    - Portability fixes, lots of enhancements toward an easy Windows build
1582     and release
1583    - Late validation fixes
1584    - Integrated a lot of contributed patches
1585    - added memory management docs
1586    - a performance problem when using large buffer seems fixed
1587 
1588 
1589 2.2.4: Oct 1 2000::
1590    - main XPath problem fixed
1591    - Integrated portability patches for Windows
1592    - Serious bug fixes on the URI and HTML code
1593 
1594 
1595 2.2.3: Sep 17 2000:
1596    - bug fixes
1597    - cleanup of entity handling code
1598    - overall review of all loops in the parsers, all sprintf usage has been
1599     checked too
1600    - Far better handling of larges Dtd. Validating against DocBook XML Dtd
1601     works smoothly now.
1602 
1603 
1604 1.8.10: Sep 6 2000:
1605    - bug fix release for some Gnome projects
1606 
1607 
1608 2.2.2: August 12 2000:
1609    - mostly bug fixes
1610    - started adding routines to access xml parser context options
1611 
1612 
1613 2.2.1: July 21 2000:
1614    - a purely bug fixes release
1615    - fixed an encoding support problem when parsing from a memory block
1616    - fixed a DOCTYPE parsing problem
1617    - removed a bug in the function allowing to override the memory
1618     allocation routines
1619 
1620 
1621 2.2.0: July 14 2000:
1622    - applied a lot of portability fixes
1623    - better encoding support/cleanup and saving (content is now always
1624     encoded in UTF-8)
1625    - the HTML parser now correctly handles encodings
1626    - added xmlHasProp()
1627    - fixed a serious problem with &
1628    - propagated the fix to FTP client
1629    - cleanup, bugfixes, etc ...
1630    - Added a page about libxml Internationalization
1631     support
1632 
1633 
1634 1.8.9:  July 9 2000:
1635    - fixed the spec the RPMs should be better
1636    - fixed a serious bug in the FTP implementation, released 1.8.9 to solve
1637     rpmfind users problem
1638 
1639 
1640 2.1.1: July 1 2000:
1641    - fixes a couple of bugs in the 2.1.0 packaging
1642    - improvements on the HTML parser
1643 
1644 
1645 2.1.0 and 1.8.8: June 29 2000:
1646    - 1.8.8 is mostly a commodity package for upgrading to libxml2 according
1647     to new instructions. It fixes a nasty problem
1648     about & charref parsing
1649    - 2.1.0 also ease the upgrade from libxml v1 to the recent version. it
1650     also contains numerous fixes and enhancements:
1651     added xmlStopParser() to stop parsing
1652       improved a lot parsing speed when there is large CDATA blocs
1653       includes XPath patches provided by Picdar Technology
1654       tried to fix as much as possible DTD validation and namespace
1655         related problems
1656       output to a given encoding has been added/tested
1657       lot of various fixes
1658     
1659    - added xmlStopParser() to stop parsing
1660    - improved a lot parsing speed when there is large CDATA blocs
1661    - includes XPath patches provided by Picdar Technology
1662    - tried to fix as much as possible DTD validation and namespace
1663         related problems
1664    - output to a given encoding has been added/tested
1665    - lot of various fixes
1666 
1667 
1668 2.0.0: Apr 12 2000:
1669    - First public release of libxml2. If you are using libxml, it's a good
1670     idea to check the 1.x to 2.x upgrade instructions. NOTE: while initially
1671     scheduled for Apr 3 the release occurred only on Apr 12 due to massive
1672     workload.
1673    - The include are now located under $prefix/include/libxml (instead of
1674     $prefix/include/gnome-xml), they also are referenced by
1675     #include <libxml/xxx.h>
1676     instead of
1677     #include "xxx.h"
1678   
1679    - a new URI module for parsing URIs and following strictly RFC 2396
1680    - the memory allocation routines used by libxml can now be overloaded
1681     dynamically by using xmlMemSetup()
1682    - The previously CVS only tool tester has been renamed
1683     xmllint and is now installed as part of the libxml2
1684     package
1685    - The I/O interface has been revamped. There is now ways to plug in
1686     specific I/O modules, either at the URI scheme detection level using
1687     xmlRegisterInputCallbacks()  or by passing I/O functions when creating a
1688     parser context using xmlCreateIOParserCtxt()
1689    - there is a C preprocessor macro LIBXML_VERSION providing the version
1690     number of the libxml module in use
1691    - a number of optional features of libxml can now be excluded at
1692     configure time (FTP/HTTP/HTML/XPath/Debug)
1693 
1694 
1695 2.0.0beta: Mar 14 2000:
1696    - This is a first Beta release of libxml version 2
1697    - It's available only fromxmlsoft.org
1698     FTP, it's packaged as libxml2-2.0.0beta and available as tar and
1699   RPMs
1700    - This version is now the head in the Gnome CVS base, the old one is
1701     available under the tag LIB_XML_1_X
1702    - This includes a very large set of changes. From a  programmatic point
1703     of view applications should not have to be modified too much, check the
1704     upgrade page
1705    - Some interfaces may changes (especially a bit about encoding).
1706    - the updates includes:
1707     fix I18N support. ISO-Latin-x/UTF-8/UTF-16 (nearly) seems correctly
1708         handled now
1709       Better handling of entities, especially well-formedness checking
1710         and proper PEref extensions in external subsets
1711       DTD conditional sections
1712       Validation now correctly handle entities content
1713       change
1714         structures to accommodate DOM
1715     
1716    - fix I18N support. ISO-Latin-x/UTF-8/UTF-16 (nearly) seems correctly
1717         handled now
1718    - Better handling of entities, especially well-formedness checking
1719         and proper PEref extensions in external subsets
1720    - DTD conditional sections
1721    - Validation now correctly handle entities content
1722    - change
1723         structures to accommodate DOM
1724    - Serious progress were made toward compliance, here are the result of the test against the
1725     OASIS testsuite (except the Japanese tests since I don't support that
1726     encoding yet). This URL is rebuilt every couple of hours using the CVS
1727     head version.
1728 
1729 
1730 1.8.7: Mar 6 2000:
1731    - This is a bug fix release:
1732    - It is possible to disable the ignorable blanks heuristic used by
1733     libxml-1.x, a new function  xmlKeepBlanksDefault(0) will allow this. Note
1734     that for adherence to XML spec, this behaviour will be disabled by
1735     default in 2.x . The same function will allow to keep compatibility for
1736     old code.
1737    - Blanks in <a>  </a> constructs are not ignored anymore,
1738     avoiding heuristic is really the Right Way :-\
1739    - The unchecked use of snprintf which was breaking libxml-1.8.6
1740     compilation on some platforms has been fixed
1741    - nanoftp.c nanohttp.c: Fixed '#' and '?' stripping when processing
1742   URIs
1743 
1744 
1745 1.8.6: Jan 31 2000:
1746    - added a nanoFTP transport module, debugged until the new version of rpmfind can use
1747     it without troubles
1748 
1749 
1750 1.8.5: Jan 21 2000:
1751    - adding APIs to parse a well balanced chunk of XML (production [43] content of the
1752     XML spec)
1753    - fixed a hideous bug in xmlGetProp pointed by Rune.Djurhuus@fast.no
1754    - Jody Goldberg <jgoldberg@home.com> provided another patch trying
1755     to solve the zlib checks problems
1756    - The current state in gnome CVS base is expected to ship as 1.8.5 with
1757     gnumeric soon
1758 
1759 
1760 1.8.4: Jan 13 2000:
1761    - bug fixes, reintroduced xmlNewGlobalNs(), fixed xmlNewNs()
1762    - all exit() call should have been removed from libxml
1763    - fixed a problem with INCLUDE_WINSOCK on WIN32 platform
1764    - added newDocFragment()
1765 
1766 
1767 1.8.3: Jan 5 2000:
1768    - a Push interface for the XML and HTML parsers
1769    - a shell-like interface to the document tree (try tester --shell :-)
1770    - lots of bug fixes and improvement added over XMas holidays
1771    - fixed the DTD parsing code to work with the xhtml DTD
1772    - added xmlRemoveProp(), xmlRemoveID() and xmlRemoveRef()
1773    - Fixed bugs in xmlNewNs()
1774    - External entity loading code has been revamped, now it uses
1775     xmlLoadExternalEntity(), some fix on entities processing were added
1776    - cleaned up WIN32 includes of socket stuff
1777 
1778 
1779 1.8.2: Dec 21 1999:
1780    - I got another problem with includes and C++, I hope this issue is fixed
1781     for good this time
1782    - Added a few tree modification functions: xmlReplaceNode,
1783     xmlAddPrevSibling, xmlAddNextSibling, xmlNodeSetName and
1784     xmlDocSetRootElement
1785    - Tried to improve the HTML output with help from Chris Lahey
1786 
1787 
1788 1.8.1: Dec 18 1999:
1789    - various patches to avoid troubles when using libxml with C++ compilers
1790     the "namespace" keyword and C escaping in include files
1791    - a problem in one of the core macros IS_CHAR was corrected
1792    - fixed a bug introduced in 1.8.0 breaking default namespace processing,
1793     and more specifically the Dia application
1794    - fixed a posteriori validation (validation after parsing, or by using a
1795     Dtd not specified in the original document)
1796    - fixed a bug in
1797 
1798 
1799 1.8.0: Dec 12 1999:
1800    - cleanup, especially memory wise
1801    - the parser should be more reliable, especially the HTML one, it should
1802     not crash, whatever the input !
1803    - Integrated various patches, especially a speedup improvement for large
1804     dataset from Carl Nygard,
1805     configure with --with-buffers to enable them.
1806    - attribute normalization, oops should have been added long ago !
1807    - attributes defaulted from DTDs should be available, xmlSetProp() now
1808     does entities escaping by default.
1809 
1810 
1811 1.7.4: Oct 25 1999:
1812    - Lots of HTML improvement
1813    - Fixed some errors when saving both XML and HTML
1814    - More examples, the regression tests should now look clean
1815    - Fixed a bug with contiguous charref
1816 
1817 
1818 1.7.3: Sep 29 1999:
1819    - portability problems fixed
1820    - snprintf was used unconditionally, leading to link problems on system
1821     were it's not available, fixed
1822 
1823 
1824 1.7.1: Sep 24 1999:
1825    - The basic type for strings manipulated by libxml has been renamed in
1826     1.7.1 from CHAR to xmlChar. The reason
1827     is that CHAR was conflicting with a predefined type on Windows. However
1828     on non WIN32 environment, compatibility is provided by the way of  a
1829     #define .
1830    - Changed another error : the use of a structure field called errno, and
1831     leading to troubles on platforms where it's a macro
1832 
1833 
1834 1.7.0: Sep 23 1999:
1835    - Added the ability to fetch remote DTD or parsed entities, see the nanohttp module.
1836    - Added an errno to report errors by another mean than a simple printf
1837     like callback
1838    - Finished ID/IDREF support and checking when validation
1839    - Serious memory leaks fixed (there is now a memory wrapper module)
1840    - Improvement of XPath
1841     implementation
1842    - Added an HTML parser front-end
1843 
1844 Daniel Veillard at 
1845 bugs.html