NEWS file for libxml2 Note that this is automatically generated from the news webpage at: http://xmlsoft.org/news.html Items not finished and worked on, get in touch with the list if you want to help those - More testing on RelaxNG - Finishing up XML Schemas The change log at ChangeLog.html describes the recents commits to the CVS at http://cvs.gnome.org/viewcvs/libxml2/ code base.There is the list of public releases: 2.6.26: Jun 6 2006 - portability fixes: Python detection (Joseph Sacco), compilation error (William Brack and Graham Bennett), LynxOS patch (Olli Savia) - bug fixes: encoding buffer problem, mix of code and data in xmlIO.c (Kjartan Maraas), entities in XSD validation (Kasimier Buchcik), various XSD validation fixes (Kasimier), memory leak in pattern (Rob Richards and Kasimier), attribute with colon in name (Rob Richards), XPath leak in error reporting (Aleksey Sanin), XInclude text include of selfdocument. - improvements: Xpath optimizations (Kasimier), XPath object cache(Kasimier) 2.6.25: Jun 6 2006: Do not use or package 2.6.25 2.6.24: Apr 28 2006: - Portability fixes: configure on Windows, testapi compile on windows (Kasimier Buchcik, venkat naidu), Borland C++ 6 compile (Eric Zurcher), HP-UX compiler workaround (Rick Jones), xml2-config bugfix, gcc-4.1 cleanups, Python detection scheme (Joseph Sacco), UTF-8 file paths on Windows (Roland Schwingel). - Improvements: xmlDOMWrapReconcileNamespaces xmlDOMWrapCloneNode (Kasimier Buchcik), XML catalog debugging (Rick Jones), update to Unicode 4.01. - Bug fixes: xmlParseChunk() problem in 2.6.23, xmlParseInNodeContext() on HTML docs, URI behaviour on Windows (Rob Richards), comment streaming bug, xmlParseComment (with William Brack), regexp bug fixes (DV & Youri Golovanov), xmlGetNodePath on text/CDATA (Kasimier), one Relax-NG interleave bug, xmllint --path and --valid, XSD bugfixes (Kasimier), remove debug left in Python bindings (Nic Ferrier), xmlCatalogAdd bug (Martin Cole), xmlSetProp fixes (Rob Richards), HTML IDness (Rob Richards), a large number of cleanups and small fixes based on Coverity reports, bug in character ranges, Unicode tables const (Aivars Kalvans), schemas fix (Stefan Kost), xmlRelaxNGParse error deallocation, xmlSchemaAddSchemaDoc error deallocation, error handling on unallowed code point, ixmllint --nonet to never reach the net (Gary Coady), line break in writer after end PI (Jason Viers). - Documentation: man pages updates and cleanups (Daniel Leidert). - New features: Relax NG structure error handlers. 2.6.23: Jan 5 2006: - portability fixes: Windows (Rob Richards), getaddrinfo on Windows (Kolja Nowak, Rob Richards), icc warnings (Kjartan Maraas), --with-minimum compilation fixes (William Brack), error case handling fix on Solaris (Albert Chin), don't use 'list' as parameter name reported by Samuel Diaz Garcia, more old Unices portability fixes (Albert Chin), MinGW compilation (Mark Junker), HP-UX compiler warnings (Rick Jones), - code cleanup: xmlReportError (Adrian Mouat), remove xmlBufferClose (Geert Jansen), unreachable code (Oleksandr Kononenko), refactoring parsing code (Bjorn Reese) - bug fixes: xmlBuildRelativeURI and empty path (William Brack), combinatory explosion and performances in regexp code, leak in xmlTextReaderReadString(), xmlStringLenDecodeEntities problem (Massimo Morara), Identity Constraints bugs and a segfault (Kasimier Buchcik), XPath pattern based evaluation bugs (DV & Kasimier), xmlSchemaContentModelDump() memory leak (Kasimier), potential leak in xmlSchemaCheckCSelectorXPath(), xmlTextWriterVSprintf() misuse of vsnprintf (William Brack), XHTML serialization fix (Rob Richards), CRLF split problem (William), issues with non-namespaced attributes in xmlAddChild() xmlAddNextSibling() and xmlAddPrevSibling() (Rob Richards), HTML parsing of script, Python must not output to stdout (Nic Ferrier), exclusive C14N namespace visibility (Aleksey Sanin), XSD dataype totalDigits bug (Kasimier Buchcik), error handling when writing to an xmlBuffer (Rob Richards), runtest schemas error not reported (Hisashi Fujinaka), signed/unsigned problem in date/time code (Albert Chin), fix XSI driven XSD validation (Kasimier), parsing of xs:decimal (Kasimier), fix DTD writer output (Rob Richards), leak in xmlTextReaderReadInnerXml (Gary Coady), regexp bug affecting schemas (Kasimier), configuration of runtime debugging (Kasimier), xmlNodeBufGetContent bug on entity refs (Oleksandr Kononenko), xmlRegExecPushString2 bug (Sreeni Nair), compilation and build fixes (Michael Day), removed dependancies on xmlSchemaValidError (Kasimier), bug with , more XPath pattern based evaluation fixes (Kasimier) - improvements: XSD Schemas redefinitions/restrictions (Kasimier Buchcik), node copy checks and fix for attribute (Rob Richards), counted transition bug in regexps, ctxt->standalone = -2 to indicate no standalone attribute was found, add xmlSchemaSetParserStructuredErrors() (Kasimier Buchcik), add xmlTextReaderSchemaValidateCtxt() to API (Kasimier), handle gzipped HTTP resources (Gary Coady), add htmlDocDumpMemoryFormat. (Rob Richards), - documentation: typo (Michael Day), libxml man page (Albert Chin), save function to XML buffer (Geert Jansen), small doc fix (Aron Stansvik), 2.6.22: Sep 12 2005: - build fixes: compile without schematron (Stéphane Bidoul) - bug fixes: xmlDebugDumpNode on namespace node (Oleg Paraschenko)i, CDATA push parser bug, xmlElemDump problem with XHTML1 doc, XML_FEATURE_xxx clash with expat headers renamed XML_WITH_xxx, fix some output formatting for meta element (Rob Richards), script and style XHTML1 serialization (David Madore), Attribute derivation fixups in XSD (Kasimier Buchcik), better IDC error reports (Kasimier Buchcik) - improvements: add XML_SAVE_NO_EMPTY xmlSaveOption (Rob Richards), add XML_SAVE_NO_XHTML xmlSaveOption, XML Schemas improvements preparing for derive (Kasimier Buchcik). - documentation: generation of gtk-doc like docs, integration with devhelp. 2.6.21: Sep 4 2005: - build fixes: Cygwin portability fixes (Gerrit P. Haase), calling convention problems on Windows (Marcus Boerger), cleanups based on Linus' sparse tool, update of win32/configure.js (Rob Richards), remove warnings on Windows(Marcus Boerger), compilation without SAX1, detection of the Python binary, use $GCC inestad of $CC = 'gcc' (Andrew W. Nosenko), compilation/link with threads and old gcc, compile problem by C370 on Z/OS, - bug fixes: http_proxy environments (Peter Breitenlohner), HTML UTF-8 bug (Jiri Netolicky), XPath NaN compare bug (William Brack), htmlParseScript potential bug, Schemas regexp handling of spaces, Base64 Schemas comparisons NIST passes, automata build error xsd:all, xmlGetNodePath for namespaced attributes (Alexander Pohoyda), xmlSchemas foreign namespaces handling, XML Schemas facet comparison (Kupriyanov Anatolij), xmlSchemaPSimpleTypeErr error report (Kasimier Buchcik), xml: namespace ahndling in Schemas (Kasimier), empty model group in Schemas (Kasimier), wilcard in Schemas (Kasimier), URI composition (William), xs:anyType in Schemas (Kasimier), Python resolver emmitting error messages directly, Python xmlAttr.parent (Jakub Piotr Clapa), trying to fix the file path/URI conversion, xmlTextReaderGetAttribute fix (Rob Richards), xmlSchemaFreeAnnot memleak (Kasimier), HTML UTF-8 serialization, streaming XPath, Schemas determinism detection problem, XInclude bug, Schemas context type (Dean Hill), validation fix (Derek Poon), xmlTextReaderGetAttribute[Ns] namespaces (Rob Richards), Schemas type fix (Kuba Nowakowski), UTF-8 parser bug, error in encoding handling, xmlGetLineNo fixes, bug on entities handling, entity name extraction in error handling with XInclude, text nodes in HTML body tags (Gary Coady), xml:id and IDness at the treee level fixes, XPath streaming patterns bugs. - improvements: structured interfaces for schemas and RNG error reports (Marcus Boerger), optimization of the char data inner loop parsing (thanks to Behdad Esfahbod for the idea), schematron validation though not finished yet, xmlSaveOption to omit XML declaration, keyref match error reports (Kasimier), formal expression handling code not plugged yet, more lax mode for the HTML parser, parser XML_PARSE_COMPACT option for text nodes allocation. - documentation: xmllint man page had --nonet duplicated 2.6.20: Jul 10 2005: - build fixes: Windows build (Rob Richards), Mingw compilation (Igor Zlatkovic), Windows Makefile (Igor), gcc warnings (Kasimier and andriy@google.com), use gcc weak references to pthread to avoid the pthread dependancy on Linux, compilation problem (Steve Nairn), compiling of subset (Morten Welinder), IPv6/ss_family compilation (William Brack), compilation when disabling parts of the library, standalone test distribution. - bug fixes: bug in lang(), memory cleanup on errors (William Brack), HTTP query strings (Aron Stansvik), memory leak in DTD (William), integer overflow in XPath (William), nanoftp buffer size, pattern "." apth fixup (Kasimier), leak in tree reported by Malcolm Rowe, replaceNode patch (Brent Hendricks), CDATA with NULL content (Mark Vakoc), xml:base fixup on XInclude (William), pattern fixes (William), attribute bug in exclusive c14n (Aleksey Sanin), xml:space and xml:lang with SAX2 (Rob Richards), namespace trouble in complex parsing (Malcolm Rowe), XSD type QNames fixes (Kasimier), XPath streaming fixups (William), RelaxNG bug (Rob Richards), Schemas for Schemas fixes (Kasimier), removal of ID (Rob Richards), a small RelaxNG leak, HTML parsing in push mode bug (James Bursa), failure to detect UTF-8 parsing bugs in CDATA sections, areBlanks() heuristic failure, duplicate attributes in DTD bug (William). - improvements: lot of work on Schemas by Kasimier Buchcik both on conformance and streaming, Schemas validation messages (Kasimier Buchcik, Matthew Burgess), namespace removal at the python level (Brent Hendricks), Update to new Schemas regression tests from W3C/Nist (Kasimier), xmlSchemaValidateFile() (Kasimier), implementation of xmlTextReaderReadInnerXml and xmlTextReaderReadOuterXml (James Wert), standalone test framework and programs, new DOM import APIs xmlDOMWrapReconcileNamespaces() xmlDOMWrapAdoptNode() and xmlDOMWrapRemoveNode(), extension of xmllint capabilities for SAX and Schemas regression tests, xmlStopParser() available in pull mode too, ienhancement to xmllint --shell namespaces support, Windows port of the standalone testing tools (Kasimier and William), xmlSchemaValidateStream() xmlSchemaSAXPlug() and xmlSchemaSAXUnplug() SAX Schemas APIs, Schemas xmlReader support. 2.6.19: Apr 02 2005: - build fixes: drop .la from RPMs, --with-minimum build fix (William Brack), use XML_SOCKLEN_T instead of SOCKLEN_T because it breaks with AIX 5.3 compiler, fixed elfgcchack.h generation and PLT reduction code on Linux/ELF/gcc4 - bug fixes: schemas type decimal fixups (William Brack), xmmlint return code (Gerry Murphy), small schemas fixes (Matthew Burgess and GUY Fabrice), workaround "DAV:" namespace brokeness in c14n (Aleksey Sanin), segfault in Schemas (Kasimier Buchcik), Schemas attribute validation (Kasimier), Prop related functions and xmlNewNodeEatName (Rob Richards), HTML serialization of name attribute on a elements, Python error handlers leaks and improvement (Brent Hendricks), uninitialized variable in encoding code, Relax-NG validation bug, potential crash if gnorableWhitespace is NULL, xmlSAXParseDoc and xmlParseDoc signatures, switched back to assuming UTF-8 in case no encoding is given at serialization time - improvements: lot of work on Schemas by Kasimier Buchcik on facets checking and also mixed handling. - 2.6.18: Mar 13 2005: - build fixes: warnings (Peter Breitenlohner), testapi.c generation, Bakefile support (Francesco Montorsi), Windows compilation (Joel Reed), some gcc4 fixes, HP-UX portability fixes (Rick Jones). - bug fixes: xmlSchemaElementDump namespace (Kasimier Buchcik), push and xmlreader stopping on non-fatal errors, thread support for dictionnaries reference counting (Gary Coady), internal subset and push problem, URL saved in xmlCopyDoc, various schemas bug fixes (Kasimier), Python paths fixup (Stephane Bidoul), xmlGetNodePath and namespaces, xmlSetNsProp fix (Mike Hommey), warning should not count as error (William Brack), xmlCreatePushParser empty chunk, XInclude parser flags (William), cleanup FTP and HTTP code to reuse the uri parsing and IPv6 (William), xmlTextWriterStartAttributeNS fix (Rob Richards), XMLLINT_INDENT being empty (William), xmlWriter bugs (Rob Richards), multithreading on Windows (Rich Salz), xmlSearchNsByHref fix (Kasimier), Python binding leak (Brent Hendricks), aliasing bug exposed by gcc4 on s390, xmlTextReaderNext bug (Rob Richards), Schemas decimal type fixes (William Brack), xmlByteConsumed static buffer (Ben Maurer). - improvement: speedup parsing comments and DTDs, dictionnary support for hash tables, Schemas Identity constraints (Kasimier), streaming XPath subset, xmlTextReaderReadString added (Bjorn Reese), Schemas canonical values handling (Kasimier), add xmlTextReaderByteConsumed (Aron Stansvik), - Documentation: Wiki support (Joel Reed) 2.6.17: Jan 16 2005: - build fixes: Windows, warnings removal (William Brack), maintainer-clean dependency(William), build in a different directory (William), fixing --with-minimum configure build (William), BeOS build (Marcin Konicki), Python-2.4 detection (William), compilation on AIX (Dan McNichol) - bug fixes: xmlTextReaderHasAttributes (Rob Richards), xmlCtxtReadFile() to use the catalog(s), loop on output (William Brack), XPath memory leak, ID deallocation problem (Steve Shepard), debugDumpNode crash (William), warning not using error callback (William), xmlStopParser bug (William), UTF-16 with BOM on DTDs (William), namespace bug on empty elements in push mode (Rob Richards), line and col computations fixups (Aleksey Sanin), xmlURIEscape fix (William), xmlXPathErr on bad range (William), patterns with too many steps, bug in RNG choice optimization, line number sometimes missing. - improvements: XSD Schemas (Kasimier Buchcik), python generator (William), xmlUTF8Strpos speedup (William), unicode Python strings (William), XSD error reports (Kasimier Buchcik), Python __str__ call serialize(). - new APIs: added xmlDictExists(), GetLineNumber and GetColumnNumber for the xmlReader (Aleksey Sanin), Dynamic Shared Libraries APIs (mostly Joel Reed), error extraction API from regexps, new XMLSave option for format (Phil Shafer) - documentation: site improvement (John Fleck), FAQ entries (William). 2.6.16: Nov 10 2004: - general hardening and bug fixing crossing all the API based on new automated regression testing - build fix: IPv6 build and test on AIX (Dodji Seketeli) - bug fixes: problem with XML::Libxml reported by Petr Pajas, encoding conversion functions return values, UTF-8 bug affecting XPath reported by Markus Bertheau, catalog problem with NULL entries (William Brack) - documentation: fix to xmllint man page, some API function descritpion were updated. - improvements: DTD validation APIs provided at the Python level (Brent Hendricks) 2.6.15: Oct 27 2004: - security fixes on the nanoftp and nanohttp modules - build fixes: xmllint detection bug in configure, building outside the source tree (Thomas Fitzsimmons) - bug fixes: HTML parser on broken ASCII chars in names (William), Python paths (Malcolm Tredinnick), xmlHasNsProp and default namespace (William), saving to python file objects (Malcolm Tredinnick), DTD lookup fix (Malcolm), save back in catalogs (William), tree build fixes (DV and Rob Richards), Schemas memory bug, structured error handler on Python 64bits, thread local memory deallocation, memory leak reported by Volker Roth, xmlValidateDtd in the presence of an internal subset, entities and _private problem (William), xmlBuildRelativeURI error (William). - improvements: better XInclude error reports (William), tree debugging module and tests, convenience functions at the Reader API (Graham Bennett), add support for PI in the HTML parser. 2.6.14: Sep 29 2004: - build fixes: configure paths for xmllint and xsltproc, compilation without HTML parser, compilation warning cleanups (William Brack & Malcolm Tredinnick), VMS makefile update (Craig Berry), - bug fixes: xmlGetUTF8Char (William Brack), QName properties (Kasimier Buchcik), XInclude testing, Notation serialization, UTF8ToISO8859x transcoding (Mark Itzcovitz), lots of XML Schemas cleanup and fixes (Kasimier), ChangeLog cleanup (Stepan Kasal), memory fixes (Mark Vakoc), handling of failed realloc(), out of bound array adressing in Schemas date handling, Python space/tabs cleanups (Malcolm Tredinnick), NMTOKENS E20 validation fix (Malcolm), - improvements: added W3C XML Schemas testsuite (Kasimier Buchcik), add xmlSchemaValidateOneElement (Kasimier), Python exception hierearchy (Malcolm Tredinnick), Python libxml2 driver improvement (Malcolm Tredinnick), Schemas support for xsi:schemaLocation, xsi:noNamespaceSchemaLocation, xsi:type (Kasimier Buchcik) 2.6.13: Aug 31 2004: - build fixes: Windows and zlib (Igor Zlatkovic), -O flag with gcc, Solaris compiler warning, fixing RPM BuildRequires, - fixes: DTD loading on Windows (Igor), Schemas error reports APIs (Kasimier Buchcik), Schemas validation crash, xmlCheckUTF8 (William Brack and Julius Mittenzwei), Schemas facet check (Kasimier), default namespace problem (William), Schemas hexbinary empty values, encoding error could genrate a serialization loop. - Improvements: Schemas validity improvements (Kasimier), added --path and --load-trace options to xmllint - documentation: tutorial update (John Fleck) 2.6.12: Aug 22 2004: - build fixes: fix --with-minimum, elfgcchack.h fixes (Peter Breitenlohner), perl path lookup (William), diff on Solaris (Albert Chin), some 64bits cleanups. - Python: avoid a warning with 2.3 (William Brack), tab and space mixes (William), wrapper generator fixes (William), Cygwin support (Gerrit P. Haase), node wrapper fix (Marc-Antoine Parent), XML Schemas support (Torkel Lyng) - Schemas: a lot of bug fixes and improvements from Kasimier Buchcik - fixes: RVT fixes (William), XPath context resets bug (William), memory debug (Steve Hay), catalog white space handling (Peter Breitenlohner), xmlReader state after attribute reading (William), structured error handler (William), XInclude generated xml:base fixup (William), Windows memory reallocation problem (Steve Hay), Out of Memory conditions handling (William and Olivier Andrieu), htmlNewDoc() charset bug, htmlReadMemory init (William), a posteriori validation DTD base (William), notations serialization missing, xmlGetNodePath (Dodji), xmlCheckUTF8 (Diego Tartara), missing line numbers on entity (William) - improvements: DocBook catalog build scrip (William), xmlcatalog tool (Albert Chin), xmllint --c14n option, no_proxy environment (Mike Hommey), xmlParseInNodeContext() addition, extend xmllint --shell, allow XInclude to not generate start/end nodes, extend xmllint --version to include CVS tag (William) - documentation: web pages fixes, validity API docs fixes (William) schemas API fix (Eric Haszlakiewicz), xmllint man page (John Fleck) 2.6.11: July 5 2004: - Schemas: a lot of changes and improvements by Kasimier Buchcik for attributes, namespaces and simple types. - build fixes: --with-minimum (William Brack), some gcc cleanup (William), --with-thread-alloc (William) - portability: Windows binary package change (Igor Zlatkovic), Catalog path on Windows - documentation: update to the tutorial (John Fleck), xmllint return code (John Fleck), man pages (Ville Skytta), - bug fixes: C14N bug serializing namespaces (Aleksey Sanin), testSAX properly initialize the library (William), empty node set in XPath (William), xmlSchemas errors (William), invalid charref problem pointed by Morus Walter, XInclude xml:base generation (William), Relax-NG bug with div processing (William), XPointer and xml:base problem(William), Reader and entities, xmllint return code for schemas (William), reader streaming problem (Steve Ball), DTD serialization problem (William), libxml.m4 fixes (Mike Hommey), do not provide destructors as methods on Python classes, xmlReader buffer bug, Python bindings memory interfaces improvement (with Stéphane Bidoul), Fixed the push parser to be back to synchronous behaviour. - improvement: custom per-thread I/O enhancement (Rob Richards), register namespace in debug shell (Stefano Debenedetti), Python based regression test for non-Unix users (William), dynamically increase the number of XPath extension functions in Python and fix a memory leak (Marc-Antoine Parent and William) - performance: hack done with Arjan van de Ven to reduce ELF footprint and generated code on Linux, plus use gcc runtime profiling to optimize the code generated in the RPM packages. 2.6.10: May 17 2004: - Web page generated for ChangeLog - build fixes: --without-html problems, make check without make all - portability: problem with xpath.c on Windows (MSC and Borland), memcmp vs. strncmp on Solaris, XPath tests on Windows (Mark Vakoc), C++ do not use "list" as parameter name, make tests work with Python 1.5 (Ed Davis), - improvements: made xmlTextReaderMode public, small buffers resizing (Morten Welinder), add --maxmem option to xmllint, add xmlPopInputCallback() for Matt Sergeant, refactoring of serialization escaping, added escaping customization - bugfixes: xsd:extension (Taihei Goi), assorted regexp bugs (William Brack), xmlReader end of stream problem, node deregistration with reader, URI escaping and filemanes, XHTML1 formatting (Nick Wellnhofer), regexp transition reduction (William), various XSD Schemas fixes (Kasimier Buchcik), XInclude fallback problem (William), weird problems with DTD (William), structured error handler callback context (William), reverse xmlEncodeSpecialChars() behaviour back to escaping '"' 2.6.9: Apr 18 2004: - implement xml:id Working Draft, relaxed XPath id() checking - bugfixes: xmlCtxtReset (Brent Hendricks), line number and CDATA (Dave Beckett), Relax-NG compilation (William Brack), Regexp patches (with William), xmlUriEscape (Mark Vakoc), a Relax-NG notAllowed problem (with William), Relax-NG name classes compares (William), XInclude duplicate fallback (William), external DTD encoding detection (William), a DTD validation bug (William), xmlReader Close() fix, recusive extention schemas - improvements: use xmlRead* APIs in test tools (Mark Vakoc), indenting save optimization, better handle IIS broken HTTP redirect behaviour (Ian Hummel), HTML parser frameset (James Bursa), libxml2-python RPM dependancy, XML Schemas union support (Kasimier Buchcik), warning removal clanup (William), keep ChangeLog compressed when installing from RPMs - documentation: examples and xmlDocDumpMemory docs (John Fleck), new example (load, xpath, modify, save), xmlCatalogDump() comments, - Windows: Borland C++ builder (Eric Zurcher), work around Microsoft compiler NaN handling bug (Mark Vakoc) 2.6.8: Mar 23 2004: - First step of the cleanup of the serialization code and APIs - XML Schemas: mixed content (Adam Dickmeiss), QName handling fixes (Adam Dickmeiss), anyURI for "" (John Belmonte) - Python: Canonicalization C14N support added (Anthony Carrico) - xmlDocCopyNode() extension (William) - Relax-NG: fix when processing XInclude results (William), external reference in interleave (William), missing error on failure (William), memory leak in schemas datatype facets. - xmlWriter: patch for better DTD support (Alfred Mickautsch) - bug fixes: xmlXPathLangFunction memory leak (Mike Hommey and William Brack), no ID errors if using HTML_PARSE_NOERROR, xmlcatalog fallbacks to URI on SYSTEM lookup failure, XInclude parse flags inheritance (William), XInclude and XPointer fixes for entities (William), XML parser bug reported by Holger Rauch, nanohttp fd leak (William), regexps char groups '-' handling (William), dictionnary reference counting problems, do not close stderr. - performance patches from Petr Pajas - Documentation fixes: XML_CATALOG_FILES in man pages (Mike Hommey) - compilation and portability fixes: --without-valid, catalog cleanups (Peter Breitenlohner), MingW patch (Roland Schwingel), cross-compilation to Windows (Christophe de Vienne), --with-html-dir fixup (Julio Merino Vidal), Windows build (Eric Zurcher) 2.6.7: Feb 23 2004: - documentation: tutorial updates (John Fleck), benchmark results - xmlWriter: updates and fixes (Alfred Mickautsch, Lucas Brasilino) - XPath optimization (Petr Pajas) - DTD ID handling optimization - bugfixes: xpath number with > 19 fractional (William Brack), push mode with unescaped '>' characters, fix xmllint --stream --timing, fix xmllint --memory --stream memory usage, xmlAttrSerializeTxtContent handling NULL, trying to fix Relax-NG/Perl interface. - python: 2.3 compatibility, whitespace fixes (Malcolm Tredinnick) - Added relaxng option to xmllint --shell 2.6.6: Feb 12 2004: - nanohttp and nanoftp: buffer overflow error on URI parsing (Igor and William) reported by Yuuichi Teranishi - bugfixes: make test and path issues, xmlWriter attribute serialization (William Brack), xmlWriter indentation (William), schemas validation (Eric Haszlakiewicz), XInclude dictionnaries issues (William and Oleg Paraschenko), XInclude empty fallback (William), HTML warnings (William), XPointer in XInclude (William), Python namespace serialization, isolat1ToUTF8 bound error (Alfred Mickautsch), output of parameter entities in internal subset (William), internal subset bug in push mode, fix (Alexey Sarytchev) - Build: fix for automake-1.8 (Alexander Winston), warnings removal (Philip Ludlam), SOCKLEN_T detection fixes (Daniel Richard), fix --with-minimum configuration. - XInclude: allow the 2001 namespace without warning. - Documentation: missing example/index.html (John Fleck), version dependancies (John Fleck) - reader API: structured error reporting (Steve Ball) - Windows compilation: mingw, msys (Mikhail Grushinskiy), function prototype (Cameron Johnson), MSVC6 compiler warnings, _WINSOCKAPI_ patch - Parsers: added xmlByteConsumed(ctxt) API to get the byte offest in input. 2.6.5: Jan 25 2004: - Bugfixes: dictionnaries for schemas (William Brack), regexp segfault (William), xs:all problem (William), a number of XPointer bugfixes (William), xmllint error go to stderr, DTD validation problem with namespace, memory leak (William), SAX1 cleanup and minimal options fixes (Mark Vadoc), parser context reset on error (Shaun McCance), XPath union evaluation problem (William) , xmlReallocLoc with NULL (Aleksey Sanin), XML Schemas double free (Steve Ball), XInclude with no href, argument callbacks order for XPath callbacks (Frederic Peters) - Documentation: python scripts (William Brack), xslt stylesheets (John Fleck), doc (Sven Zimmerman), I/O example. - Python bindings: fixes (William), enum support (Stéphane Bidoul), structured error reporting (Stéphane Bidoul) - XInclude: various fixes for conformance, problem related to dictionnary references (William & me), recursion (William) - xmlWriter: indentation (Lucas Brasilino), memory leaks (Alfred Mickautsch), - xmlSchemas: normalizedString datatype (John Belmonte) - code cleanup for strings functions (William) - Windows: compiler patches (Mark Vakoc) - Parser optimizations, a few new XPath and dictionnary APIs for future XSLT optimizations. 2.6.4: Dec 24 2003: - Windows build fixes (Igor Zlatkovic) - Some serious XInclude problems reported by Oleg Paraschenko and - Unix and Makefile packaging fixes (me, William Brack, - Documentation improvements (John Fleck, William Brack), example fix (Lucas Brasilino) - bugfixes: xmlTextReaderExpand() with xmlReaderWalker, XPath handling of NULL strings (William Brack) , API building reader or parser from filedescriptor should not close it, changed XPath sorting to be stable again (William Brack), xmlGetNodePath() generating '(null)' (William Brack), DTD validation and namespace bug (William Brack), XML Schemas double inclusion behaviour 2.6.3: Dec 10 2003: - documentation updates and cleanup (DV, William Brack, John Fleck) - added a repository of examples, examples from Aleksey Sanin, Dodji Seketeli, Alfred Mickautsch - Windows updates: Mark Vakoc, Igor Zlatkovic, Eric Zurcher, Mingw (Kenneth Haley) - Unicode range checking (William Brack) - code cleanup (William Brack) - Python bindings: doc (John Fleck), bug fixes - UTF-16 cleanup and BOM issues (William Brack) - bug fixes: ID and xmlReader validation, XPath (William Brack), xmlWriter (Alfred Mickautsch), hash.h inclusion problem, HTML parser (James Bursa), attribute defaulting and validation, some serialization cleanups, XML_GET_LINE macro, memory debug when using threads (William Brack), serialization of attributes and entities content, xmlWriter (Daniel Schulman) - XInclude bugfix, new APIs and update to the last version including the namespace change. - XML Schemas improvements: include (Robert Stepanek), import and namespace handling, fixed the regression tests troubles, added examples based on Eric van der Vlist book, regexp fixes - preliminary pattern support for streaming (needed for schemas constraints), added xmlTextReaderPreservePattern() to collect subdocument when streaming. - various fixes in the structured error handling 2.6.2: Nov 4 2003: - XPath context unregistration fixes - text node coalescing fixes (Mark Lilback) - API to screate a W3C Schemas from an existing document (Steve Ball) - BeOS patches (Marcin 'Shard' Konicki) - xmlStrVPrintf function added (Aleksey Sanin) - compilation fixes (Mark Vakoc) - stdin parsing fix (William Brack) - a posteriori DTD validation fixes - xmlReader bug fixes: Walker fixes, python bindings - fixed xmlStopParser() to really stop the parser and errors - always generate line numbers when using the new xmlReadxxx functions - added XInclude support to the xmlReader interface - implemented XML_PARSE_NONET parser option - DocBook XSLT processing bug fixed - HTML serialization for

elements (William Brack and me) - XPointer failure in XInclude are now handled as resource errors - fixed xmllint --html to use the HTML serializer on output (added --xmlout to implement the previous behaviour of saving it using the XML serializer) 2.6.1: Oct 28 2003: - Mostly bugfixes after the big 2.6.0 changes - Unix compilation patches: libxml.m4 (Patrick Welche), warnings cleanup (William Brack) - Windows compilation patches (Joachim Bauch, Stephane Bidoul, Igor Zlatkovic) - xmlWriter bugfix (Alfred Mickautsch) - chvalid.[ch]: couple of fixes from Stephane Bidoul - context reset: error state reset, push parser reset (Graham Bennett) - context reuse: generate errors if file is not readable - defaulted attributes for element coming from internal entities (Stephane Bidoul) - Python: tab and spaces mix (William Brack) - Error handler could crash in DTD validation in 2.6.0 - xmlReader: do not use the document or element _private field - testSAX.c: avoid a problem with some PIs (Massimo Morara) - general bug fixes: mandatory encoding in text decl, serializing Document Fragment nodes, xmlSearchNs 2.6.0 problem (Kasimier Buchcik), XPath errors not reported, slow HTML parsing of large documents. 2.6.0: Oct 20 2003: - Major revision release: should be API and ABI compatible but got a lot of change - Increased the library modularity, far more options can be stripped out, a --with-minimum configuration will weight around 160KBytes - Use per parser and per document dictionnary, allocate names and small text nodes from the dictionnary - Switch to a SAX2 like parser rewrote most of the XML parser core, provides namespace resolution and defaulted attributes, minimize memory allocations and copies, namespace checking and specific error handling, immutable buffers, make predefined entities static structures, etc... - rewrote all the error handling in the library, all errors can be intercepted at a structured level, with precise information available. - New simpler and more generic XML and HTML parser APIs, allowing to easilly modify the parsing options and reuse parser context for multiple consecutive documents. - Similar new APIs for the xmlReader, for options and reuse, provided new functions to access content as const strings, use them for Python bindings - a lot of other smaller API improvements: xmlStrPrintf (Aleksey Sanin), Walker i.e. reader on a document tree based on Alfred Mickautsch code, make room in nodes for line numbers, reference counting and future PSVI extensions, generation of character ranges to be checked with faster algorithm (William), xmlParserMaxDepth (Crutcher Dunnavant), buffer access - New xmlWriter API provided by Alfred Mickautsch - Schemas: base64 support by Anthony Carrico - Parser<->HTTP integration fix, proper processing of the Mime-Type and charset informations if available. - Relax-NG: bug fixes including the one reported by Martijn Faassen and zeroOrMore, better error reporting. - Python bindings (Stéphane Bidoul), never use stdout for errors output - Portability: all the headers have macros for export and calling convention definitions (Igor Zlatkovic), VMS update (Craig A. Berry), Windows: threads (Jesse Pelton), Borland compiler (Eric Zurcher, Igor), Mingw (Igor), typos (Mark Vakoc), beta version (Stephane Bidoul), warning cleanups on AIX and MIPS compilers (William Brack), BeOS (Marcin 'Shard' Konicki) - Documentation fixes and README (William Brack), search fix (William), tutorial updates (John Fleck), namespace docs (Stefan Kost) - Bug fixes: xmlCleanupParser (Dave Beckett), threading uninitialized mutexes, HTML doctype lowercase, SAX/IO (William), compression detection and restore (William), attribute declaration in DTDs (William), namespace on attribute in HTML output (William), input filename (Rob Richards), namespace DTD validation, xmlReplaceNode (Chris Ryland), I/O callbacks (Markus Keim), CDATA serialization (Shaun McCance), xmlReader (Peter Derr), high codepoint charref like 􏿿, buffer access in push mode (Justin Fletcher), TLS threads on Windows (Jesse Pelton), XPath bug (William), xmlCleanupParser (Marc Liyanage), CDATA output (William), HTTP error handling. - xmllint options: --dtdvalidfpi for Tobias Reif, --sax1 for compat testing, --nodict for building without tree dictionnary, --nocdata to replace CDATA by text, --nsclean to remove surperfluous namespace declarations - added xml2-config --libtool-libs option from Kevin P. Fleming - a lot of profiling and tuning of the code, speedup patch for xmlSearchNs() by Luca Padovani. The xmlReader should do far less allocation and it speed should get closer to SAX. Chris Anderson worked on speeding and cleaning up repetitive checking code. - cleanup of "make tests" - libxml-2.0-uninstalled.pc from Malcolm Tredinnick - deactivated the broken docBook SGML parser code and plugged the XML parser instead. 2.5.11: Sep 9 2003: A bugfix only release: - risk of crash in Relax-NG - risk of crash when using multithreaded programs 2.5.10: Aug 15 2003: A bugfixes only release - Windows Makefiles (William Brack) - UTF-16 support fixes (Mark Itzcovitz) - Makefile and portability (William Brack) automake, Linux alpha, Mingw on Windows (Mikhail Grushinskiy) - HTML parser (Oliver Stoeneberg) - XInclude performance problem reported by Kevin Ruscoe - XML parser performance problem reported by Grant Goodale - xmlSAXParseDTD() bug fix from Malcolm Tredinnick - and a couple other cleanup 2.5.9: Aug 9 2003: - bugfixes: IPv6 portability, xmlHasNsProp (Markus Keim), Windows build (Wiliam Brake, Jesse Pelton, Igor), Schemas (Peter Sobisch), threading (Rob Richards), hexBinary type (), UTF-16 BOM (Dodji Seketeli), xmlReader, Relax-NG schemas compilation, namespace handling, EXSLT (Sean Griffin), HTML parsing problem (William Brack), DTD validation for mixed content + namespaces, HTML serialization, library initialization, progressive HTML parser - better interfaces for Relax-NG error handling (Joachim Bauch, ) - adding xmlXIncludeProcessTree() for XInclud'ing in a subtree - doc fixes and improvements (John Fleck) - configure flag for -with-fexceptions when embedding in C++ - couple of new UTF-8 helper functions (William Brack) - general encoding cleanup + ISO-8859-x without iconv (Peter Jacobi) - xmlTextReader cleanup + enum for node types (Bjorn Reese) - general compilation/warning cleanup Solaris/HP-UX/... (William Brack) 2.5.8: Jul 6 2003: - bugfixes: XPath, XInclude, file/URI mapping, UTF-16 save (Mark Itzcovitz), UTF-8 checking, URI saving, error printing (William Brack), PI related memleak, compilation without schemas or without xpath (Joerg Schmitz-Linneweber/Garry Pennington), xmlUnlinkNode problem with DTDs, rpm problem on , i86_64, removed a few compilation problems from 2.5.7, xmlIOParseDTD, and xmlSAXParseDTD (Malcolm Tredinnick) - portability: DJGPP (MsDos) , OpenVMS (Craig A. Berry) - William Brack fixed multithreading lock problems - IPv6 patch for FTP and HTTP accesses (Archana Shah/Wipro) - Windows fixes (Igor Zlatkovic, Eric Zurcher), threading (Stéphane Bidoul) - A few W3C Schemas Structure improvements - W3C Schemas Datatype improvements (Charlie Bozeman) - Python bindings for thread globals (Stéphane Bidoul), and method/class generator - added --nonet option to xmllint - documentation improvements (John Fleck) 2.5.7: Apr 25 2003: - Relax-NG: Compiling to regexp and streaming validation on top of the xmlReader interface, added to xmllint --stream - xmlReader: Expand(), Next() and DOM access glue, bug fixes - Support for large files: RGN validated a 4.5GB instance - Thread support is now configured in by default - Fixes: update of the Trio code (Bjorn), WXS Date and Duration fixes (Charles Bozeman), DTD and namespaces (Brent Hendricks), HTML push parser and zero bytes handling, some missing Windows file path conversions, behaviour of the parser and validator in the presence of "out of memory" error conditions - extended the API to be able to plug a garbage collecting memory allocator, added xmlMallocAtomic() and modified the allocations accordingly. - Performances: removed excessive malloc() calls, speedup of the push and xmlReader interfaces, removed excessive thread locking - Documentation: man page (John Fleck), xmlReader documentation - Python: adding binding for xmlCatalogAddLocal (Brent M Hendricks) 2.5.6: Apr 1 2003: - Fixed W3C XML Schemas datatype, should be compliant now except for binHex and base64 which are not supported yet. - bug fixes: non-ASCII IDs, HTML output, XInclude on large docs and XInclude entities handling, encoding detection on external subsets, XML Schemas bugs and memory leaks, HTML parser (James Bursa) - portability: python/trio (Albert Chin), Sun compiler warnings - documentation: added --relaxng option to xmllint man page (John) - improved error reporting: xml:space, start/end tag mismatches, Relax NG errors 2.5.5: Mar 24 2003: - Lot of fixes on the Relax NG implementation. More testing including DocBook and TEI examples. - Increased the support for W3C XML Schemas datatype - Several bug fixes in the URI handling layer - Bug fixes: HTML parser, xmlReader, DTD validation, XPath, encoding conversion, line counting in the parser. - Added support for $XMLLINT_INDENT environment variable, FTP delete - Fixed the RPM spec file name 2.5.4: Feb 20 2003: - Conformance testing and lot of fixes on Relax NG and XInclude implementation - Implementation of XPointer element() scheme - Bug fixes: XML parser, XInclude entities merge, validity checking on namespaces, 2 serialization bugs, node info generation problems, a DTD regexp generation problem. - Portability: windows updates and path canonicalization (Igor) - A few typo fixes (Kjartan Maraas) - Python bindings generator fixes (Stephane Bidoul) 2.5.3: Feb 10 2003: - RelaxNG and XML Schemas datatypes improvements, and added a first version of RelaxNG Python bindings - Fixes: XLink (Sean Chittenden), XInclude (Sean Chittenden), API fix for serializing namespace nodes, encoding conversion bug, XHTML1 serialization - Portability fixes: Windows (Igor), AMD 64bits RPM spec file 2.5.2: Feb 5 2003: - First implementation of RelaxNG, added --relaxng flag to xmllint - Schemas support now compiled in by default. - Bug fixes: DTD validation, namespace checking, XInclude and entities, delegateURI in XML Catalogs, HTML parser, XML reader (Stéphane Bidoul), XPath parser and evaluation, UTF8ToUTF8 serialization, XML reader memory consumption, HTML parser, HTML serialization in the presence of namespaces - added an HTML API to check elements and attributes. - Documentation improvement, PDF for the tutorial (John Fleck), doc patches (Stefan Kost) - Portability fixes: NetBSD (Julio Merino), Windows (Igor Zlatkovic) - Added python bindings for XPointer, contextual error reporting (Stéphane Bidoul) - URI/file escaping problems (Stefano Zacchiroli) 2.5.1: Jan 8 2003: - Fixes a memory leak and configuration/compilation problems in 2.5.0 - documentation updates (John) - a couple of XmlTextReader fixes 2.5.0: Jan 6 2003: - New XmltextReader interface based on C# API (with help of Stéphane Bidoul) - Windows: more exports, including the new API (Igor) - XInclude fallback fix - Python: bindings for the new API, packaging (Stéphane Bidoul), drv_libxml2.py Python xml.sax driver (Stéphane Bidoul), fixes, speedup and iterators for Python-2.2 (Hannu Krosing) - Tutorial fixes (john Fleck and Niraj Tolia) xmllint man update (John) - Fix an XML parser bug raised by Vyacheslav Pindyura - Fix for VMS serialization (Nigel Hall) and config (Craig A. Berry) - Entities handling fixes - new API to optionally track node creation and deletion (Lukas Schroeder) - Added documentation for the XmltextReader interface and some XML guidelines 2.4.30: Dec 12 2002: - 2.4.29 broke the python bindings, rereleasing - Improvement/fixes of the XML API generator, and couple of minor code fixes. 2.4.29: Dec 11 2002: - Windows fixes (Igor): Windows CE port, pthread linking, python bindings (Stéphane Bidoul), Mingw (Magnus Henoch), and export list updates - Fix for prev in python bindings (ERDI Gergo) - Fix for entities handling (Marcus Clarke) - Refactored the XML and HTML dumps to a single code path, fixed XHTML1 dump - Fix for URI parsing when handling URNs with fragment identifiers - Fix for HTTP URL escaping problem - added an TextXmlReader (C#) like API (work in progress) - Rewrote the API in XML generation script, includes a C parser and saves more informations needed for C# bindings 2.4.28: Nov 22 2002: - a couple of python binding fixes - 2 bug fixes in the XML push parser - potential memory leak removed (Martin Stoilov) - fix to the configure script for Unix (Dimitri Papadopoulos) - added encoding support for XInclude parse="text" - autodetection of XHTML1 and specific serialization rules added - nasty threading bug fixed (William Brack) 2.4.27: Nov 17 2002: - fixes for the Python bindings - a number of bug fixes: SGML catalogs, xmlParseBalancedChunkMemory(), HTML parser, Schemas (Charles Bozeman), document fragment support (Christian Glahn), xmlReconciliateNs (Brian Stafford), XPointer, xmlFreeNode(), xmlSAXParseMemory (Peter Jones), xmlGetNodePath (Petr Pajas), entities processing - added grep to xmllint --shell - VMS update patch from Craig A. Berry - cleanup of the Windows build with support for more compilers (Igor), better thread support on Windows - cleanup of Unix Makefiles and spec file - Improvements to the documentation (John Fleck) 2.4.26: Oct 18 2002: - Patches for Windows CE port, improvements on Windows paths handling - Fixes to the validation code (DTD and Schemas), xmlNodeGetPath() , HTML serialization, Namespace compliance, and a number of small problems 2.4.25: Sep 26 2002: - A number of bug fixes: XPath, validation, Python bindings, DOM and tree, xmlI/O, Html - Serious rewrite of XInclude - Made XML Schemas regexp part of the default build and APIs, small fix and improvement of the regexp core - Changed the validation code to reuse XML Schemas regexp APIs - Better handling of Windows file paths, improvement of Makefiles (Igor, Daniel Gehriger, Mark Vakoc) - Improved the python I/O bindings, the tests, added resolver and regexp APIs - New logos from Marc Liyanage - Tutorial improvements: John Fleck, Christopher Harris - Makefile: Fixes for AMD x86_64 (Mandrake), DESTDIR (Christophe Merlet) - removal of all stderr/perror use for error reporting - Better error reporting: XPath and DTD validation - update of the trio portability layer (Bjorn Reese) 2.4.24: Aug 22 2002 - XPath fixes (William), xf:escape-uri() (Wesley Terpstra) - Python binding fixes: makefiles (William), generator, rpm build, x86-64 (fcrozat) - HTML