xref: /reactos/sdk/lib/3rdparty/libxml2/NEWS (revision 20a6cff4)
1NEWS file for libxml2
2
3v2.10.0: Aug 17 2022
4
5### Security
6
7- [CVE-2022-2309] Reset nsNr in xmlCtxtReset
8- Reserve byte for NUL terminator and report errors consistently in xmlBuf and
9  xmlBuffer (David Kilzer)
10- Fix missing NUL terminators in xmlBuf and xmlBuffer functions (David Kilzer)
11- Fix integer overflow in xmlBufferDump() (David Kilzer)
12- xmlBufAvail() should return length without including a byte for NUL
13  terminator (David Kilzer)
14- Fix ownership of xmlNodePtr & xmlAttrPtr fields in xmlSetTreeDoc() (David
15  Kilzer)
16- Use xmlNewDocText in xmlXIncludeCopyRange
17- Fix use-after-free bugs when calling xmlTextReaderClose() before
18  xmlFreeTextReader() on post-validating parser (David Kilzer)
19- Use UPDATE_COMPAT() consistently in buf.c (David Kilzer)
20- fix: xmlXPathParserContext could be double-delete in  OOM case. (jinsub ahn)
21
22### Removals and deprecations
23
24- Disable XPointer location support by default
25- Remove outdated xml2Conf.sh
26- Deprecate module init and cleanup functions
27- Remove obsolete XML Software Autoupdate (XSA) file
28- Remove DOCBparser
29- Remove obsolete Python test framework
30- Remove broken VxWorks support
31- Remove broken Mac OS 9 support
32- Remove broken bakefile support
33- Remove broken Visual Studio 2010 support
34- Remove broken Windows CE support
35- Deprecate IDREF-related functions in valid.h
36- Deprecate legacy functions
37- Disable legacy support by default
38- Deprecate all functions in nanoftp.h
39- Disable FTP support by default
40- Add XML_DEPRECATED macro
41- Remove elfgcchack.h
42
43### Regressions
44
45- Skip incorrectly opened HTML comments
46- Restore behavior of htmlDocContentDumpFormatOutput() (David Kilzer)
47
48### Bug fixes
49
50- Fix memory leak with invalid XSD
51- Make XPath depth check work with recursive invocations
52- Fix memory leak in xmlLoadEntityContent error path
53- Avoid double-free if malloc fails in inputPush
54- Properly fold whitespace around the QName value when validating an XSD
55  schema. (Damjan Jovanovic)
56- Add whitespace folding for some atomic data types that it's missing on.
57  (Damjan Jovanovic)
58- Don't add IDs containing unexpanded entity references
59
60### Improvements
61
62- Avoid calling xmlSetTreeDoc
63- Simplify xmlFreeNode
64- Don't reset nsDef when changing node content
65- Fix unintended fall-through in xmlNodeAddContentLen
66- Remove unused xmlBuf functions (David Kilzer)
67- Implement xpath1() XPointer scheme
68- Add configuration flag for XPointer locations support
69- Fix compiler warnings in Python code
70- Mark more static data as `const` (David Kilzer)
71- Make xmlStaticCopyNode non-recursive
72- Clean up encoding switching code
73- Simplify recursive pthread mutex
74- Use non-recursive mutex in dict.c
75- Fix parser progress checks
76- Avoid arithmetic on freed pointers
77- Improve buffer allocation scheme
78- Remove unneeded #includes
79- Add support for some non-standard escapes in regular expressions. (Damjan
80  Jovanovic)
81- htmlParseComment: handle abruptly-closed comments (Mike Dalessio)
82- Add let variable tag support (Oliver Diehl)
83- Add value-of tag support (Oliver Diehl)
84- Remove useless call to xmlRelaxNGCleanupTypes
85- Don't include ICU headers in public headers
86- Update `xmlStrlen()` to use POSIX / ISO C `strlen()` (Mike Dalessio)
87- Fix unused variable warnings with disabled features
88- Only warn on invalid redeclarations of predefined entities
89- Remove unneeded code in xmlreader.c
90- Rework validation context flags
91
92### Portability
93
94- Use NAN/INFINITY if available to init XPath NaN/Inf (Sergey Kosukhin)
95- Fix Python tests on macOS
96- Fix xmlCleanupThreads on Windows
97- Fix reinitialization of library on Windows
98- Don't mix declarations and code in runtest.c
99- Use portable python shebangs (David Seifert)
100- Use critical sections as mutex on Windows
101- Don't set HAVE_WIN32_THREADS in win32config.h
102- Use stdint.h with newer MSVC
103- Remove cruft from win32config.h
104- Remove isinf/isnan emulation in win32config.h
105- Always fopen files with "rb"
106- Remove __DJGPP__ checks
107- Remove useless __CYGWIN__ checks
108
109### Build system
110
111- Don't autogenerate doc/examples/Makefile.am
112- cmake: Install libxml.m4 on UNIX-like platforms (Daniel E)
113- cmake: Use symbol versioning on UNIX-like platforms (Daniel E)
114- Port genUnicode.py to Python 3
115- Port gentest.py to Python 3
116- cmake: Fix build without thread support
117- cmake: Install documentation in CMAKE_INSTALL_DOCDIR
118- cmake: Remove non needed files in docs dir (Daniel E)
119- configure: move XML_PRIVATE_LIBS after WIN32_EXTRA_LIBADD is set
120  (Christopher Degawa)
121- Move local Autoconf macros into m4 directory
122- Use XML_PRIVATE_LIBS in libxml2_la_LIBADD
123- Update libxml-2.0-uninstalled.pc.in
124- Remove LIBS from XML_PRIVATE_LIBS
125- Add WIN32_EXTRA_LIBADD to XML_PRIVATE_LIBS
126- Don't overlink executables
127- cmake: Adjust paths for UNIX or UNIX-like target systems (Daniel Engberg)
128- build: Make use of variables in libxml's pkg-config file (Daniel Engberg)
129- Avoid obsolescent `test -a` constructs (David Seifert)
130- Move AM_MAINTAINER_MODE to AM section
131- configure.ac: make AM_SILENT_RULES([yes]) unconditional (David Seifert)
132- Streamline documentation installation
133- Don't try to recreate COPYING symlink
134- Detect libm using libtool's macros (David Seifert)
135- configure.ac: disable static libraries by default (David Seifert)
136- python/Makefile.am: nest python docs in $(docdir) (David Seifert)
137- python/Makefile.am: rely on global AM_INIT_AUTOMAKE (David Seifert)
138- Makefile.am: install examples more idiomatically (David Seifert)
139- configure.ac: remove useless AC_SUBST (David Seifert)
140- Respect `--sysconfdir` in source files (David Seifert)
141- Ignore configure backup file created by recent autoreconf too (Vadim Zeitlin)
142- Only install *.html and *.c example files
143- Remove --with-html-dir option
144- Rework documentation build system
145- Remove old website
146- Use AM_PATH_PYTHON/PKG_CHECK_MODULES for python bindings (David Seifert)
147- Update genChRanges.py
148- Update build_glob.py
149- Remove ICONV_CONST test
150- Remove obsolete AC_HEADER checks
151- Don't check for standard C89 library functions
152- Don't check for standard C89 headers
153- Remove special configuration for certain maintainers
154
155### Test suite, CI
156
157- Disable network in API tests
158- testapi: remove leading slash from "/missing.xml" (Mike Gilbert)
159- Build Autotools CI tests out of source tree (VPATH)
160- Add --with-minimum build to CI tests
161- Fix warnings when testing --with-minimum build
162- cmake: Run all tests when threads are disabled
163- Also build CI tests with -Werror
164- Move doc/examples tests to new test suite
165- Simplify 'make check' targets
166- Fix schemas and relaxng tests
167- Remove unused result files
168- Allow missing result files in runtest
169- Move regexp tests to runtest
170- Move SVG tests to runtest.c
171- Move testModule to new test suite
172- Move testThreads to new test suite
173- Remove major parts of old test suite
174- Make testchar return an error on failure (Tony Tascioglu)
175- Add CI job for static build
176- python/tests: open() relative to test scripts (David Seifert)
177- Port some test scripts to Python 3
178
179### Documentation
180
181- Improve documentation of tree manipulation API
182- Update xml2-config man page
183- Consolidate man pages
184- Rename xmlcatalog_man.xml
185- Make examples a standalone HTML page
186- Fix documentation in entities.c
187- Add note about optimization flags
188
189
190v2.9.14: May 02 2022:
191   - Security:
192  [CVE-2022-29824] Integer overflow in xmlBuf and xmlBuffer
193  Fix potential double-free in xmlXPtrStringRangeFunction
194  Fix memory leak in xmlFindCharEncodingHandler
195  Normalize XPath strings in-place
196  Prevent integer-overflow in htmlSkipBlankChars() and xmlSkipBlankChars()
197    (David Kilzer)
198  Fix leak of xmlElementContent (David Kilzer)
199
200   - Bug fixes:
201  Fix parsing of subtracted regex character classes
202  Fix recursion check in xinclude.c
203  Reset last error in xmlCleanupGlobals
204  Fix certain combinations of regex range quantifiers
205  Fix range quantifier on subregex
206
207   - Improvements:
208  Fix recovery from invalid HTML start tags
209
210   - Build system, portability:
211  Define LFS macros before including system headers
212  Initialize XPath floating-point globals
213  configure: check for icu DEFS (James Hilliard)
214  configure.ac: produce tar.xz only (GNOME policy) (David Seifert)
215  CMakeLists.txt: Fix LIBXML_VERSION_NUMBER
216  Fix build with older Python versions
217  Fix --without-valid build
218
219
220v2.9.13: Feb 19 2022:
221   - Security:
222  [CVE-2022-23308] Use-after-free of ID and IDREF attributes
223  (Thanks to Shinji Sato for the report)
224  Use-after-free in xmlXIncludeCopyRange (David Kilzer)
225  Fix Null-deref-in-xmlSchemaGetComponentTargetNs (huangduirong)
226  Fix memory leak in xmlXPathCompNodeTest
227  Fix null pointer deref in xmlStringGetNodeList
228  Fix several memory leaks found by Coverity (David King)
229
230   - Fixed regressions:
231  Fix regression in RelaxNG pattern matching
232  Properly handle nested documents in xmlFreeNode
233  Fix regression with PEs in external DTD
234  Fix random dropping of characters on dumping ASCII encoded XML (Mohammad Razavi)
235  Revert "Make schema validation fail with multiple top-level elements"
236  Fix regression when parsing invalid HTML tags in push mode
237  Fix regression parsing public IDs literals in HTML
238  Fix buffering in xmlOutputBufferWrite
239  Fix whitespace when serializing empty HTML documents
240  Fix XPath recursion limit
241  Fix regression in xmlNodeDumpOutputInternal
242  Work around lxml API abuse
243
244   - Bug fixes:
245  Fix xmlSetTreeDoc with entity references
246  Fix double counting of CRLF in comments
247  Make sure to grow input buffer in xmlParseMisc
248  Don't ignore xmllint options after "-"
249  Don't normalize namespace URIs in XPointer xmlns() scheme
250  Fix handling of XSD with empty namespace
251  Also register HTML document nodes
252  Make xmllint return an error if arguments are missing
253  Fix handling of ctxt->base in xmlXPtrEvalXPtrPart
254  Fix xmllint --maxmem
255  Fix htmlReadFd, which was using a mix of xml and html context functions (Finn Barber)
256  Move current position before possible calling of ctxt->sax->characters (Yulin Li)
257  Fix parse failure when 4-byte character in UTF-16 BE is split across a chunk (David Kilzer)
258  Patch to forbid epsilon-reduction of final states (Arne Becker)
259  Avoid segfault at exit when using custom memory functions (Mike Dalessio)
260
261   - Tests, code quality, fuzzing:
262  Remove .travis.yml
263  Make xmlFuzzReadString return a zero size in error case
264  Fix unused function warning in testapi.c
265  Update NewsML DTD in test suite
266  Add more checks for malloc failures in xmllint.c
267  Avoid potential integer overflow in xmlstring.c
268  Run CI tests with UBSan implicit-conversion checks
269  Fix casting of line numbers in SAX2.c
270  Fix integer conversion warnings in hash.c
271  Add explicit casts in runtest.c
272  Fix integer conversion warning in xmlIconvWrapper
273  Add suffix to unsigned constant in xmlmemory.c
274  Add explicit casts in testchar.c
275  Fix integer conversion warnings in xmlstring.c
276  Add explicit cast in xmlURIUnescapeString
277  Remove unused variable in xmlCharEncOutFunc (David King)
278
279   - Build system, portability:
280  Remove xmlwin32version.h
281  Fix fuzzer test with VPATH build
282  Support custom prefix when installing Python module
283  Remove Makefile.win
284  Remove CVS and SVN-related code
285  Port python 3.x module to Windows and improve distutils (Chun-wei Fan)
286  Correctly install the HTML examples into their subdirectory (Mattia Rizzolo)
287  Refactor the settings of $docdir (Mattia Rizzolo)
288  Remove unused configure checks (Ben Boeckel)
289  python/Makefile.am: use *_LIBADD, not *_LDFLAGS for LIBS (Sam James)
290  Fix check for libtool in autogen.sh
291  Use version in configure.ac for CMake (Timothy Lyanguzov)
292  Add CMake alias targets for embedded projects (Markus Rickert)
293
294   - Documentation:
295  Remove SVN keyword anchors
296  Rework README
297  Remove README.cvs-commits
298  Remove old ChangeLog
299  Update hyperlinks
300  Remove README.docs
301  Remove MAINTAINERS
302  Remove xmltutorial.pdf
303  Upload documentation to GitLab pages
304  Document how to escape XML_CATALOG_FILES
305  Fix libxml2.doap
306  Update URL for libxml++ C++ binding (Kjell Ahlstedt)
307  Generate devhelp2 index file (Emmanuele Bassi)
308  Mention XML_CATALOG_FILES is space-separated (Jan Tojnar)
309  Add documentaiton for xmllint exit code 10 (Rainer Canavan)
310  Fix some validation errors in the FAQ (David King)
311  Add instructions on how to use CMake to compile libxml (Markus Rickert)
312
313
314
315v2.9.12: May 13 2021:
316   - Build system:
317  Add fuzz.h and seed/regexp to EXTRA_DIST
318
319
320
321v2.9.11: May 13 2021:
322   - Security:
323  Patch for security issue CVE-2021-3541 (Daniel Veillard)
324
325   - Documentation:
326  Clarify xmlNewDocProp documentation (Nick Wellnhofer)
327
328   - Portability:
329  CMake: Only add postfixes if MSVC (Christopher Degawa),
330  Fix XPath NaN/Inf for older GCC versions (Nick Wellnhofer),
331  Use CMake PROJECT_VERSION (Markus Rickert),
332  Fix warnings in libxml.m4 with autoconf 2.70+. (Simon Josefsson),
333  Add CI for CMake on MSVC (Markus Rickert),
334  Update minimum required CMake version (Markus Rickert),
335  Add variables for configured options to CMake config files (Markus Rickert),
336  Check if variables exist when defining targets (Markus Rickert),
337  Check if target exists when reading target properties (Markus Rickert),
338  Add xmlcatalog target and definition to config files (Markus Rickert),
339  Remove include directories for link-only dependencies (Markus Rickert),
340  Fix ICU build in CMake (Markus Rickert),
341  Configure pkgconfig, xml2-config, and xml2Conf.sh file (Markus Rickert),
342  Update CMake config files (Markus Rickert),
343  Add xmlcatalog and xmllint to CMake export (Markus Rickert),
344  Simplify xmlexports.h (Nick Wellnhofer),
345  Require dependencies based on enabled CMake options (Markus Rickert),
346  Use NAMELINK_COMPONENT in CMake install (Markus Rickert),
347  Add CMake files to EXTRA_DIST (Markus Rickert),
348  Add missing compile definition for static builds to CMake (Markus Rickert),
349  Add CI for CMake on Linux and MinGW (Markus Rickert),
350  Fix variable name in win32/configure.js (Nick Wellnhofer),
351  Fix version parsing in win32/configure.js (Nick Wellnhofer),
352  Fix autotools warnings (Nick Wellnhofer),
353  Update config.h.cmake.in (Markus Rickert),
354  win32: allow passing *FLAGS on command line (Michael Stahl),
355  Configure file xmlwin32version.h.in on MSVC (Markus Rickert),
356  List headers individually (Markus Rickert),
357  Add CMake build files (Markus Rickert),
358  Parenthesize Py<type>_Check() in ifs (Miro Hrončok),
359  Minor fixes to configure.js (Nick Wellnhofer)
360
361   - Bug Fixes:
362  Fix null deref in legacy SAX1 parser (Nick Wellnhofer),
363  Fix handling of unexpected EOF in xmlParseContent (Nick Wellnhofer),
364  Fix line numbers in error messages for mismatched tags (Nick Wellnhofer),
365  Fix htmlTagLookup (Nick Wellnhofer),
366  Propagate error in xmlParseElementChildrenContentDeclPriv (Nick Wellnhofer),
367  Fix user-after-free with `xmllint --xinclude --dropdtd` (Nick Wellnhofer),
368  Fix dangling pointer with `xmllint --dropdtd` (Nick Wellnhofer),
369  Validate UTF8 in xmlEncodeEntities (Joel Hockey),
370  Fix use-after-free with `xmllint --html --push` (Nick Wellnhofer),
371  Allow FP division by zero in xmlXPathInit (Nick Wellnhofer),
372  Fix xmlGetNodePath with invalid node types (Nick Wellnhofer),
373  Fix exponential behavior with recursive entities (Nick Wellnhofer),
374  Fix quadratic behavior when looking up xml:* attributes (Nick Wellnhofer),
375  Fix slow parsing of HTML with encoding errors (Nick Wellnhofer),
376  Fix null deref introduced with previous commit (Nick Wellnhofer),
377  Check for invalid redeclarations of predefined entities (Nick Wellnhofer),
378  Add the copy of type from original xmlDoc in xmlCopyDoc() (SVGAnimate),
379  parser.c: shrink the input buffer when appropriate (Mike Dalessio),
380  Fix infinite loop in HTML parser introduced with recent commits (Nick Wellnhofer),
381  Fix quadratic runtime when parsing CDATA sections (Nick Wellnhofer),
382  Fix timeout when handling recursive entities (Nick Wellnhofer),
383  Fix memory leak in xmlParseElementMixedContentDecl (Nick Wellnhofer),
384  Fix null deref in xmlStringGetNodeList (Nick Wellnhofer),
385  use new htmlParseLookupCommentEnd to find comment ends (Mike Dalessio),
386  htmlParseComment: treat `--!>` as if it closed the comment (Mike Dalessio),
387  Fix integer overflow in xmlSchemaGetParticleTotalRangeMin (Nick Wellnhofer),
388  encoding: fix memleak in xmlRegisterCharEncodingHandler() (Xiaoming Ni),
389  xmlschemastypes.c: xmlSchemaGetFacetValueAsULong add, check "facet->val" (Xiaoming Ni),
390  Fix null pointer deref in xmlXPtrRangeInsideFunction (Nick Wellnhofer),
391  Fix quadratic runtime in HTML push parser with null bytes (Nick Wellnhofer),
392  Avoid quadratic checking of identity-constraints (Michael Matz),
393  Fix building with ICU 68. (Frederik Seiffert),
394  Convert python/libxml.c to PY_SSIZE_T_CLEAN (Victor Stinner),
395  Fix xmlURIEscape memory leaks. (Elliott Hughes),
396  Avoid call stack overflow with XML reader and recursive XIncludes (Nick Wellnhofer),
397  Fix caret in regexp character group (Nick Wellnhofer),
398  parser.c: xmlParseCharData peek behavior fixed wrt newlines (Mike Dalessio),
399  Fix memory leaks in XPointer string-range function (Nick Wellnhofer),
400  Fix use-after-free when XIncluding text from Reader (Nick Wellnhofer),
401  Fix SEGV in xmlSAXParseFileWithData (yanjinjq),
402  Fix null deref in XPointer expression error path (Nick Wellnhofer),
403  Don't call xmlXPathInit directly (Nick Wellnhofer),
404  Fix cleanup of attributes in XML reader (Nick Wellnhofer),
405  Fix double free in XML reader with XIncludes (Nick Wellnhofer),
406  Fix memory leak in xmlXIncludeAddNode error paths (Nick Wellnhofer),
407  Revert "Fix quadratic runtime in xi:fallback processing" (Nick Wellnhofer),
408  Fix error reporting with xi:fallback (Nick Wellnhofer),
409  Fix quadratic runtime in xi:fallback processing (Nick Wellnhofer),
410  Fix corner case with empty xi:fallback (Nick Wellnhofer),
411  Fix XInclude regression introduced with recent commit (Nick Wellnhofer),
412  Fix memory leak in runtest.c (Nick Wellnhofer),
413  Make "xmllint --push --recovery" work (Nick Wellnhofer),
414  Revert "Do not URI escape in server side includes" (Nick Wellnhofer),
415  Fix column number accounting in xmlParse*NameAndCompare (Nick Wellnhofer),
416  Stop counting nbChars in parser context (Nick Wellnhofer),
417  Fix out-of-bounds read with 'xmllint --htmlout' (Nick Wellnhofer),
418  Fix exponential runtime and memory in xi:fallback processing (Nick Wellnhofer),
419  Don't process siblings of root in xmlXIncludeProcess (Nick Wellnhofer),
420  Don't recurse into xi:include children in xmlXIncludeDoProcess (Nick Wellnhofer),
421  Fix memory leak in xmlXIncludeIncludeNode error paths (Nick Wellnhofer),
422  Check for custom free function in global destructor (Nick Wellnhofer),
423  Fix integer overflow when comparing schema dates (Nick Wellnhofer),
424  Fix exponential runtime in xmlFARecurseDeterminism (Nick Wellnhofer),
425  Don't try to handle namespaces when building HTML documents (Nick Wellnhofer),
426  Fix several quadratic runtime issues in HTML push parser (Nick Wellnhofer),
427  Fix quadratic runtime when push parsing HTML start tags (Nick Wellnhofer),
428  Reset XML parser input before reporting errors (David Kilzer),
429  Fix quadratic runtime when push parsing HTML entity refs (Nick Wellnhofer),
430  Fix HTML push parser lookahead (Nick Wellnhofer),
431  Make htmlCurrentChar always translate U+0000 (Nick Wellnhofer),
432  Fix UTF-8 decoder in HTML parser (Nick Wellnhofer),
433  Fix quadratic runtime when parsing HTML script content (Nick Wellnhofer),
434  Reset HTML parser input before reporting error (Nick Wellnhofer),
435  Fix more quadratic runtime issues in HTML push parser (Nick Wellnhofer),
436  Fix regression introduced with 477c7f6a (Nick Wellnhofer),
437  Fix quadratic runtime in HTML parser (Nick Wellnhofer),
438  Reset HTML parser input before reporting encoding error (Nick Wellnhofer),
439  Fix integer overflow in xmlFAParseQuantExact (Nick Wellnhofer),
440  Fix return value of xmlC14NDocDumpMemory (Nick Wellnhofer),
441  Don't follow next pointer on documents in xmlXPathRunStreamEval (Nick Wellnhofer),
442  Fix integer overflow in _xmlSchemaParseGYear (Nick Wellnhofer),
443  Fix integer overflow when parsing {min,max}Occurs (Nick Wellnhofer),
444  Fix another memory leak in xmlSchemaValAtomicType (Nick Wellnhofer),
445  Fix unsigned integer overflow in htmlParseTryOrFinish (Nick Wellnhofer),
446  Fix integer overflow in htmlParseCharRef (Nick Wellnhofer),
447  Fix undefined behavior in UTF16LEToUTF8 (Nick Wellnhofer),
448  Fix return value of xmlCharEncOutput (Nick Wellnhofer),
449  Never expand parameter entities in text declaration (Nick Wellnhofer),
450  Fix undefined behavior in xmlXPathTryStreamCompile (Nick Wellnhofer),
451  Fix use-after-free with validating reader (Nick Wellnhofer),
452  xmlParseBalancedChunkMemory must not be called with NULL doc (Nick Wellnhofer),
453  Revert "Fix memory leak in xmlParseBalancedChunkMemoryRecover" (Nick Wellnhofer),
454  Fix memory leak in xmlXIncludeLoadDoc error path (Nick Wellnhofer),
455  Make schema validation fail with multiple top-level elements (Nick Wellnhofer),
456  Call xmlCleanupParser on ELF destruction (Samuel Thibault),
457  Fix copying of entities in xmlParseReference (Nick Wellnhofer),
458  Fix memory leak in xmlSchemaValidateStream (Zhipeng Xie),
459  Fix xmlSchemaGetCanonValue formatting for date and dateTime (Kevin Puetz),
460  Fix memory leak when shared libxml.dll is unloaded (Kevin Puetz),
461  Fix potentially-uninitialized critical section in Win32 DLL builds (Kevin Puetz),
462  Fix integer overflow in xmlBufferResize (Nick Wellnhofer),
463  Check for overflow when allocating two-dimensional arrays (Nick Wellnhofer),
464  Remove useless comparisons (Nick Wellnhofer),
465  Fix overflow check in xmlNodeDump (Nick Wellnhofer),
466  Fix infinite loop in xmlStringLenDecodeEntities (Zhipeng Xie),
467  Fix freeing of nested documents (Nick Wellnhofer),
468  Fix more memory leaks in error paths of XPath parser (Nick Wellnhofer),
469  Fix memory leaks of encoding handlers in xmlsave.c (Nick Wellnhofer),
470  Fix xml2-config error code (Nick Wellnhofer),
471  Fix memory leak in error path of XPath expr parser (Nick Wellnhofer),
472  Fix overflow handling in xmlBufBackToBuffer (Nick Wellnhofer),
473  Null pointer handling in catalog.c (raniervf),
474  xml2-config.in: fix regressions introduced by commit 2f2bf4b2c (Dmitry V. Levin)
475
476   - Improvements:
477  Store per-element parser state in a struct (Nick Wellnhofer),
478  update for xsd:language type check (PaulHiggs),
479  Update INSTALL.libxml2 (Nick Wellnhofer),
480  Fix include order in c14n.h (Nick Wellnhofer),
481  Fix duplicate xmlStrEqual calls in htmlParseEndTag (Nick Wellnhofer),
482  Speed up htmlCheckAutoClose (Nick Wellnhofer),
483  Speed up htmlTagLookup (Nick Wellnhofer),
484  Stop checking attributes for UTF-8 validity (Nick Wellnhofer),
485  Reduce some fuzzer timeouts (Nick Wellnhofer),
486  Only run a few CI tests unless scheduled (Nick Wellnhofer),
487  Improve fuzzer stability (Nick Wellnhofer),
488  Check for feature flags in fuzzer tests (Nick Wellnhofer),
489  Another attempt at improving fuzzer stability (Nick Wellnhofer),
490  Revert "Improve HTML fuzzer stability" (Nick Wellnhofer),
491  Add charset names to fuzzing dictionaries (Nick Wellnhofer),
492  Improve HTML fuzzer stability (Nick Wellnhofer),
493  Add CI for MSVC x86 (Markus Rickert),
494  Add a flag to not output anything when xmllint succeeded (hhb),
495  Speed up HTML fuzzer (Nick Wellnhofer),
496  Remove unused encoding parameter of HTML output functions (Nick Wellnhofer),
497  Handle malloc failures in fuzzing code (Nick Wellnhofer),
498  add test coverage for incorrectly-closed comments (Mike Dalessio),
499  Enforce maximum length of fuzz input (Nick Wellnhofer),
500  Remove temporary members from struct _xmlXPathContext (Nick Wellnhofer),
501  Build the Python extension with PY_SSIZE_T_CLEAN (Victor Stinner),
502  Add CI test for Python 3 (Nick Wellnhofer),
503  Add fuzzing dictionaries to EXTRA_DIST (Nick Wellnhofer),
504  Add 'fuzz' subdirectory to DIST_SUBDIRS (Nick Wellnhofer),
505  Allow port numbers up to INT_MAX (Nick Wellnhofer),
506  Handle dumps of corrupted documents more gracefully (Nick Wellnhofer),
507  Limit size of free lists in XML reader when fuzzing (Nick Wellnhofer),
508  Hardcode maximum XPath recursion depth (Nick Wellnhofer),
509  Pass URL of main entity in XML fuzzer (Nick Wellnhofer),
510  Consolidate seed corpus generation (Nick Wellnhofer),
511  Test fuzz targets with dummy driver (Nick Wellnhofer),
512  Fix regression introduced with commit d88df4b (Nick Wellnhofer),
513  Fix regression introduced with commit 74dcc10b (Nick Wellnhofer),
514  Add TODO comment in xinclude.c (Nick Wellnhofer),
515  Stop using maxParserDepth in xpath.c (Nick Wellnhofer),
516  Remove dead code in xinclude.c (Nick Wellnhofer),
517  Don't add formatting newlines to XInclude nodes (Nick Wellnhofer),
518  Don't use SAX1 if all element handlers are NULL (Nick Wellnhofer),
519  Remove unneeded progress checks in HTML parser (Nick Wellnhofer),
520  Use strcmp when fuzzing (Nick Wellnhofer),
521  Fix XPath fuzzer (Nick Wellnhofer),
522  Fuzz XInclude engine (Nick Wellnhofer),
523  Add XPath and XPointer fuzzer (Nick Wellnhofer),
524  Update fuzzing code (Nick Wellnhofer),
525  More *NodeDumpOutput fixes (Nick Wellnhofer),
526  Fix *NodeDumpOutput functions (Nick Wellnhofer),
527  Make xmlNodeDumpOutputInternal non-recursive (Nick Wellnhofer),
528  Make xhtmlNodeDumpOutput non-recursive (Nick Wellnhofer),
529  Make htmlNodeDumpFormatOutput non-recursive (Nick Wellnhofer),
530  Fix .gitattributes (Nick Wellnhofer),
531  Rework control flow in htmlCurrentChar (Nick Wellnhofer),
532  Make 'xmllint --html --push -' read from stdin (Nick Wellnhofer),
533  Remove misleading comments in xpath.c (Nick Wellnhofer),
534  Update to Devhelp index file format version 2 (Andre Klapper),
535  Set project language to C (Markus Rickert),
536  Add variable for working directory of XML Conformance Test Suite (Markus Rickert),
537  Add additional tests and XML Conformance Test Suite (Markus Rickert),
538  Add command line option for temp directory in runtest (Markus Rickert),
539  Ensure LF line endings for test files (Markus Rickert),
540  Enable runtests and testThreads (Markus Rickert),
541  Limit regexp nesting depth (Nick Wellnhofer),
542  Fix return values and documentation in encoding.c (Nick Wellnhofer),
543  Add regexp regression tests (David Kilzer),
544  Report error for invalid regexp quantifiers (Nick Wellnhofer),
545  Fix rebuilding docs, by hiding __attribute__((...)) behind a macro. (Martin Vidner),
546  Copy xs:duration parser from libexslt (Nick Wellnhofer),
547  Fuzz target for XML Schemas (Nick Wellnhofer),
548  Move entity recorder to fuzz.c (Nick Wellnhofer),
549  Fuzz target for HTML parser (Nick Wellnhofer),
550  Update GitLab CI container (Nick Wellnhofer),
551  Add options file for xml fuzzer (Nick Wellnhofer),
552  Add a couple of libFuzzer targets (Nick Wellnhofer),
553  Guard new calls to xmlValidatePopElement in xml_reader.c (Daniel Cheng),
554  Add LIBXML_VALID_ENABLED to xmlreader (Łukasz Wojniłowicz),
555  Fix typos (Nick Wellnhofer),
556  Disable LeakSanitizer (Nick Wellnhofer),
557  Stop calling SAX getEntity handler from XMLReader (Nick Wellnhofer),
558  Add test case for recursive external parsed entities (Nick Wellnhofer),
559  Enable error tests with entity substitution (Nick Wellnhofer),
560  Don't load external entity from xmlSAX2GetEntity (Nick Wellnhofer),
561  Merge code paths loading external entities (Nick Wellnhofer),
562  Copy some XMLReader option flags to parser context (Nick Wellnhofer),
563  Add xmlPopOutputCallbacks (Nick Wellnhofer),
564  Updated Python test reader2.py (Pieter van Oostrum),
565  Updated python/tests/tstLastError.py (Pieter van Oostrum),
566  Use random seed in xmlDictComputeFastKey (Ranier Vilela),
567  Enable more undefined behavior sanitizers (Nick Wellnhofer)
568
569
570
571v2.9.10: Oct 30 2019:
572   - Documentation:
573  Fix a few more typos ("fonction") (Nick Wellnhofer),
574  Large batch of typo fixes (Jared Yanovich),
575  Fix typos: tree: move{ -> s}, reconcil{i -> }ed, h{o -> e}ld by... (Jan Pokorný),
576  Fix typo: xpath: simpli{ -> fi}ed (Jan Pokorný),
577  Doc: do not mislead towards "infeasible" scenario wrt. xmlBufNodeDump (Jan Pokorný),
578  Fix comments in test code (zhouzhongyuan),
579  fix comment in testReader.c (zhouzhongyuan)
580
581   - Portability:
582  Fix some release issues on Fedora 30 (Daniel Veillard),
583  Fix exponent digits when running tests under old MSVC (Daniel Richard G),
584  Work around buggy ceil() function on AIX (Daniel Richard G),
585  Don't call printf with NULL string in runtest.c (Daniel Richard G),
586  Switched from unsigned long to ptrdiff_t in parser.c (Stephen Chenney),
587  timsort.h: support older GCCs (Jérôme Duval),
588  Make configure.ac work with older pkg-config (Nick Wellnhofer),
589  Stop defining _REENTRANT on some Win32 platforms (Nick Wellnhofer),
590  Fix nanohttp.c on MinGW (Nick Wellnhofer),
591  Fix Windows compiler warning in testC14N.c (Nick Wellnhofer),
592  Merge testThreadsWin32.c into testThreads.c (Nick Wellnhofer),
593  Fix Python bindings under Windows (Nick Wellnhofer)
594
595   - Bug Fixes:
596  Another fix for conditional sections at end of document (Nick Wellnhofer),
597  Fix for conditional sections at end of document (Nick Wellnhofer),
598  Make sure that Python tests exit with error code (Nick Wellnhofer),
599  Audit memory error handling in xpath.c (Nick Wellnhofer),
600  Fix error code in xmlTextWriterStartDocument (Nick Wellnhofer),
601  Fix integer overflow when counting written bytes (Nick Wellnhofer),
602  Fix uninitialized memory access in HTML parser (Nick Wellnhofer),
603  Fix memory leak in xmlSchemaValAtomicType (Nick Wellnhofer),
604  Disallow conditional sections in internal subset (Nick Wellnhofer),
605  Fix use-after-free in xmlTextReaderFreeNodeList (Nick Wellnhofer),
606  Fix Regextests (Nick Wellnhofer),
607  Fix empty branch in regex (Nick Wellnhofer),
608  Fix integer overflow in entity recursion check (Nick Wellnhofer),
609  Don't read external entities or XIncludes from stdin (Nick Wellnhofer),
610  Fix Schema determinism check of ##other namespaces (Nick Wellnhofer),
611  Fix potential null deref in xmlSchemaIDCFillNodeTables (zhouzhongyuan),
612  Fix potential memory leak in xmlBufBackToBuffer (Nick Wellnhofer),
613  Fix error message when processing XIncludes with fallbacks (Nick Wellnhofer),
614  Fix memory leak in xmlRegEpxFromParse (zhouzhongyuan),
615  14:00 is a valid timezone for xs:dateTime (Nick Wellnhofer),
616  Fix memory leak in xmlParseBalancedChunkMemoryRecover (Zhipeng Xie),
617  Fix potential null deref in xmlRelaxNGParsePatterns (Nick Wellnhofer),
618  Misleading error message with xs:{min|max}Inclusive (bettermanzzy),
619  Fix memory leak in xmlXIncludeLoadTxt (Wang Kirin),
620  Partial fix for comparison of xs:durations (Nick Wellnhofer),
621  Fix null deref in xmlreader buffer (zhouzhongyuan),
622  Fix unability to RelaxNG-validate grammar with choice-based name class (Jan Pokorný),
623  Fix unability to validate ambiguously constructed interleave for RelaxNG (Jan Pokorný),
624  Fix possible null dereference in xmlXPathIdFunction (zhouzhongyuan),
625  fix memory leak in xmlAllocOutputBuffer (zhouzhongyuan),
626  Fix unsigned int overflow (Jens Eggerstedt),
627  dict.h: gcc 2.95 doesn't allow multiple storage classes (Nick Wellnhofer),
628  Fix another code path in xmlParseQName (Nick Wellnhofer),
629  Make sure that xmlParseQName returns NULL in error case (Nick Wellnhofer),
630  Fix build without reader but with pattern (Nick Wellnhofer),
631  Fix memory leak in xmlAllocOutputBufferInternal error path (Nick Wellnhofer),
632  Fix unsigned integer overflow (Nick Wellnhofer),
633  Fix return value of xmlOutputBufferWrite (Nick Wellnhofer),
634  Fix parser termination from "Double hyphen within comment" error (David Warring),
635  Fix call stack overflow in xmlFreePattern (Nick Wellnhofer),
636  Fix null deref in previous commit (Nick Wellnhofer),
637  Fix memory leaks in xmlXPathParseNameComplex error paths (Nick Wellnhofer),
638  Check for integer overflow in xmlXPtrEvalChildSeq (Nick Wellnhofer),
639  Fix xmllint dump of XPath namespace nodes (Nick Wellnhofer),
640  Fix float casts in xmlXPathSubstringFunction (Nick Wellnhofer),
641  Fix null deref in xmlregexp error path (Nick Wellnhofer),
642  Fix null pointer dereference in xmlTextReaderReadOuterXml (Nick Wellnhofer),
643  Fix memory leaks in xmlParseStartTag2 error paths (Nick Wellnhofer),
644  Fix memory leak in xmlSAX2StartElement (Nick Wellnhofer),
645  Fix commit "Memory leak in xmlFreeID (xmlreader.c)" (Nick Wellnhofer),
646  Fix NULL pointer deref in xmlTextReaderValidateEntity (Nick Wellnhofer),
647  Memory leak in xmlFreeTextReader (Nick Wellnhofer),
648  Memory leak in xmlFreeID (xmlreader.c) (Nick Wellnhofer)
649
650   - Improvements:
651  Run XML conformance tests under CI (Nick Wellnhofer),
652  Update GitLab CI config (Nick Wellnhofer),
653  Propagate memory errors in valuePush (Nick Wellnhofer),
654  Propagate memory errors in xmlXPathCompExprAdd (Nick Wellnhofer),
655  Make xmlFreeDocElementContent non-recursive (Nick Wellnhofer),
656  Enable continuous integration via GitLab CI (Nick Wellnhofer),
657  Avoid ignored attribute warnings under GCC (Nick Wellnhofer),
658  Make xmlDumpElementContent non-recursive (Nick Wellnhofer),
659  Make apibuild.py ignore ATTRIBUTE_NO_SANITIZE (Nick Wellnhofer),
660  Mark xmlExp* symbols as removed (Nick Wellnhofer),
661  Make xmlParseConditionalSections non-recursive (Nick Wellnhofer),
662  Adjust expected error in Python tests (Nick Wellnhofer),
663  Make xmlTextReaderFreeNodeList non-recursive (Nick Wellnhofer),
664  Make xmlFreeNodeList non-recursive (Nick Wellnhofer),
665  Make xmlParseContent and xmlParseElement non-recursive (Nick Wellnhofer),
666  Remove executable bit from non-executable files (Nick Wellnhofer),
667  Fix expected output of test/schemas/any4 (Nick Wellnhofer),
668  Optimize build instructions in README (zhouzhongyuan),
669  xml2-config.in: Output CFLAGS and LIBS on the same line (Hugh McMaster),
670  xml2-config: Add a --dynamic switch to print only shared libraries (Hugh McMaster),
671  Annotate functions with __attribute__((no_sanitize)) (Nick Wellnhofer),
672  Fix warnings when compiling without reader or push parser (Nick Wellnhofer),
673  Remove unused member `doc` in xmlSaveCtxt (Nick Wellnhofer),
674  Limit recursion depth in xmlXPathCompOpEvalPredicate (Nick Wellnhofer),
675  Remove -Wno-array-bounds (Nick Wellnhofer),
676  Remove unreachable code in xmlXPathCountFunction (Nick Wellnhofer),
677  Improve XPath predicate and filter evaluation (Nick Wellnhofer),
678  Limit recursion depth in xmlXPathOptimizeExpression (Nick Wellnhofer),
679  Disable hash randomization when fuzzing (Nick Wellnhofer),
680  Optional recursion limit when parsing XPath expressions (Nick Wellnhofer),
681  Optional recursion limit when evaluating XPath expressions (Nick Wellnhofer),
682  Use break statements in xmlXPathCompOpEval (Nick Wellnhofer),
683  Optional XPath operation limit (Nick Wellnhofer),
684  Fix compilation with --with-minimum (Nick Wellnhofer),
685  Check XPath stack after calling functions (Nick Wellnhofer),
686  Remove debug printf in xmlreader.c (Nick Wellnhofer),
687  Always define LIBXML_THREAD_ENABLED when enabled (Michael Haubenwallner),
688  Regenerate NEWS (Nick Wellnhofer),
689  Change git repo URL (Nick Wellnhofer),
690  Change bug tracker URL (Nick Wellnhofer),
691  Remove outdated HTML file (Nick Wellnhofer),
692  Fix unused function warning in testapi.c (Nick Wellnhofer),
693  Add some generated test files to .gitignore (Nick Wellnhofer),
694  Remove unneeded function pointer casts (Nick Wellnhofer),
695  Fix -Wcast-function-type warnings (GCC 8) (Nick Wellnhofer),
696  Fix -Wformat-truncation warnings (GCC 8) (Nick Wellnhofer)
697
698   - Cleanups:
699  Rebuild docs (Nick Wellnhofer),
700  Disable xmlExp regex code (Nick Wellnhofer),
701  Remove redundant code in xmlRelaxNGValidateState (Nick Wellnhofer),
702  Remove redundant code in xmlXPathCompRelationalExpr (Nick Wellnhofer)
703
704
705
706v2.9.9: Jan 03 2019:
707   - Security:
708  CVE-2018-9251 CVE-2018-14567 Fix infinite loop in LZMA decompression (Nick Wellnhofer),
709  CVE-2018-14404 Fix nullptr deref with XPath logic ops (Nick Wellnhofer),
710
711   - Documentation:
712  reader: Fix documentation comment (Mohammed Sadiq)
713
714   - Portability:
715  Fix MSVC build with lzma (Nick Wellnhofer),
716  Variables need 'extern' in static lib on Cygwin (Michael Haubenwallner),
717  Really declare dllexport/dllimport for Cygwin (Michael Haubenwallner),
718  Merge branch 'patch-2' into 'master' (Nick Wellnhofer),
719  Change dir to $THEDIR after ACLOCAL_PATH check autoreconf creates aclocal.m4 in $srcdir (Vitaly Buka),
720  Improve error message if pkg.m4 couldn't be found (Nick Wellnhofer),
721  NaN and Inf fixes for pre-C99 compilers (Nick Wellnhofer)
722
723   - Bug Fixes:
724  Revert "Support xmlTextReaderNextSibling w/o preparsed doc" (Nick Wellnhofer),
725  Fix building relative URIs (Thomas Holder),
726  Problem with data in interleave in RelaxNG validation (Nikolai Weibull),
727  Fix memory leak in xmlSwitchInputEncodingInt error path (Nick Wellnhofer),
728  Set doc on element obtained from freeElems (Nick Wellnhofer),
729  Fix HTML serialization with UTF-8 encoding (Nick Wellnhofer),
730  Use actual doc in xmlTextReaderRead*Xml (Nick Wellnhofer),
731  Unlink node before freeing it in xmlSAX2StartElement (Nick Wellnhofer),
732  Check return value of nodePush in xmlSAX2StartElement (Nick Wellnhofer),
733  Free input buffer in xmlHaltParser (Nick Wellnhofer),
734  Reset HTML parser input pointers on encoding failure (Nick Wellnhofer),
735  Don't run icu_parse_test if EUC-JP is unsupported (Nick Wellnhofer),
736  Fix xmlSchemaValidCtxtPtr reuse memory leak (Greg Hildstrom),
737  Fix xmlTextReaderNext with preparsed document (Felix Bünemann),
738  Remove stray character from comment (Nick Wellnhofer),
739  Remove a misleading line from xmlCharEncOutput (Andrey Bienkowski),
740  HTML noscript should not close p (Daniel Veillard),
741  Don't change context node in xmlXPathRoot (Nick Wellnhofer),
742  Stop using XPATH_OP_RESET (Nick Wellnhofer),
743  Revert "Change calls to xmlCharEncInput to set flush false" (Nick Wellnhofer)
744
745   - Improvements:
746  Fix "Problem with data in interleave in RelaxNG validation" (Nikolai Weibull),
747  cleanup: remove some unreachable code (Thomas Holder),
748  add --relative to testURI (Thomas Holder),
749  Remove redefined starts and defines inside include elements (Nikolai Weibull),
750  Allow choice within choice in nameClass in RELAX NG (Nikolai Weibull),
751  Look inside divs for starts and defines inside include (Nikolai Weibull),
752  Add compile and libxml2-config.cmake to .gitignore (Nikolai Weibull),
753  Stop using doc->charset outside parser code (Nick Wellnhofer),
754  Add newlines to 'xmllint --xpath' output (Nick Wellnhofer),
755  Don't include SAX.h from globals.h (Nick Wellnhofer),
756  Support xmlTextReaderNextSibling w/o preparsed doc (Felix Bünemann),
757  Don't instruct user to run make when autogen.sh failed (林博仁(Buo-ren Lin)),
758  Run Travis ASan tests with "sudo: required" (Nick Wellnhofer),
759  Improve restoring of context size and position (Nick Wellnhofer),
760  Simplify and harden nodeset filtering (Nick Wellnhofer),
761  Avoid unnecessary backups of the context node (Nick Wellnhofer),
762  Fix inconsistency in xmlXPathIsInf (Nick Wellnhofer)
763
764   - Cleanups:
765
766
767
768v2.9.8: Mar 05 2018:
769   - Portability:
770  python: remove single use of _PyVerify_fd (Patrick Welche),
771  Build more test executables on Windows/MSVC (Nick Wellnhofer),
772  Stop including ansidecl.h (Nick Wellnhofer),
773  Fix libz and liblzma detection (Nick Wellnhofer),
774  Revert "Compile testapi with -Wno-unused-function" (Nick Wellnhofer)
775
776   - Bug Fixes:
777  Fix xmlParserEntityCheck (Nick Wellnhofer),
778  Halt parser in case of encoding error (Nick Wellnhofer),
779  Clear entity content in case of errors (Nick Wellnhofer),
780  Change calls to xmlCharEncInput to set flush false when not final call. Having flush incorrectly set to true causes errors for ICU. (Joel Hockey),
781  Fix buffer over-read in xmlParseNCNameComplex (Nick Wellnhofer),
782  Fix ICU library filenames on Windows/MSVC (Nick Wellnhofer),
783  Fix xmlXPathIsNaN broken by recent commit (Nick Wellnhofer),
784  Fix -Wenum-compare warnings (Nick Wellnhofer),
785  Fix callback signature in testapi.c (Nick Wellnhofer),
786  Fix unused parameter warning without ICU (Nick Wellnhofer),
787  Fix IO callback signatures (Nick Wellnhofer),
788  Fix misc callback signatures (Nick Wellnhofer),
789  Fix list callback signatures (Nick Wellnhofer),
790  Fix hash callback signatures (Nick Wellnhofer),
791  Refactor name and type signature for xmlNop (Vlad Tsyrklevich),
792  Fixed ICU to set flush correctly and provide pivot buffer. (Joel Hockey),
793  Skip EBCDIC tests if EBCDIC isn't supported (Nick Wellnhofer)
794
795   - Improvements:
796  Disable pointer-overflow UBSan checks under Travis (Nick Wellnhofer),
797  Improve handling of context input_id (Daniel Veillard),
798  Add resource file to Windows DLL (ccpaging),
799  Run Travis tests with -Werror (Nick Wellnhofer),
800  Build with "-Wall -Wextra" (Nick Wellnhofer),
801  Fix -Wtautological-pointer-compare warnings (Nick Wellnhofer),
802  Remove unused AC_CHECKs (Nick Wellnhofer),
803  Update information about contributing (Nick Wellnhofer),
804  Fix -Wmisleading-indentation warnings (Nick Wellnhofer),
805  Don't touch CFLAGS in configure.ac (Nick Wellnhofer),
806  Ignore function pointer cast warnings (Nick Wellnhofer),
807  Simplify XPath NaN, inf and -0 handling (Nick Wellnhofer),
808  Introduce xmlPosixStrdup and update xmlMemStrdup (Nick Wellnhofer),
809  Add test for ICU flush and pivot buffer (Nick Wellnhofer),
810  Compile testapi with -Wno-unused-function (Nick Wellnhofer)
811
812
813
8142.9.7: Nov 02 2017:
815   - Documentation:
816  xmlcatalog: refresh man page wrt. querying system catalog easily (Jan Pokorný)
817
818   - Portability:
819  Fix deprecated Travis compiler flag (Nick Wellnhofer),
820  Add declaration for DllMain (J. Peter Mugaas),
821  Fix preprocessor conditional in threads.h (J. Peter Mugaas),
822  Fix pointer comparison warnings on 64-bit Windows (J. Peter Mugaas),
823  Fix macro redefinition warning (J. Peter Mugaas),
824  Default to native threads on MinGW-w64 (Nick Wellnhofer),
825  Simplify Windows IO functions (Nick Wellnhofer),
826  Fix runtest on Windows (Nick Wellnhofer),
827  socklen_t is always int on Windows (Nick Wellnhofer),
828  Don't redefine socket error codes on Windows (Nick Wellnhofer),
829  Fix pointer/int cast warnings on 64-bit Windows (Nick Wellnhofer),
830  Fix Windows compiler warnings in xmlCanonicPath (Nick Wellnhofer)
831
832   - Bug Fixes:
833  xmlcatalog: restore ability to query system catalog easily (Jan Pokorný),
834  Fix comparison of nodesets to strings (Nick Wellnhofer)
835
836   - Improvements:
837  Add Makefile rules to rebuild HTML man pages (Nick Wellnhofer),
838  Fix mixed decls and code in timsort.h (Nick Wellnhofer),
839  Rework handling of return values in thread tests (Nick Wellnhofer),
840  Fix unused variable warnings in testrecurse (Nick Wellnhofer),
841  Fix -Wimplicit-fallthrough warnings (J. Peter Mugaas),
842  Upgrade timsort.h to latest revision (Nick Wellnhofer),
843  Increase warning level to /W3 under MSVC (Nick Wellnhofer),
844  Fix a couple of warnings in dict.c and threads.c (Nick Wellnhofer),
845  Update .gitignore for Windows (Nick Wellnhofer),
846  Fix unused variable warnings in nanohttp.c (Nick Wellnhofer),
847  Fix the Windows header mess (Nick Wellnhofer),
848  Don't include winsock2.h in xmllint.c (Nick Wellnhofer),
849  Remove generated file python/setup.py from version control (Nick Wellnhofer),
850  Use __linux__ macro in generated code (Nick Wellnhofer)
851
852
853
854v2.9.6: Oct 06 2017:
855   - Portability:
856  Change preprocessor OS tests to __linux__ (Nick Wellnhofer)
857
858   - Bug Fixes:
859  Fix XPath stack frame logic (Nick Wellnhofer),
860  Report undefined XPath variable error message (Nick Wellnhofer),
861  Fix regression with librsvg (Nick Wellnhofer),
862  Handle more invalid entity values in recovery mode (Nick Wellnhofer),
863  Fix structured validation errors (Nick Wellnhofer),
864  Fix memory leak in LZMA decompressor (Nick Wellnhofer),
865  Set memory limit for LZMA decompression (Nick Wellnhofer),
866  Handle illegal entity values in recovery mode (Nick Wellnhofer),
867  Fix debug dump of streaming XPath expressions (Nick Wellnhofer),
868  Fix memory leak in nanoftp (Nick Wellnhofer),
869  Fix memory leaks in SAX1 parser (Nick Wellnhofer)
870
871
872
873v2.9.5: Sep 04 2017:
874   - Security:
875  Detect infinite recursion in parameter entities (Nick Wellnhofer),
876  Fix handling of parameter-entity references (Nick Wellnhofer),
877  Disallow namespace nodes in XPointer ranges (Nick Wellnhofer),
878  Fix XPointer paths beginning with range-to (Nick Wellnhofer)
879
880   - Documentation:
881  Documentation fixes (Nick Wellnhofer),
882  Spelling and grammar fixes (Nick Wellnhofer)
883
884   - Portability:
885  Adding README.zOS to list of extra files for the release (Daniel Veillard),
886  Description of work needed to compile on zOS (Stéphane Michaut),
887  Porting libxml2 on zOS encoding of code (Stéphane Michaut),
888  small changes for OS/400 (Patrick Monnerat),
889  relaxng.c, xmlschemas.c: Fix build on pre-C99 compilers (Chun-wei Fan)
890
891   - Bug Fixes:
892  Problem resolving relative URIs (Daniel Veillard),
893  Fix unwanted warnings when switching encodings (Nick Wellnhofer),
894  Fix signature of xmlSchemaAugmentImportedIDC (Daniel Veillard),
895  Heap-buffer-overflow read of size 1 in xmlFAParsePosCharGroup (David Kilzer),
896  Fix NULL pointer deref in xmlFAParseCharClassEsc (Nick Wellnhofer),
897  Fix infinite loops with push parser in recovery mode (Nick Wellnhofer),
898  Send xmllint usage error to stderr (Nick Wellnhofer),
899  Fix NULL deref in xmlParseExternalEntityPrivate (Nick Wellnhofer),
900  Make sure not to call IS_BLANK_CH when parsing the DTD (Nick Wellnhofer),
901  Fix xmlHaltParser (Nick Wellnhofer),
902  Fix pathological performance when outputting charrefs (Nick Wellnhofer),
903  Fix invalid-source-encoding warnings in testWriter.c (Nick Wellnhofer),
904  Fix duplicate SAX callbacks for entity content (David Kilzer),
905  Treat URIs with scheme as absolute in C14N (Nick Wellnhofer),
906  Fix copy-paste errors in error messages (Nick Wellnhofer),
907  Fix sanity check in htmlParseNameComplex (Nick Wellnhofer),
908  Fix potential infinite loop in xmlStringLenDecodeEntities (Nick Wellnhofer),
909  Reset parser input pointers on encoding failure (Nick Wellnhofer),
910  Fix memory leak in xmlParseEntityDecl error path (Nick Wellnhofer),
911  Fix xmlBuildRelativeURI for URIs starting with './' (Nick Wellnhofer),
912  Fix type confusion in xmlValidateOneNamespace (Nick Wellnhofer),
913  Fix memory leak in xmlStringLenGetNodeList (Nick Wellnhofer),
914  Fix NULL pointer deref in xmlDumpElementContent (Daniel Veillard),
915  Fix memory leak in xmlBufAttrSerializeTxtContent (Nick Wellnhofer),
916  Stop parser on unsupported encodings (Nick Wellnhofer),
917  Check for integer overflow in memory debug code (Nick Wellnhofer),
918  Fix buffer size checks in xmlSnprintfElementContent (Nick Wellnhofer),
919  Avoid reparsing in xmlParseStartTag2 (Nick Wellnhofer),
920  Fix undefined behavior in xmlRegExecPushStringInternal (Nick Wellnhofer),
921  Check XPath exponents for overflow (Nick Wellnhofer),
922  Check for overflow in xmlXPathIsPositionalPredicate (Nick Wellnhofer),
923  Fix spurious error message (Nick Wellnhofer),
924  Fix memory leak in xmlCanonicPath (Nick Wellnhofer),
925  Fix memory leak in xmlXPathCompareNodeSetValue (Nick Wellnhofer),
926  Fix memory leak in pattern error path (Nick Wellnhofer),
927  Fix memory leak in parser error path (Nick Wellnhofer),
928  Fix memory leaks in XPointer error paths (Nick Wellnhofer),
929  Fix memory leak in xmlXPathNodeSetMergeAndClear (Nick Wellnhofer),
930  Fix memory leak in XPath filter optimizations (Nick Wellnhofer),
931  Fix memory leaks in XPath error paths (Nick Wellnhofer),
932  Do not leak the new CData node if adding fails (David Tardon),
933  Prevent unwanted external entity reference (Neel Mehta),
934  Increase buffer space for port in HTTP redirect support (Daniel Veillard),
935  Fix more NULL pointer derefs in xpointer.c (Nick Wellnhofer),
936  Avoid function/data pointer conversion in xpath.c (Nick Wellnhofer),
937  Fix format string warnings (Nick Wellnhofer),
938  Disallow namespace nodes in XPointer points (Nick Wellnhofer),
939  Fix comparison with root node in xmlXPathCmpNodes (Nick Wellnhofer),
940  Fix attribute decoding during XML schema validation (Alex Henrie),
941  Fix NULL pointer deref in XPointer range-to (Nick Wellnhofer)
942
943   - Improvements:
944  Updating the spec file to reflect Fedora 24 (Daniel Veillard),
945  Add const in five places to move 1 KiB to .rdata (Bruce Dawson),
946  Fix missing part of comment for function xmlXPathEvalExpression() (Daniel Veillard),
947  Get rid of "blanks wrapper" for parameter entities (Nick Wellnhofer),
948  Simplify handling of parameter entity references (Nick Wellnhofer),
949  Deduplicate code in encoding.c (Nick Wellnhofer),
950  Make HTML parser functions take const pointers (Nick Wellnhofer),
951  Build test programs only when needed (Nick Wellnhofer),
952  Fix doc/examples/index.py (Nick Wellnhofer),
953  Fix compiler warnings in threads.c (Nick Wellnhofer),
954  Fix empty-body warning in nanohttp.c (Nick Wellnhofer),
955  Fix cast-align warnings (Nick Wellnhofer),
956  Fix unused-parameter warnings (Nick Wellnhofer),
957  Rework entity boundary checks (Nick Wellnhofer),
958  Don't switch encoding for internal parameter entities (Nick Wellnhofer),
959  Merge duplicate code paths handling PE references (Nick Wellnhofer),
960  Test SAX2 callbacks with entity substitution (Nick Wellnhofer),
961  Support catalog and threads tests under --without-sax1 (Nick Wellnhofer),
962  Misc fixes for 'make tests' (Nick Wellnhofer),
963  Initialize keepBlanks in HTML parser (Nick Wellnhofer),
964  Add test cases for bug 758518 (David Kilzer),
965  Fix compiler warning in htmlParseElementInternal (Nick Wellnhofer),
966  Remove useless check in xmlParseAttributeListDecl (Nick Wellnhofer),
967  Allow zero sized memory input buffers (Nick Wellnhofer),
968  Add TODO comment in xmlSwitchEncoding (Nick Wellnhofer),
969  Check for integer overflow in xmlXPathFormatNumber (Nick Wellnhofer),
970  Make Travis print UBSan stacktraces (Nick Wellnhofer),
971  Add .travis.yml (Nick Wellnhofer),
972  Fix expected error output in Python tests (Nick Wellnhofer),
973  Simplify control flow in xmlParseStartTag2 (Nick Wellnhofer),
974  Disable LeakSanitizer when running API tests (Nick Wellnhofer),
975  Avoid out-of-bound array access in API tests (Nick Wellnhofer),
976  Avoid spurious UBSan errors in parser.c (Nick Wellnhofer),
977  Parse small XPath numbers more accurately (Nick Wellnhofer),
978  Rework XPath rounding functions (Nick Wellnhofer),
979  Fix white space in test output (Nick Wellnhofer),
980  Fix axis traversal from attribute and namespace nodes (Nick Wellnhofer),
981  Check for trailing characters in XPath expressions earlier (Nick Wellnhofer),
982  Rework final handling of XPath results (Nick Wellnhofer),
983  Make xmlXPathEvalExpression call xmlXPathEval (Nick Wellnhofer),
984  Remove unused variables (Nick Wellnhofer),
985  Don't print generic error messages in XPath tests (Nick Wellnhofer)
986
987   - Cleanups:
988  Fix a couple of misleading indentation errors (Daniel Veillard),
989  Remove unnecessary calls to xmlPopInput (Nick Wellnhofer)
990
991
992
9932.9.4: May 23 2016:
994   - Security:
995  More format string warnings with possible format string vulnerability (David Kilzer),
996  Avoid building recursive entities (Daniel Veillard),
997  Heap-based buffer overread in htmlCurrentChar (Pranjal Jumde),
998  Heap-based buffer-underreads due to xmlParseName (David Kilzer),
999  Heap use-after-free in xmlSAX2AttributeNs (Pranjal Jumde),
1000  Heap use-after-free in htmlParsePubidLiteral and htmlParseSystemiteral (Pranjal Jumde),
1001  Fix some format string warnings with possible format string vulnerability (David Kilzer),
1002  Detect change of encoding when parsing HTML names (Hugh Davenport),
1003  Fix inappropriate fetch of entities content (Daniel Veillard),
1004  Bug 759398: Heap use-after-free in xmlDictComputeFastKey <https://bugzilla.gnome.org/show_bug.cgi?id=759398> (Pranjal Jumde),
1005  Bug 758605: Heap-based buffer overread in xmlDictAddString <https://bugzilla.gnome.org/show_bug.cgi?id=758605> (Pranjal Jumde),
1006  Bug 758588: Heap-based buffer overread in xmlParserPrintFileContextInternal <https://bugzilla.gnome.org/show_bug.cgi?id=758588> (David Kilzer),
1007  Bug 757711: heap-buffer-overflow in xmlFAParsePosCharGroup <https://bugzilla.gnome.org/show_bug.cgi?id=757711> (Pranjal Jumde),
1008  Add missing increments of recursion depth counter to XML parser. (Peter Simons)
1009
1010   - Documentation:
1011  Fix typo: s{ ec -> cr }cipt (Jan Pokorný),
1012  Fix typos: dictio{ nn -> n }ar{y,ies} (Jan Pokorný),
1013  Fix typos: PATH_{ SEAPARATOR -> SEPARATOR } (Jan Pokorný),
1014  Correct a typo. (Shlomi Fish)
1015
1016   - Portability:
1017  Correct the usage of LDFLAGS (Mattias Hansson),
1018  Revert the use of SAVE_LDFLAGS in configure.ac (Mattias Hansson),
1019  libxml2 hardcodes -L/lib in zlib/lzma tests which breaks cross-compiles (Mike Frysinger),
1020  Fix apibuild for a recently added construct (Daniel Veillard),
1021  Use pkg-config to locate zlib when possible (Stewart Brodie),
1022  Use pkg-config to locate ICU when possible (Stewart Brodie),
1023  Portability to non C99 compliant compilers (Patrick Monnerat),
1024  dict.h: Move xmlDictPtr definition before includes to allow direct inclusion. (Patrick Monnerat),
1025  os400: tell about xmllint and xmlcatalog in README400. (Patrick Monnerat),
1026  os400: properly process SGML add in XMLCATALOG command. (Patrick Monnerat),
1027  os400: implement CL command XMLCATALOG. (Patrick Monnerat),
1028  os400: compile and install program xmlcatalog (qshell-only). (Patrick Monnerat),
1029  os400: expand tabs in sources, strip trailing blanks. (Patrick Monnerat),
1030  os400: implement CL command XMLLINT. (Patrick Monnerat),
1031  os400: compile and install program xmllint (qshell-only). (Patrick Monnerat),
1032  os400: initscript make_module(): Use options instead of positional parameters. (Patrick Monnerat),
1033  os400: c14n.rpgle: allow *omit for nullable reference parameters. (Patrick Monnerat),
1034  os400: use like() for double type. (Patrick Monnerat),
1035  os400: use like() for int type. (Patrick Monnerat),
1036  os400: use like() for unsigned int type. (Patrick Monnerat),
1037  os400: use like() for enum types. (Patrick Monnerat),
1038  Add xz to xml2-config --libs output (Baruch Siach),
1039  Bug 760190: configure.ac should be able to build --with-icu without icu-config tool <https://bugzilla.gnome.org/show_bug.cgi?id=760190> (David Kilzer),
1040  win32\VC10\config.h and VS 2015 (Bruce Dawson),
1041  Add configure maintainer mode (orzen)
1042
1043   - Bug Fixes:
1044  Avoid an out of bound access when serializing malformed strings (Daniel Veillard),
1045  Unsigned addition may overflow in xmlMallocAtomicLoc() (David Kilzer),
1046  Integer signed/unsigned type mismatch in xmlParserInputGrow() (David Kilzer),
1047  Bug 763071: heap-buffer-overflow in xmlStrncat <https://bugzilla.gnome.org/show_bug.cgi?id=763071> (Pranjal Jumde),
1048  Integer overflow parsing port number in URI (Michael Paddon),
1049  Fix an error with regexp on nullable counted char transition (Daniel Veillard),
1050  Fix memory leak with XPath namespace nodes (Nick Wellnhofer),
1051  Fix namespace axis traversal (Nick Wellnhofer),
1052      Fix null pointer deref in docs with no root element (Hugh Davenport),
1053  Fix XSD validation of URIs with ampersands (Alex Henrie),
1054  xmlschemastypes.c: accept endOfDayFrag Times set to "24:00:00" mean "end of day" and should not cause an error. (Patrick Monnerat),
1055  xmlcatalog: flush stdout before interactive shell input. (Patrick Monnerat),
1056  xmllint: flush stdout before interactive shell input. (Patrick Monnerat),
1057  Don't recurse into OP_VALUEs in xmlXPathOptimizeExpression (Nick Wellnhofer),
1058  Fix namespace::node() XPath expression (Nick Wellnhofer),
1059  Fix OOB write in xmlXPathEmptyNodeSet (Nick Wellnhofer),
1060  Fix parsing of NCNames in XPath (Nick Wellnhofer),
1061  Fix OOB read with invalid UTF-8 in xmlUTF8Strsize (Nick Wellnhofer),
1062  Do normalize string-based datatype value in RelaxNG facet checking (Audric Schiltknecht),
1063  Bug 760921: REGRESSION (8eb55d78): doc/examples/io1 test fails after fix for "xmlSaveUri() incorrectly recomposes URIs with rootless paths" <https://bugzilla.gnome.org/show_bug.cgi?id=760921> (David Kilzer),
1064  Bug 760861: REGRESSION (bf9c1dad): Missing results for test/schemas/regexp-char-ref_[01].xsd <https://bugzilla.gnome.org/show_bug.cgi?id=760861> (David Kilzer),
1065  error.c: *input->cur == 0 does not mean no error (Pavel Raiskup),
1066  Add missing RNG test files (David Kilzer),
1067  Bug 760183: REGRESSION (v2.9.3): XML push parser fails with bogus UTF-8 encoding error when multi-byte character in large CDATA section is split across buffer <https://bugzilla.gnome.org/show_bug.cgi?id=760183> (David Kilzer),
1068  Bug 758572: ASAN crash in make check <https://bugzilla.gnome.org/show_bug.cgi?id=758572> (David Kilzer),
1069  Bug 721158: Missing ICU string when doing --version on xmllint <https://bugzilla.gnome.org/show_bug.cgi?id=721158> (David Kilzer),
1070  python 3: libxml2.c wrappers create Unicode str already (Michael Stahl),
1071  Add autogen.sh to distrib (orzen),
1072  Heap-based buffer overread in xmlNextChar (Daniel Veillard)
1073
1074   - Improvements:
1075  Add more debugging info to runtest (Daniel Veillard),
1076  Implement "runtest -u" mode (David Kilzer),
1077  Add a make rule to rebuild for ASAN (Daniel Veillard)
1078
1079
1080
1081v2.9.3: Nov 20 2015:
1082   - Security:
1083  CVE-2015-8242 Buffer overead with HTML parser in push mode (Hugh Davenport),
1084  CVE-2015-7500 Fix memory access error due to incorrect entities boundaries (Daniel Veillard),
1085  CVE-2015-7499-2 Detect incoherency on GROW (Daniel Veillard),
1086  CVE-2015-7499-1 Add xmlHaltParser() to stop the parser (Daniel Veillard),
1087  CVE-2015-5312 Another entity expansion issue (David Drysdale),
1088  CVE-2015-7497 Avoid an heap buffer overflow in xmlDictComputeFastQKey (David Drysdale),
1089  CVE-2015-7498 Avoid processing entities after encoding conversion failures (Daniel Veillard),
1090  CVE-2015-8035 Fix XZ compression support loop (Daniel Veillard),
1091  CVE-2015-7942-2 Fix an error in previous Conditional section patch (Daniel Veillard),
1092  CVE-2015-7942 Another variation of overflow in Conditional sections (Daniel Veillard),
1093  CVE-2015-1819 Enforce the reader to run in constant memory (Daniel Veillard)
1094  CVE-2015-7941_2 Cleanup conditional section error handling (Daniel Veillard),
1095  CVE-2015-7941_1 Stop parsing on entities boundaries errors (Daniel Veillard),
1096
1097   - Documentation:
1098  Correct spelling of "calling" (Alex Henrie),
1099  Fix a small error in xmllint --format description (Fabien Degomme),
1100  Avoid XSS on the search of xmlsoft.org (Daniel Veillard)
1101
1102   - Portability:
1103  threads: use forward declarations only for glibc (Michael Heimpold),
1104  Update Win32 configure.js to search for configure.ac (Daniel Veillard)
1105
1106   - Bug Fixes:
1107  Bug on creating new stream from entity (Daniel Veillard),
1108  Fix some loop issues embedding NEXT (Daniel Veillard),
1109  Do not print error context when there is none (Daniel Veillard),
1110  Avoid extra processing of MarkupDecl when EOF (Hugh Davenport),
1111  Fix parsing short unclosed comment uninitialized access (Daniel Veillard),
1112  Add missing Null check in xmlParseExternalEntityPrivate (Gaurav Gupta),
1113  Fix a bug in CData error handling in the push parser (Daniel Veillard),
1114  Fix a bug on name parsing at the end of current input buffer (Daniel Veillard),
1115  Fix the spurious ID already defined error (Daniel Veillard),
1116  Fix previous change to node sort order (Nick Wellnhofer),
1117  Fix a self assignment issue raised by clang (Scott Graham),
1118  Fail parsing early on if encoding conversion failed (Daniel Veillard),
1119  Do not process encoding values if the declaration if broken (Daniel Veillard),
1120  Silence clang's -Wunknown-attribute (Michael Catanzaro),
1121  xmlMemUsed is not thread-safe (Martin von Gagern),
1122  Fix support for except in nameclasses (Daniel Veillard),
1123  Fix order of root nodes (Nick Wellnhofer),
1124  Allow attributes on descendant-or-self axis (Nick Wellnhofer),
1125  Fix the fix to Windows locking (Steve Nairn),
1126  Fix timsort invariant loop re: Envisage article (Christopher Swenson),
1127  Don't add IDs in xmlSetTreeDoc (Nick Wellnhofer),
1128  Account for ID attributes in xmlSetTreeDoc (Nick Wellnhofer),
1129  Remove various unused value assignments (Philip Withnall),
1130  Fix missing entities after CVE-2014-3660 fix (Daniel Veillard),
1131  Revert "Missing initialization for the catalog module" (Daniel Veillard)
1132
1133   - Improvements:
1134  Reuse xmlHaltParser() where it makes sense (Daniel Veillard),
1135  xmlStopParser reset errNo (Daniel Veillard),
1136  Re-enable xz support by default (Daniel Veillard),
1137  Recover unescaped less-than character in HTML recovery parsing (Daniel Veillard),
1138  Allow HTML serializer to output HTML5 DOCTYPE (Shaun McCance),
1139  Regression test for bug #695699 (Nick Wellnhofer),
1140  Add a couple of XPath tests (Nick Wellnhofer),
1141  Add Python 3 rpm subpackage (Tomas Radej),
1142  libxml2-config.cmake.in: update include directories (Samuel Martin),
1143  Adding example from bugs 738805 to regression tests (Daniel Veillard)
1144
1145   - Cleanups:
1146
1147
1148
11492.9.2: Oct 16 2014:
1150   - Security:
1151  Fix for CVE-2014-3660 billion laugh variant (Daniel Veillard),
1152  CVE-2014-0191 Do not fetch external parameter entities (Daniel Veillard)
1153
1154   - Bug Fixes:
1155  fix memory leak xml header encoding field with XML_PARSE_IGNORE_ENC (Bart De Schuymer),
1156  xmlmemory: handle realloc properly (Yegor Yefremov),
1157  Python generator bug raised by the const change (Daniel Veillard),
1158  Windows Critical sections not released correctly (Daniel Veillard),
1159  Parser error on repeated recursive entity expansion containing &lt; (Daniel Veillard),
1160  xpointer : fixing Null Pointers (Gaurav Gupta),
1161  Remove Unnecessary Null check in xpointer.c (Gaurav Gupta),
1162  parser bug on misformed namespace attributes (Dennis Filder),
1163  Pointer dereferenced before null check (Daniel Veillard),
1164  Leak of struct addrinfo in xmlNanoFTPConnect() (Gaurav Gupta),
1165  Possible overflow in HTMLParser.c (Daniel Veillard),
1166  python/tests/sync.py assumes Python dictionaries are ordered (John Beck),
1167  Fix Enum check and missing break (Gaurav Gupta),
1168  xmlIO: Handle error returns from dup() (Philip Withnall),
1169  Fix a problem properly saving URIs (Daniel Veillard),
1170  wrong error column in structured error when parsing attribute values (Juergen Keil),
1171  wrong error column in structured error when skipping whitespace in xml decl (Juergen Keil),
1172  no error column in structured error handler for xml schema validation errors (Juergen Keil),
1173  Couple of Missing Null checks (Gaurav Gupta),
1174  Add couple of missing Null checks (Daniel Veillard),
1175  xmlschemastypes: Fix potential array overflow (Philip Withnall),
1176  runtest: Fix a memory leak on parse failure (Philip Withnall),
1177  xmlIO: Fix an FD leak on gzdopen() failure (Philip Withnall),
1178  xmlcatalog: Fix a memory leak on quit (Philip Withnall),
1179  HTMLparser: Correctly initialise a stack allocated structure (Philip Withnall),
1180  Check for tmon in _xmlSchemaDateAdd() is incorrect (David Kilzer),
1181  Avoid Possible Null Pointer in trio.c (Gaurav Gupta),
1182  Fix processing in SAX2 in case of an allocation failure (Daniel Veillard),
1183  XML Shell command "cd" does not handle "/" at end of path (Daniel Veillard),
1184  Fix various Missing Null checks (Gaurav Gupta),
1185  Fix a potential NULL dereference (Daniel Veillard),
1186  Add a couple of misisng check in xmlRelaxNGCleanupTree (Gaurav Gupta),
1187  Add a missing argument check (Gaurav Gupta),
1188  Adding a check in case of allocation error (Gaurav Gupta),
1189  xmlSaveUri() incorrectly recomposes URIs with rootless paths (Dennis Filder),
1190  Adding some missing NULL checks (Gaurav),
1191  Fixes for xmlInitParserCtxt (Daniel Veillard),
1192  Fix regressions introduced by CVE-2014-0191 patch (Daniel Veillard),
1193  erroneously ignores a validation error if no error callback set (Daniel Veillard),
1194  xmllint was not parsing the --c14n11 flag (Sérgio Batista),
1195  Avoid Possible null pointer dereference in memory debug mode (Gaurav),
1196  Avoid Double Null Check (Gaurav),
1197  Restore context size and position after XPATH_OP_ARG (Nick Wellnhofer),
1198  Fix xmlParseInNodeContext() if node is not element (Daniel Veillard),
1199  Avoid a possible NULL pointer dereference (Gaurav),
1200  Fix xmlTextWriterWriteElement when a null content is given (Daniel Veillard),
1201  Fix an typo 'onrest' in htmlScriptAttributes (Daniel Veillard),
1202  fixing a ptotential uninitialized access (Daniel Veillard),
1203  Fix an fd leak in an error case (Daniel Veillard),
1204  Missing initialization for the catalog module (Daniel Veillard),
1205  Handling of XPath function arguments in error case (Nick Wellnhofer),
1206  Fix a couple of missing NULL checks (Gaurav),
1207  Avoid a possibility of dangling encoding handler (Gaurav),
1208  Fix HTML push parser to accept HTML_PARSE_NODEFDTD (Arnold Hendriks),
1209  Fix a bug loading some compressed files (Mike Alexander),
1210  Fix XPath node comparison bug (Gaurav),
1211  Type mismatch in xmlschemas.c (Gaurav),
1212  Type mismatch in xmlschemastypes.c (Gaurav),
1213  Avoid a deadcode in catalog.c (Daniel Veillard),
1214  run close socket on Solaris, same as we do on other platforms (Denis Pauk),
1215  Fix pointer dereferenced before null check (Gaurav),
1216  Fix a potential NULL dereference in tree code (Daniel Veillard),
1217  Fix potential NULL pointer dereferences in regexp code (Gaurav),
1218  xmllint --pretty crashed without following numeric argument (Tim Galeckas),
1219  Fix XPath expressions of the form '@ns:*' (Nick Wellnhofer),
1220  Fix XPath '//' optimization with predicates (Nick Wellnhofer),
1221  Clear up a potential NULL dereference (Daniel Veillard),
1222  Fix a possible NULL dereference (Gaurav),
1223  Avoid crash if allocation fails (Daniel Veillard),
1224  Remove occasional leading space in XPath number formatting (Daniel Veillard),
1225  Fix handling of mmap errors (Daniel Veillard),
1226  Catch malloc error and exit accordingly (Daniel Veillard),
1227  missing else in xlink.c (Ami Fischman),
1228  Fix a parsing bug on non-ascii element and CR/LF usage (Daniel Veillard),
1229  Fix a regression in xmlGetDocCompressMode() (Daniel Veillard),
1230  properly quote the namespace uris written out during c14n (Aleksey Sanin),
1231  Remove premature XInclude check on URI being relative (Alexey Neyman),
1232  Fix missing break on last() function for attributes (dcb),
1233  Do not URI escape in server side includes (Romain Bondue),
1234  Fix an error in xmlCleanupParser (Alexander Pastukhov)
1235
1236   - Documentation:
1237  typo in error messages "colon are forbidden from..." (Daniel Veillard),
1238  Fix a link to James SAX documentation old page (Daniel Veillard),
1239  Fix typos in relaxng.c (Jan Pokorný),
1240  Fix a doc typo (Daniel Veillard),
1241  Fix typos in {tree,xpath}.c (errror) (Jan Pokorný),
1242  Add limitations about encoding conversion (Daniel Veillard),
1243  Fix typos in xmlschemas{,types}.c (Jan Pokorný),
1244  Fix incorrect spelling entites->entities (Jan Pokorný),
1245  Forgot to document 2.9.1 release, regenerate docs (Daniel Veillard)
1246
1247   - Portability:
1248  AC_CONFIG_FILES and executable bit (Roumen Petrov),
1249  remove HAVE_CONFIG_H dependency in testlimits.c (Roumen Petrov),
1250  fix some tabs mixing incompatible with python3 (Roumen Petrov),
1251  Visual Studio 14 CTP defines snprintf() (Francis Dupont),
1252  OS400: do not try to copy unexisting doc files (Patrick Monnerat),
1253  OS400: use either configure.ac or configure.in. (Patrick Monnerat),
1254  os400: make-src.sh: create physical file with target CCSID (Patrick Monnerat),
1255  OS400: Add some more C macros equivalent procedures. (Patrick Monnerat),
1256  OS400: use C macros to implement equivalent RPG support procedures. (Patrick Monnerat),
1257  OS400: implement XPath macros as procedures for ILE/RPG support. (Patrick Monnerat),
1258  OS400: include in distribution tarball. (Patrick Monnerat),
1259  OS400: Add README: compilation directives and OS/400 specific stuff. (Patrick Monnerat),
1260  OS400: Add compilation scripts. (Patrick Monnerat),
1261  OS400: ILE RPG language header files. (Patrick Monnerat),
1262  OS400: implement some macros as functions for ILE/RPG language support (that as no macros). (Patrick Monnerat),
1263  OS400: UTF8<-->EBCDIC wrappers for system and external library calls (Patrick Monnerat),
1264  OS400: Easy character transcoding support (Patrick Monnerat),
1265  OS400: iconv functions compatibility wrappers and table builder. (Patrick Monnerat),
1266  OS400: create architecture directory. Implement dlfcn emulation. (Patrick Monnerat),
1267  Fix building when configuring without xpath and xptr (Daniel Veillard),
1268  configure: Add --with-python-install-dir (Jonas Eriksson),
1269  Fix compilation with minimum and xinclude. (Nicolas Le Cam),
1270  Compile out use of xmlValidateNCName() when not available. (Nicolas Le Cam),
1271  Fix compilation with minimum and schematron. (Nicolas Le Cam),
1272  Legacy needs xmlSAX2StartElement() and xmlSAX2EndElement(). (Nicolas Le Cam),
1273  Don't use xmlValidateName() when not available. (Nicolas Le Cam),
1274  Fix a portability issue on Windows (Longstreth Jon),
1275  Various portability patches for OpenVMS (Jacob (Jouk) Jansen),
1276  Use specific macros for portability to OS/400 (Patrick Monnerat),
1277  Add macros needed for OS/400 portability (Patrick Monnerat),
1278  Portability patch for fopen on OS/400 (Patrick Monnerat),
1279  Portability fixes for OS/400 (Patrick Monnerat),
1280  Improve va_list portability (Patrick Monnerat),
1281  Portability fix (Patrick Monnerat),
1282  Portability fix (Patrick Monnerat),
1283  Generic portability fix (Patrick Monnerat),
1284  Shortening lines in headers (Patrick Monnerat),
1285  build: Use pkg-config to find liblzma in preference to AC_CHECK_LIB (Philip Withnall),
1286  build: Add @LZMA_LIBS@ to libxml’s pkg-config files (Philip Withnall),
1287  fix some tabs mixing incompatible with python3 (Daniel Veillard),
1288  add additional defines checks for support "./configure --with-minimum" (Denis Pauk),
1289  Another round of fixes for older versions of Python (Arfrever Frehtes Taifersar Arahesis),
1290  python: fix drv_libxml2.py for python3 compatibility (Alexandre Rostovtsev),
1291  python: Fix compiler warnings when building python3 bindings (Armin K),
1292  Fix for compilation with python 2.6.8 (Petr Sumbera)
1293
1294   - Improvements:
1295  win32/libxml2.def.src after rebuild in doc (Roumen Petrov),
1296  elfgcchack.h: more legacy needs xmlSAX2StartElement() and xmlSAX2EndElement() (Roumen Petrov),
1297  elfgcchack.h: add xmlXPathNodeEval and xmlXPathSetContextNode (Roumen Petrov),
1298  Provide cmake module (Samuel Martin),
1299  Fix a couple of issues raised by make dist (Daniel Veillard),
1300  Fix and add const qualifiers (Kurt Roeckx),
1301  Preparing for upcoming release of 2.9.2 (Daniel Veillard),
1302  Fix zlib and lzma libraries check via command line (Dmitriy),
1303  wrong error column in structured error when parsing end tag (Juergen Keil),
1304  doc/news.html: small update to avoid line join while generating NEWS. (Patrick Monnerat),
1305  Add methods for python3 iterator (Ron Angeles),
1306  Support element node traversal in document fragments. (Kyle VanderBeek),
1307  xmlNodeSetName: Allow setting the name to a substring of the currently set name (Tristan Van Berkom),
1308  Added macros for argument casts (Eric Zurcher),
1309  adding init calls to xml and html Read parsing entry points (Daniel Veillard),
1310  Get rid of 'REPLACEMENT CHARACTER' Unicode chars in xmlschemas.c (Jan Pokorný),
1311  Implement choice for name classes on attributes (Shaun McCance),
1312  Two small namespace tweaks (Daniel Veillard),
1313  xmllint --memory should fail on empty files (Daniel Veillard),
1314  Cast encoding name to char pointer to match arg type (Nikolay Sivov)
1315
1316   - Cleanups:
1317  Removal of old configure.in (Daniel Veillard),
1318  Unreachable code in tree.c (Gaurav Gupta),
1319  Remove a couple of dead conditions (Gaurav Gupta),
1320  Avoid some dead code and cleanup in relaxng.c (Gaurav),
1321  Drop not needed checks (Denis Pauk),
1322  Fix a wrong test (Daniel Veillard)
1323
1324
1325
13262.9.1: Apr 19 2013:
1327   -  Features:
1328    Support for Python3 (Daniel Veillard),
1329    Add xmlXPathSetContextNode and xmlXPathNodeEval (Alex Bligh)
1330
1331   -  Documentation:
1332    Add documentation for xmllint --xpath (Daniel Veillard),
1333    Fix the URL of the SAX documentation from James (Daniel Veillard),
1334    Fix spelling of "length". (Michael Wood)
1335
1336   -  Portability:
1337    Fix python bindings with versions older than 2.7 (Daniel Veillard),
1338    rebuild docs:Makefile.am (Roumen Petrov),
1339    elfgcchack.h after rebuild in doc (Roumen Petrov),
1340    elfgcchack for buf module (Roumen Petrov),
1341    Fix a uneeded and wrong extra link parameter (Daniel Veillard),
1342    Few cleanup patches for Windows (Denis Pauk),
1343    Fix rpmbuild --nocheck (Mark Salter),
1344    Fix for win32/configure.js and WITH_THREAD_ALLOC (Daniel Richard),
1345    Fix Broken multi-arch support in xml2-config (Daniel Veillard),
1346    Fix a portability issue for GCC < 3.4.0 (Daniel Veillard),
1347    Windows build fixes (Daniel Richard),
1348    Fix a thread portability problem (Friedrich Haubensak),
1349    Downgrade autoconf requirement to 2.63 (Daniel Veillard)
1350
1351   -  Bug Fixes:
1352    Fix a linking error for python bindings (Daniel Veillard),
1353    Fix a couple of return without value (Jüri Aedla),
1354    Improve the hashing functions (Daniel Franke),
1355    Improve handling of xmlStopParser() (Daniel Veillard),
1356    Remove risk of lockup in dictionary initialization (Daniel Veillard),
1357    Activate detection of encoding in external subset (Daniel Veillard),
1358    Fix an output buffer flushing conversion bug (Mikhail Titov),
1359    Fix an old bug in xmlSchemaValidateOneElement (Csaba László),
1360    Fix configure cannot remove messages (Gilles Espinasse),
1361    fix schema validation in combination with xsi:nil (Daniel Veillard),
1362    xmlCtxtReadFile doesn't work with literal IPv6 URLs (Steve Wolf),
1363    Fix a few problems with setEntityLoader (Alexey Neyman),
1364    Detect excessive entities expansion upon replacement (Daniel Veillard),
1365    Fix the flushing out of raw buffers on encoding conversions (Daniel,
1366Veillard),
1367    Fix some buffer conversion issues (Daniel Veillard),
1368    When calling xmlNodeDump make sure we grow the buffer quickly (Daniel,
1369Veillard),
1370    Fix an error in the progressive DTD parsing code (Dan Winship),
1371    xmllint should not load DTD by default when using the reader (Daniel,
1372Veillard),
1373    Try IBM-037 when looking for EBCDIC handlers (Petr Sumbera),
1374    Fix potential out of bound access (Daniel Veillard),
1375    Fix large parse of file from memory (Daniel Veillard),
1376    Fix a bug in the nsclean option of the parser (Daniel Veillard),
1377    Fix a regression in 2.9.0 breaking validation while streaming (Daniel,
1378Veillard),
1379    Remove potential calls to exit() (Daniel Veillard)
1380
1381   -  Improvements:
1382    Regenerated API, and testapi, rebuild documentation (Daniel Veillard),
1383    Fix tree iterators broken by 2to3 script (Daniel Veillard),
1384    update all tests for Python3 and Python2 (Daniel Veillard),
1385    A few more fixes for python 3 affecting libxml2.py (Daniel Veillard),
1386    Fix compilation on Python3 (Daniel Veillard),
1387    Converting apibuild.py to python3 (Daniel Veillard),
1388    First pass at starting porting to python3 (Daniel Veillard),
1389    updated configure.in for python3 (Daniel Veillard),
1390    Add support for xpathRegisterVariable in Python (Shaun McCance),
1391    Added a regression tests from bug 694228 data (Daniel Veillard),
1392    Cache presence of '<' in entities content (Daniel Veillard),
1393    Avoid extra processing on entities (Daniel Veillard),
1394    Python binding for xmlRegisterInputCallback (Alexey Neyman),
1395    Python bindings: DOM casts everything to xmlNode (Alexey Neyman),
1396    Define LIBXML_THREAD_ALLOC_ENABLED via xmlversion.h (Tim Starling),
1397    Adding streaming validation to runtest checks (Daniel Veillard),
1398    Add a --pushsmall option to xmllint (Daniel Veillard)
1399
1400   -  Cleanups:
1401    Switched comment in file to UTF-8 encoding (Daniel Veillard),
1402    Extend gitignore (Daniel Veillard),
1403    Silent the new python test on input (Alexey Neyman),
1404    Cleanup of a duplicate test (Daniel Veillard),
1405    Cleanup on duplicate test expressions (Daniel Veillard),
1406    Fix compiler warning after 153cf15905cf4ec080612ada6703757d10caba1e (Patrick,
1407Gansterer),
1408    Spec cleanups and a fix for multiarch support (Daniel Veillard),
1409    Silence a clang warning (Daniel Veillard),
1410    Cleanup the Copyright to be pure MIT Licence wording (Daniel Veillard),
1411    rand_seed should be static in dict.c (Wouter Van Rooy),
1412    Fix typos in parser comments (Jan Pokorný)
1413
1414
1415
14162.9.0: Sep 11 2012:
1417   -  Features:
1418    A few new API entry points,
1419    More resilient push parser mode,
1420    A lot of portability improvement,
1421    Faster XPath evaluation
1422
1423   -  Documentation:
1424    xml2-config.1 markup error (Christian Weisgerber),
1425    libxml(3) manpage typo fix (John Bradshaw),
1426    More cleanups to the documentation part of libxml2 (Daniel Richard G)
1427
1428   -  Portability:
1429    Bug 676544 - fails to build with --without-sax1 (Akira TAGOH),
1430    fix builds not having stdint.h (Rob Richards),
1431    GetProcAddressA is available only on WinCE (Daniel Veillard),
1432    More updates and cleanups on autotools and Makefiles (Daniel Richard G),
1433    More changes for Win32 compilation (Eric Zurcher),
1434    Basic changes for Win32 builds of release 2.9.0: compile buf.c (Eric Zurcher),
1435    Bundles all generated files for python into the distribution (Daniel Richard G),
1436    Fix compiler warnings of wincecompat.c (Patrick Gansterer),
1437    Fix non __GNUC__ build (Patrick Gansterer),
1438    Fix windows unicode build (Patrick Gansterer),
1439    clean redefinition of {v}snprintf in C-source (Roumen Petrov),
1440    use xmlBuf... if DEBUG_INPUT is defined (Roumen Petrov),
1441    fix runtests to use pthreads support for various Unix platforms (Daniel Richard G),
1442    Various "make distcheck" and portability fixups 2nd part (Daniel Richard G),
1443    Various "make distcheck" and portability fixups (Daniel Richard G),
1444    Fix compilation on older Visual Studio (Daniel Veillard)
1445
1446   -  Bug Fixes:
1447    Change the XPath code to percolate allocation errors (Daniel Veillard),
1448    Fix reuse of xmlInitParser (Daniel Veillard),
1449    Fix potential crash on entities errors (Daniel Veillard),
1450    initialize var (Rob Richards),
1451    Fix the XPath arity check to also check the XPath stack limits (Daniel Veillard),
1452    Fix problem with specific and generic error handlers (Pietro Cerutti),
1453    Avoid a potential infinite recursion (Daniel Veillard),
1454    Fix an XSD error when generating internal automata (Daniel Veillard),
1455    Patch for xinclude of text using multibyte characters (Vitaly Ostanin),
1456    Fix a segfault on XSD validation on pattern error (Daniel Veillard),
1457    Fix missing xmlsave.h module which was ignored in recent builds (Daniel Veillard),
1458    Add a missing element check (Daniel Veillard),
1459    Adding various checks on node type though the API (Daniel Veillard),
1460    Namespace nodes can't be unlinked with xmlUnlinkNode (Daniel Veillard),
1461    Fix make dist to include new private header files (Daniel Veillard),
1462    More fixups on the push parser behaviour (Daniel Veillard),
1463    Strengthen behaviour of the push parser in problematic situations (Daniel Veillard),
1464    Enforce XML_PARSER_EOF state handling through the parser (Daniel Veillard),
1465    Fixup limits parser (Daniel Veillard),
1466    Do not fetch external parsed entities (Daniel Veillard),
1467    Fix an error in previous commit (Aron Xu),
1468    Fix entities local buffers size problems (Daniel Veillard),
1469    Fix parser local buffers size problems (Daniel Veillard),
1470    Fix a failure to report xmlreader parsing failures (Daniel Veillard)
1471
1472   -  Improvements:
1473    Keep libxml2.syms when running "make distclean" (Daniel Veillard),
1474    Allow to set the quoting character of an xmlWriter (Csaba Raduly),
1475    Keep non-significant blanks node in HTML parser (Daniel Veillard),
1476    Add a forbidden variable error number and message to XPath (Daniel Veillard),
1477    Support long path names on WNT (Michael Stahl),
1478    Improve HTML escaping of attribute on output (Daniel Veillard),
1479    Handle ICU_LIBS as LIBADD, not LDFLAGS to prevent linking errors (Arfrever Frehtes Taifersar Arahesis),
1480    Switching XPath node sorting to Timsort (Vojtech Fried),
1481    Optimizing '//' in XPath expressions (Nick Wellnhofer),
1482    Expose xmlBufShrink in the public tree API (Daniel Veillard),
1483    Visible HTML elements close the head tag (Conrad Irwin),
1484    Fix file and line report for XSD SAX and reader streaming validation (Daniel Veillard),
1485    Fix const qualifyer to definition of xmlBufferDetach (Daniel Veillard),
1486    minimize use of HAVE_CONFIG_H (Roumen Petrov),
1487    fixup regression in Various "make distcheck" and portability fixups (Roumen Petrov),
1488    Add support for big line numbers in error reporting (Daniel Veillard),
1489    Avoid using xmlBuffer for serialization (Daniel Veillard),
1490    Improve compatibility between xmlBuf and xmlBuffer (Daniel Veillard),
1491    Provide new accessors for xmlOutputBuffer (Daniel Veillard),
1492    Improvements for old buffer compatibility (Daniel Veillard),
1493    Expand the limit test program (Daniel Veillard),
1494    Improve error reporting on parser errors (Daniel Veillard),
1495    Implement some default limits in the XPath module (Daniel Veillard),
1496    Introduce some default parser limits (Daniel Veillard),
1497    Cleanups and new limit APIs for dictionaries (Daniel Veillard),
1498    Fixup for buf.c (Daniel Veillard),
1499    Cleanup URI module memory allocation code (Daniel Veillard),
1500    Extend testlimits (Daniel Veillard),
1501    More avoid quadratic behaviour (Daniel Veillard),
1502    Impose a reasonable limit on PI size (Daniel Veillard),
1503    first version of testlimits new test (Daniel Veillard),
1504    Avoid quadratic behaviour in some push parsing cases (Daniel Veillard),
1505    Impose a reasonable limit on comment size (Daniel Veillard),
1506    Impose a reasonable limit on attribute size (Daniel Veillard),
1507    Harden the buffer code and make it more compatible (Daniel Veillard),
1508    More cleanups for input/buffers code (Daniel Veillard),
1509    Cleanup function xmlBufResetInput(), to set input from Buffer (Daniel Veillard)
1510    Switch the test program for characters to new input buffers (Daniel Veillard),
1511    Convert the HTML tree module to the new buffers (Daniel Veillard),
1512    Convert of the HTML parser to new input buffers (Daniel Veillard),
1513    Convert the writer to new output buffer and save APIs (Daniel Veillard),
1514    Convert XMLReader to the new input buffers (Daniel Veillard),
1515    New saving functions using xmlBuf and conversion (Daniel Veillard),
1516    Provide new xmlBuf based saving functions (Daniel Veillard),
1517    Convert XInclude to the new input buffers (Daniel Veillard),
1518    Convert catalog code to the new input buffers (Daniel Veillard),
1519    Convert C14N to the new Input buffer (Daniel Veillard),
1520    Convert xmlIO.c to the new input and output buffers (Daniel Veillard),
1521    Convert XML parser to the new input buffers (Daniel Veillard),
1522    Incompatible change to the Input and Output buffers (Daniel Veillard),
1523    Adding new encoding function to deal with the new structures (Daniel Veillard),
1524    Convert XPath to xmlBuf (Daniel Veillard),
1525    Adding a new buf module for buffers (Daniel Veillard),
1526    Memory error within SAX2 reuse common framework (Daniel Veillard),
1527    Fix xmllint --xpath node initialization (Daniel Veillard)
1528
1529   -  Cleanups:
1530    Various cleanups to avoid compiler warnings (Daniel Veillard),
1531    Big space and tab cleanup (Daniel Veillard),
1532    Followup to LibXML2 docs/examples cleanup patch (Daniel Veillard),
1533    Second round of cleanups for LibXML2 docs/examples (Daniel Richard),
1534    Remove all .cvsignore as they are not used anymore (Daniel Veillard),
1535    Fix a Timsort function helper comment (Daniel Veillard),
1536    Small cleanup for valgrind target (Daniel Veillard),
1537    Patch for portability of latin characters in C files (Daniel Veillard),
1538    Cleanup some of the parser code (Daniel Veillard),
1539    Fix a variable name in comment (Daniel Veillard),
1540    Regenerated testapi.c (Daniel Veillard),
1541    Regenerating docs and API files (Daniel Veillard),
1542    Small cleanup of unused variables in test (Daniel Veillard),
1543    Expand .gitignore with more files (Daniel Veillard)
1544
1545
1546
15472.8.0: May 23 2012:
1548   - Features:
1549  add lzma compression support (Anders F Bjorklund)
1550
1551   - Documentation:
1552    xmlcatalog: Add uri and delegateURI to possible add types in man page. (Ville Skyttä),
1553    Update README.tests (Daniel Veillard),
1554    URI handling code is not OOM resilient (Daniel Veillard),
1555    Fix an error in comment (Daniel Veillard),
1556    Fixed bug #617016 (Daniel Mustieles),
1557    Fixed two typos in the README document (Daniel Neel),
1558    add generated html files (Anders F Bjorklund),
1559    Clarify the need to use xmlFreeNode after xmlUnlinkNode (Daniel Veillard),
1560    Improve documentation a bit (Daniel Veillard),
1561    Updated URL for lxml python bindings (Daniel Veillard)
1562
1563   - Portability:
1564    Restore code for Windows compilation (Daniel Veillard),
1565    Remove git error message during configure (Christian Dywan),
1566    xmllint: Build fix for endTimer if !defined(HAVE_GETTIMEOFDAY) (Patrick R. Gansterer),
1567    remove a bashism in confgure.in (John Hein),
1568    undef ERROR if already defined (Patrick R. Gansterer),
1569    Fix library problems with mingw-w64 (Michael Cronenworth),
1570    fix windows build. ifdef addition from bug 666491 makes no sense (Rob Richards),
1571    prefer native threads on win32 (Sam Thursfield),
1572    Allow to compile with Visual Studio 2010 (Thomas Lemm),
1573    Fix mingw's snprintf configure check (Andoni Morales),
1574    fixed a 64bit big endian issue (Marcus Meissner),
1575    Fix portability failure if netdb.h lacks NO_ADDRESS (Daniel Veillard),
1576    Fix windows build from lzma addition (Rob Richards),
1577    autogen: Only check for libtoolize (Colin Walters),
1578    Fix the Windows build files (Patrick von Reth),
1579    634846 Remove a linking option breaking Windows VC10 (Daniel Veillard),
1580    599241 fix an initialization problem on Win64 (Andrew W. Nosenko),
1581    fix win build (Rob Richards)
1582
1583   - Bug fixes:
1584    Part for rand_r checking missing (Daniel Veillard),
1585    Cleanup on randomization (Daniel Veillard),
1586    Fix undefined reference in python module (Pacho Ramos),
1587    Fix a race in xmlNewInputStream (Daniel Veillard),
1588    Fix weird streaming RelaxNG errors (Noam),
1589    Fix various bugs in new code raised by the API checking (Daniel Veillard),
1590    Fix various problems with "make dist" (Daniel Veillard),
1591    Fix a memory leak in the xzlib code (Daniel Veillard),
1592    HTML parser error with <noscript> in the <head> (Denis Pauk),
1593    XSD: optional element in complex type extension (Remi Gacogne),
1594    Fix html serialization error and htmlSetMetaEncoding() (Daniel Veillard),
1595    Fix a wrong return value in previous patch (Daniel Veillard),
1596    Fix an uninitialized variable use (Daniel Veillard),
1597    Fix a compilation problem with --minimum (Brandon Slack),
1598    Remove redundant and ungarded include of resolv.h (Daniel Veillard),
1599    xinclude with parse="text" does not use the entity loader (Shaun McCance),
1600    Allow to parse 1 byte HTML files (Denis Pauk),
1601    Patch that fixes the skipping of the HTML_PARSE_NOIMPLIED flag (Martin Schröder),
1602    Avoid memory leak if xmlParserInputBufferCreateIO fails (Lin Yi-Li),
1603    Prevent an infinite loop when dumping a node with encoding problems (Timothy Elliott),
1604    xmlParseNodeInContext problems with an empty document (Tim Elliott),
1605    HTML element position is not detected properly (Pavel Andrejs),
1606    Fix an off by one pointer access (Jüri Aedla),
1607    Try to fix a problem with entities in SAX mode (Daniel Veillard),
1608    Fix a crash with xmllint --path on empty results (Daniel Veillard),
1609    Fixed bug #667946 (Daniel Mustieles),
1610    Fix a logic error in Schemas Component Constraints (Ryan Sleevi),
1611    Fix a wrong enum type use in Schemas Types (Nico Weber),
1612    Fix SAX2 builder in case of undefined attributes namespace (Daniel Veillard),
1613    Fix SAX2 builder in case of undefined element namespaces (Daniel Veillard),
1614    fix reference to STDOUT_FILENO on MSVC (Tay Ray Chuan),
1615    fix a pair of possible out of array char references (Daniel Veillard),
1616    Fix an allocation error when copying entities (Daniel Veillard),
1617    Make sure the parser returns when getting a Stop order (Chris Evans),
1618    Fix some potential problems on reallocation failures(parser.c) (Xia Xinfeng),
1619    Fix a schema type duration comparison overflow (Daniel Veillard),
1620    Fix an unimplemented part in RNG value validation (Daniel Veillard),
1621    Fix missing error status in XPath evaluation (Daniel Veillard),
1622    Hardening of XPath evaluation (Daniel Veillard),
1623    Fix an off by one error in encoding (Daniel Veillard),
1624    Fix RELAX NG include bug #655288 (Shaun McCance),
1625    Fix XSD validation bug #630130 (Toyoda Eizi),
1626    Fix some potential problems on reallocation failures (Chris Evans),
1627    __xmlRaiseError: fix use of the structured callback channel (Dmitry V. Levin),
1628    __xmlRaiseError: fix the structured callback channel's data initialization (Dmitry V. Levin),
1629    Fix memory corruption when xmlParseBalancedChunkMemoryInternal is called from xmlParseBalancedChunk (Rob Richards),
1630    Small fix for previous commit (Daniel Veillard),
1631    Fix a potential freeing error in XPath (Daniel Veillard),
1632    Fix a potential memory access error (Daniel Veillard),
1633    Reactivate the shared library versioning script (Daniel Veillard)
1634
1635   - Improvements:
1636    use mingw C99 compatible functions {v}snprintf instead those from MSVC runtime (Roumen Petrov),
1637    New symbols added for the next release (Daniel Veillard),
1638    xmlTextReader bails too quickly on error (Andy Lutomirski),
1639    Use a hybrid allocation scheme in xmlNodeSetContent (Conrad Irwin),
1640    Use buffers when constructing string node lists. (Conrad Irwin),
1641    Add HTML parser support for HTML5 meta charset encoding declaration (Denis Pauk),
1642    wrong message for double hyphen in comment XML error (Bryan Henderson),
1643    Fix "make tst" to grab lzma lib too (Daniel Veillard),
1644    Add "whereis" command to xmllint shell (Ryan),
1645    Improve xmllint shell (Ryan),
1646    add function xmlTextReaderRelaxNGValidateCtxt() (Noam Postavsky),
1647    Add --system support to autogen.sh (Daniel Veillard),
1648    Add hash randomization to hash and dict structures (Daniel Veillard),
1649    included xzlib in dist (Anders F Bjorklund),
1650    move xz/lzma helpers to separate included files (Anders F Bjorklund),
1651    add generated devhelp files (Anders F Bjorklund),
1652    add XML_WITH_LZMA to api (Anders F Bjorklund),
1653    autogen.sh: Honor NOCONFIGURE environment variable (Colin Walters),
1654    Improve the error report on undefined REFs (Daniel Veillard),
1655    Add exception for new W3C PI xml-model (Daniel Veillard),
1656    Add options to ignore the internal encoding (Daniel Veillard),
1657    testapi: use the right type for the check (Stefan Kost),
1658    various: handle return values of write calls (Stefan Kost),
1659    testWriter: xmlTextWriterWriteFormatElement wants an int instead of a long int (Stefan Kost),
1660    runxmlconf: update to latest testsuite version (Stefan Kost),
1661    configure: add -Wno-long-long to CFLAGS (Stefan Kost),
1662    configure: support silent automake rules if possible (Stefan Kost),
1663    xmlmemory: add a cast as size_t has no portable printf modifier (Stefan Kost),
1664    __xmlRaiseError: remove redundant schannel initialization (Dmitry V. Levin),
1665    __xmlRaiseError: do cheap code check early (Dmitry V. Levin)
1666
1667   - Cleanups:
1668    Cleanups before 2.8.0-rc2 (Daniel Veillard),
1669    Avoid an extra operation (Daniel Veillard),
1670    Remove vestigial de-ANSI-fication support. (Javier Jardón),
1671    autogen.sh: Fix typo (Javier Jardón),
1672    Do not use unsigned but unsigned int (Daniel Veillard),
1673    Remove two references to u_short (Daniel Veillard),
1674    Fix -Wempty-body warning from clang (Nico Weber),
1675    Cleanups of lzma support (Daniel Veillard),
1676    Augment the list of ignored files (Daniel Veillard),
1677    python: remove unused variable (Stefan Kost),
1678    python: flag two unused args (Stefan Kost),
1679    configure: acconfig.h is deprecated since autoconf-2.50 (Stefan Kost),
1680    xpath: remove unused variable (Stefan Kost)
1681
1682
1683
16842.7.8: Nov 4 2010:
1685   -  Features:
1686    480323 add code to plug in ICU converters by default (Giuseppe Iuculano),
1687    Add xmlSaveOption XML_SAVE_WSNONSIG (Adam Spragg)
1688
1689   -  Documentation:
1690    Fix devhelp documentation installation (Mike Hommey),
1691    Fix web site encoding problems (Daniel Veillard),
1692    Fix a couple of typo in HTML parser error messages (Michael Day),
1693    Forgot to update the news page for 0.7.7 (Daniel Veillard)
1694
1695   -  Portability:
1696    607273 Fix python detection on MSys/Windows (LRN),
1697    614087 Fix Socket API usage to allow Windows64 compilation (Ozkan Sezer),
1698    Fix compilation with Clang (Koop Mast),
1699    Fix Win32 build (Rob Richards)
1700
1701   -  Bug Fixes:
1702    595789 fix a remaining potential Solaris problem (Daniel Veillard),
1703    617468 fix progressive HTML parsing with style using "'" (Denis Pauk),
1704    616478 Fix xmllint shell write command (Gwenn Kahz),
1705    614005 Possible erroneous HTML parsing on unterminated script (Pierre Belzile),
1706    627987 Fix XSD IDC errors in imported schemas (Jim Panetta),
1707    629325 XPath rounding errors first cleanup (Phil Shafer),
1708    630140 fix iso995x encoding error (Daniel Veillard),
1709    make sure htmlCtxtReset do reset the disableSAX field (Daniel Veillard),
1710    Fix a change of semantic on XPath preceding and following axis (Daniel Veillard),
1711    Fix a potential segfault due to weak symbols on pthreads (Mike Hommey),
1712    Fix a leak in XPath compilation (Daniel Veillard),
1713    Fix the semantic of XPath axis for namespace/attribute context nodes (Daniel Veillard),
1714    Avoid a descriptor leak in catalog loading code (Carlo Bramini),
1715    Fix a small bug in XPath evaluation code (Marius Wachtler),
1716    Fix handling of XML-1.0 XML namespace declaration (Daniel Veillard),
1717    Fix errors in XSD double validation check (Csaba Raduly),
1718    Fix handling of apos in URIs (Daniel Veillard),
1719    xmlTextReaderReadOuterXml should handle DTD (Rob Richards),
1720    Autogen.sh needs to create m4 directory (Rob Richards)
1721
1722   -  Improvements:
1723    606592 update language ID parser to RFC 5646 (Daniel Veillard),
1724    Sort python generated stubs (Mike Hommey),
1725    Add an HTML parser option to avoid a default doctype (Daniel Veillard)
1726
1727   -  Cleanups:
1728    618831 don't ship generated files in git (Adrian Bunk),
1729    Switch from the obsolete mkinstalldirs to AC_PROG_MKDIR_P (Adrian Bunk),
1730    Various cleanups on encoding handling (Daniel Veillard),
1731    Fix xmllint to use format=1 for default formatting (Adam Spragg),
1732    Force _xmlSaveCtxt.format to be 0 or 1 (Adam Spragg),
1733    Cleanup encoding pointer comparison (Nikolay Sivov),
1734    Small code cleanup on previous patch (Daniel Veillard)
1735
1736
1737
17382.7.7: Mar 15 2010:
1739   -  Improvements:
1740    Adding a --xpath option to xmllint (Daniel Veillard),
1741    Make HTML parser non-recursive (Eugene Pimenov)
1742
1743   -  Portability:
1744    relaxng.c: cast to allow compilation with sun studio 11 (Ben Walton),
1745    Fix build failure on Sparc solaris (Roumen Petrov),
1746    use autoreconf in autogen.sh (Daniel Veillard),
1747    Fix build with mingw (Roumen Petrov),
1748    Upgrade some of the configure and autogen (Daniel Veillard),
1749    Fix relaxNG tests in runtest for Windows runtest.c: initialize ret (Rob Richards),
1750    Fix a const warning in xmlNodeSetBase (Martin Trappel),
1751    Fix python generator to not use deprecated xmllib (Daniel Veillard),
1752    Update some automake files (Daniel Veillard),
1753    598785 Fix nanohttp on Windows (spadix)
1754
1755   -  Bug Fixes:
1756    libxml violates the zlib interface and crashes (Mark Adler),
1757    Fix broken escape behaviour in regexp ranges (Daniel Veillard),
1758    Fix  missing win32 libraries in libxml-2.0.pc (Volker Grabsch),
1759    Fix detection of python linker flags (Daniel Macks),
1760    fix build error in libxml2/python (Paul Smith),
1761    ChunkParser: Incorrect decoding of small xml files (Raul Hudea),
1762    htmlCheckEncoding doesn't update input-end after shrink (Eugene Pimenov),
1763    Fix a missing #ifdef (Daniel Veillard),
1764    Fix encoding selection for xmlParseInNodeContext (Daniel Veillard),
1765    xmlPreviousElementSibling mistake (François Delyon),
1766    608773 add a missing check in xmlGROW (Daniel Veillard),
1767    Fix xmlParseInNodeContext for HTML content (Daniel Veillard),
1768    Fix lost namespace when copying node * tree.c: reconcile namespace if not found (Rob Richards),
1769    Fix some missing commas in HTML element lists (Eugene Pimenov),
1770    Correct variable type to unsigned (Nikolay Sivov),
1771    Recognize ID attribute in HTML without DOCTYPE (Daniel Veillard),
1772    Fix memory leak in xmlXPathEvalExpression() (Martin),
1773    Fix an init bug in global.c (Kai Henning),
1774    Fix xmlNodeSetBase() comment (Daniel Veillard),
1775    Fix broken escape behaviour in regexp ranges (Daniel Veillard),
1776    Don't give default HTML boolean attribute values in parser (Daniel Veillard),
1777    xmlCtxtResetLastError should reset ctxt-errNo (Daniel Veillard)
1778
1779   -  Cleanups:
1780    Cleanup a couple of weirdness in HTML parser (Eugene Pimenov)
1781
1782
1783
17842.7.6: Oct  6 2009:
1785   -  Bug Fixes:
1786     Restore thread support in default configuration (Andrew W. Nosenko),
1787     URI with no path parsing problem (Daniel Veillard),
1788     Minor patch for conditional defines in threads.c (Eric Zurcher)
1789
1790
1791
17922.7.5: Sep 24 2009:
1793   -  Bug Fixes:
1794    Restore behavior of --with-threads without argument (Andrew W. Nosenko),
1795    Fix memory leak when doc is NULL (Rob Richards),
1796    595792 fixing a RelaxNG bug introduced in 2.7.4 (Daniel Veillard),
1797    Fix a Relaxng bug raised by libvirt test suite (Daniel Veillard),
1798    Fix a parsing problem with little data at startup (Daniel Veillard),
1799    link python module with python library (Frederic Crozat),
1800    594874 Forgot an fclose in xmllint (Daniel Veillard)
1801
1802   -  Cleanup:
1803    Adding symbols.xml to EXTRA_DIST (Daniel Veillard)
1804
1805
1806
18072.7.4: Sep 10 2009:
1808   - Improvements:
1809    Switch to GIT (GNOME),
1810    Add symbol versioning to libxml2 shared libs (Daniel Veillard)
1811
1812   - Portability:
1813    593857 try to work around thread pbm MinGW 4.4 (Daniel Veillard),
1814    594250 rename ATTRIBUTE_ALLOC_SIZE to avoid clashes (Daniel Veillard),
1815    Fix Windows build * relaxng.c: fix windows build (Rob Richards),
1816    Fix the globals.h to use XMLPUBFUN (Paul Smith),
1817    Problem with extern extern in header (Daniel Veillard),
1818    Add -lnetwork for compiling on Haiku (Scott McCreary),
1819    Runtest portability patch for Solaris (Tim Rice),
1820    Small patch to accommodate the Haiku OS (Scott McCreary),
1821    584605 package VxWorks folder in the distribution (Daniel Veillard),
1822    574017 Realloc too expensive on most platform (Daniel Veillard),
1823    Fix windows build (Rob Richards),
1824    545579 doesn't compile without schema support (Daniel Veillard),
1825    xmllint use xmlGetNodePath when not compiled in (Daniel Veillard),
1826    Try to avoid __imp__xmlFree link trouble on msys (Daniel Veillard),
1827    Allow to select the threading system on Windows (LRN),
1828    Fix Solaris binary links, cleanups (Daniel Veillard),
1829    Bug 571059 – MSVC doesn't work with the bakefile (Intron),
1830    fix ATTRIBUTE_PRINTF header clash (Belgabor and Mike Hommey),
1831    fixes for Borland/CodeGear/Embarcadero compilers (Eric Zurcher)
1832
1833   - Documentation:
1834    544910 typo: "renciliateNs" (Leonid Evdokimov),
1835    Add VxWorks to list of OSes (Daniel Veillard),
1836    Regenerate the documentation and update for git (Daniel Veillard),
1837    560524 ¿ xmlTextReaderLocalName description (Daniel Veillard),
1838    Added sponsoring by AOE media for the server (Daniel Veillard),
1839    updated URLs for GNOME (Vincent Lefevre),
1840    more warnings about xmlCleanupThreads and xmlCleanupParser (Daniel Veillard)
1841
1842   - Bug fixes:
1843    594514 memory leaks - duplicate initialization (MOD),
1844    Wrong block opening in htmlNodeDumpOutputInternal (Daniel Veillard),
1845    492317 Fix  Relax-NG validation problems (Daniel Veillard),
1846    558452 fight with reg test and error report (Daniel Veillard),
1847    558452 RNG compilation of optional multiple child (Daniel Veillard),
1848    579746 XSD validation not correct / nilable groups (Daniel Veillard),
1849    502960 provide namespace stack when parsing entity (Daniel Veillard),
1850    566012 part 2 fix regression tests and push mode (Daniel Veillard),
1851    566012 autodetected encoding and encoding conflict (Daniel Veillard),
1852    584220 xpointer(/) and xinclude problems (Daniel Veillard),
1853    587663 Incorrect Attribute-Value Normalization (Daniel Veillard),
1854    444994 HTML chunked failure for attribute with <> (Daniel Veillard),
1855    Fix end of buffer char being split in XML parser (Daniel Veillard),
1856    Non ASCII character may be split at buffer end (Adiel Mittmann),
1857    440226 Add xmlXIncludeProcessTreeFlagsData API (Stefan Behnel),
1858    572129 speed up parsing of large HTML text nodes (Markus Kull),
1859    Fix HTML parsing with 0 character in CDATA (Daniel Veillard),
1860    Fix SetGenericErrorFunc and SetStructured clash (Wang Lam),
1861    566012  Incomplete EBCDIC parsing support (Martin Kogler),
1862    541335 HTML avoid creating 2 head or 2 body element (Daniel Veillard),
1863    541237 error correcting missing end tags in HTML (Daniel Veillard),
1864    583439 missing line numbers in push mode (Daniel Veillard),
1865    587867 xmllint --html --xmlout serializing as HTML (Daniel Veillard),
1866    559501 avoid select and use poll for nanohttp (Raphael Prevost),
1867    559410 -  Regexp bug on (...)? constructs (Daniel Veillard),
1868    Fix a small problem on previous HTML parser patch (Daniel Veillard),
1869    592430 -  HTML parser runs into endless loop (Daniel Veillard),
1870    447899 potential double free in xmlFreeTextReader (Daniel Veillard),
1871    446613 small validation bug mixed content with NS (Daniel Veillard),
1872    Fix the problem of revalidating a doc with RNG (Daniel Veillard),
1873    Fix xmlKeepBlanksDefault to not break indent (Nick Wellnhofer),
1874    512131 refs from externalRef part need to be added (Daniel Veillard),
1875    512131 crash in xmlRelaxNGValidateFullElement (Daniel Veillard),
1876    588441 allow '.' in HTML Names even if invalid (Daniel Veillard),
1877    582913 Fix htmlSetMetaEncoding() to be nicer (Daniel Veillard),
1878    579317 Try to find the HTML encoding information (Daniel Veillard),
1879    575875 don't output charset=html (Daniel Veillard),
1880    571271 fix semantic of xsd:all with minOccurs=0 (Daniel Veillard),
1881    570702 fix a bug in regexp determinism checking (Daniel Veillard),
1882    567619 xmlValidateNotationUse missing param test (Daniel Veillard),
1883    574393 ¿ utf-8 filename magic for compressed files (Hans Breuer),
1884    Fix a couple of problems in the parser (Daniel Veillard),
1885    585505 ¿ Document ids and refs populated by XSD (Wayne Jensen),
1886    582906 XSD validating multiple imports of the same schema (Jason Childs),
1887    Bug 582887 ¿ problems validating complex schemas (Jason Childs),
1888    Bug 579729 ¿ fix XSD schemas parsing crash (Miroslav Bajtos),
1889    576368 ¿ htmlChunkParser with special attributes (Jiri Netolicky),
1890    Bug 565747 ¿ relax anyURI data character checking (Vincent Lefevre),
1891    Preserve attributes of include start on tree copy (Petr Pajas),
1892    Skip silently unrecognized XPointer schemes (Jakub Wilk),
1893    Fix leak on SAX1, xmllint --sax1 option and debug (Daniel Veillard),
1894    potential NULL dereference on non-glibc (Jim Meyering),
1895    Fix an XSD validation crash (Daniel Veillard),
1896    Fix a regression in streaming entities support (Daniel Veillard),
1897    Fix a couple of ABI issues with C14N 1.1 (Aleksey Sanin),
1898    Aleksey Sanin support for c14n 1.1 (Aleksey Sanin),
1899    reader bug fix with entities (Daniel Veillard),
1900    use options from current parser ctxt for external entities (Rob Richards),
1901    581612 use %s to printf strings (Christian Persch),
1902    584605 change the threading initialization sequence (Igor Novoseltsev),
1903    580705 keep line numbers in HTML parser (Aaron Patterson),
1904    581803 broken HTML table attributes init (Roland Steiner),
1905    do not set error code in xmlNsWarn (Rob Richards),
1906    564217 fix structured error handling problems,
1907    reuse options from current parser for entities (Rob Richards),
1908    xmlXPathRegisterNs should not allow enpty prefixes (Daniel Veillard),
1909    add a missing check in xmlAddSibling (Kris Breuker),
1910    avoid leaks on errors (Jinmei Tatuya)
1911
1912   - Cleanup:
1913    Chasing dead assignments reported by clang-scan (Daniel Veillard),
1914    A few more safety cleanup raised by scan (Daniel Veillard),
1915    Fixing assorted potential problems raised by scan (Daniel Veillard),
1916    Potential uninitialized arguments raised by scan (Daniel Veillard),
1917    Fix a bunch of scan 'dead increments' and cleanup (Daniel Veillard),
1918    Remove a pedantic warning (Daniel Veillard),
1919    555833 always use rm -f in uninstall-local (Daniel Veillard),
1920    542394 xmlRegisterOutputCallbacks MAX_INPUT_CALLBACK (Daniel Veillard),
1921    Autoregenerate libxml2.syms automated checkings (Daniel Veillard),
1922    Make xmlRecoverDoc const (Martin Trappel) (Daniel Veillard),
1923    Both args of xmlStrcasestr are const (Daniel Veillard),
1924    hide the nbParse* variables used for debugging (Mike Hommey),
1925    570806 changed include of config.h (William M. Brack),
1926    cleanups and error reports when xmlTextWriterVSprintf fails (Jinmei Tatuya)
1927
1928
1929
19302.7.3: Jan 18 2009:
1931   - Build fix: fix build when HTML support is not included.
1932   - Bug fixes: avoid memory overflow in gigantic text nodes,
1933      indentation problem on the writed (Rob Richards),
1934      xmlAddChildList pointer problem (Rob Richards and Kevin Milburn),
1935      xmlAddChild problem with attribute (Rob Richards and Kris Breuker),
1936      avoid a memory leak in an edge case (Daniel Zimmermann),
1937      deallocate some pthread data (Alex Ott).
1938   - Improvements: configure option to avoid rebuilding docs (Adrian Bunk),
1939      limit text nodes to 10MB max by default, add element traversal
1940      APIs, add a parser option to enable pre 2.7 SAX behavior (Rob Richards),
1941      add gcc malloc checking (Marcus Meissner), add gcc printf like functions
1942      parameters checking (Marcus Meissner).
1943
1944
19452.7.2: Oct 3 2008:
1946   - Portability fix: fix solaris compilation problem, fix compilation
1947        if XPath is not configured in
1948   - Bug fixes: nasty entity bug introduced in 2.7.0, restore old behaviour
1949        when saving an HTML doc with an xml dump function, HTML UTF-8 parsing
1950        bug, fix reader custom error handlers (Riccardo Scussat)
1951
1952   - Improvement: xmlSave options for more flexibility to save as
1953        XML/HTML/XHTML, handle leading BOM in HTML documents
1954
1955
19562.7.1: Sep 1 2008:
1957   - Portability fix: Borland C fix (Moritz Both)
1958   - Bug fixes: python serialization wrappers, XPath QName corner
1959        case handking and leaks (Martin)
1960   - Improvement: extend the xmlSave to handle HTML documents and trees
1961   - Cleanup: python serialization wrappers
1962
1963
19642.7.0: Aug 30 2008:
1965   - Documentation: switch ChangeLog to UTF-8, improve mutithreads and
1966      xmlParserCleanup docs
1967   - Portability fixes: Older Win32 platforms (Rob Richards), MSVC
1968      porting fix (Rob Richards), Mac OS X regression tests (Sven Herzberg),
1969      non GNUCC builds (Rob Richards), compilation on Haiku (Andreas Färber)
1970
1971   - Bug fixes: various realloc problems (Ashwin), potential double-free
1972      (Ashwin), regexp crash, icrash with invalid whitespace facets (Rob
1973      Richards), pattern fix when streaming (William Brack), various XML
1974      parsing and validation fixes based on the W3C regression tests, reader
1975      tree skipping function fix (Ashwin), Schemas regexps escaping fix
1976      (Volker Grabsch), handling of entity push errors (Ashwin), fix a slowdown
1977      when encoder can't serialize characters on output
1978   - Code cleanup: compilation fix without the reader, without the output
1979      (Robert Schwebel), python whitespace (Martin), many space/tabs cleanups,
1980      serious cleanup of the entity handling code
1981   - Improvement: switch parser to XML-1.0 5th edition, add parsing flags
1982      for old versions, switch URI parsing to RFC 3986,
1983      add xmlSchemaValidCtxtGetParserCtxt (Holger Kaelberer),
1984      new hashing functions for dictionaries (based on Stefan Behnel work),
1985      improve handling of misplaced html/head/body in HTML parser, better
1986      regression test tools and code coverage display, better algorithms
1987      to detect various versions of the billion laughts attacks, make
1988      arbitrary parser limits avoidable as a parser option
1989
1990
19912.6.32: Apr 8 2008:
1992   - Documentation: returning heap memory to kernel (Wolfram Sang),
1993      trying to clarify xmlCleanupParser() use, xmlXPathContext improvement
1994      (Jack Jansen), improve the *Recover* functions documentation,
1995      XmlNodeType doc link fix (Martijn Arts)
1996   - Bug fixes: internal subset memory leak (Ashwin), avoid problem with
1997      paths starting with // (Petr Sumbera), streaming XSD validation callback
1998      patches (Ashwin), fix redirection on port other than 80 (William Brack),
1999      SAX2 leak (Ashwin), XInclude fragment of own document (Chris Ryan),
2000      regexp bug with '.' (Andrew Tosh), flush the writer at the end of the
2001      document (Alfred Mickautsch), output I/O bug fix (William Brack),
2002      writer CDATA output after a text node (Alex Khesin), UTF-16 encoding
2003      detection (William Brack), fix handling of empty CDATA nodes for Safari
2004      team, python binding problem with namespace nodes, improve HTML parsing
2005      (Arnold Hendriks), regexp automata build bug, memory leak fix (Vasily
2006      Chekalkin), XSD test crash, weird system parameter entity parsing problem,
2007      allow save to file:///X:/ windows paths, various attribute normalisation
2008      problems, externalSubsetSplit fix (Ashwin), attribute redefinition in
2009      the DTD (Ashwin), fix in char ref parsing check (Alex Khesin), many
2010      out of memory handling fixes (Ashwin), XPath out of memory handling fixes
2011      (Alvaro Herrera), various realloc problems (Ashwin), UCS4 encoding
2012      conversion buffer size (Christian Fruth), problems with EatName
2013      functions on memory errors, BOM handling in external parsed entities
2014      (Mark Rowe)
2015   - Code cleanup: fix build under VS 2008 (David Wimsey), remove useless
2016      mutex in xmlDict (Florent Guilian), Mingw32 compilation fix (Carlo
2017      Bramini), Win and MacOS EOL cleanups (Florent Guiliani), iconv need
2018      a const detection (Roumen Petrov), simplify xmlSetProp (Julien Charbon),
2019      cross compilation fixes for Mingw (Roumen Petrov), SCO Openserver build
2020      fix (Florent Guiliani), iconv uses const on Win32 (Rob Richards),
2021      duplicate code removal (Ashwin), missing malloc test and error reports
2022      (Ashwin), VMS makefile fix (Tycho Hilhorst)
2023   - improvements: better plug of schematron in the normal error handling
2024      (Tobias Minich)
2025
2026
20272.6.31: Jan 11 2008:
2028   - Security fix: missing of checks in UTF-8 parsing
2029   - Bug fixes: regexp bug, dump attribute from XHTML document, fix
2030      xmlFree(NULL) to not crash in debug mode, Schematron parsing crash
2031      (Rob Richards), global lock free on Windows (Marc-Antoine Ruel),
2032      XSD crash due to double free (Rob Richards), indentation fix in
2033      xmlTextWriterFullEndElement (Felipe Pena), error in attribute type
2034      parsing if attribute redeclared, avoid crash in hash list scanner if
2035      deleting elements, column counter bug fix (Christian Schmidt),
2036      HTML embed element saving fix (Stefan Behnel), avoid -L/usr/lib
2037      output from xml2-config (Fred Crozat), avoid an xmllint crash
2038      (Stefan Kost), don't stop HTML parsing on out of range chars.
2039
2040   - Code cleanup: fix open() call third argument, regexp cut'n paste
2041      copy error, unused variable in __xmlGlobalInitMutexLock (Hannes Eder),
2042      some make distcheck related fixes (John Carr)
2043   - Improvements: HTTP Header: includes port number (William Brack),
2044      testURI --debug option,
2045
2046
20472.6.30: Aug 23 2007:
2048   - Portability: Solaris crash on error handling, windows path fixes
2049      (Roland Schwarz and Rob Richards), mingw build (Roland Schwarz)
2050   - Bugfixes: xmlXPathNodeSetSort problem (William Brack), leak when
2051      reusing a writer for a new document (Dodji Seketeli), Schemas
2052      xsi:nil handling patch (Frank Gross), relative URI build problem
2053      (Patrik Fimml), crash in xmlDocFormatDump, invalid char in comment
2054      detection bug, fix disparity with xmlSAXUserParseMemory, automata
2055      generation for complex regexp counts problems, Schemas IDC import
2056      problems (Frank Gross), xpath predicate evailation error handling
2057      (William Brack)
2058
2059
20602.6.29: Jun 12 2007:
2061   - Portability: patches from Andreas Stricke for WinCEi,
2062      fix compilation warnings (William Brack), avoid warnings on Apple OS/X
2063      (Wendy Doyle and Mark Rowe), Windows compilation and threading
2064      improvements (Rob Richards), compilation against old Python versions,
2065      new GNU tar changes (Ryan Hill)
2066   - Documentation: xmlURIUnescapeString comment,
2067   - Bugfixes: xmlBufferAdd problem (Richard Jones), 'make valgrind'
2068      flag fix (Richard Jones), regexp interpretation of \,
2069      htmlCreateDocParserCtxt (Jean-Daniel Dupas), configure.in
2070      typo (Bjorn Reese), entity content failure, xmlListAppend() fix
2071      (Georges-André Silber), XPath number serialization (William Brack),
2072      nanohttp gzipped stream fix (William Brack and Alex Cornejo),
2073      xmlCharEncFirstLine typo (Mark Rowe), uri bug (François Delyon),
2074      XPath string value of PI nodes (William Brack), XPath node set
2075      sorting bugs (William Brack), avoid outputting namespace decl
2076      dups in the writer (Rob Richards), xmlCtxtReset bug, UTF-8 encoding
2077      error handling, recustion on next in catalogs, fix a Relax-NG crash,
2078      workaround wrong file: URIs, htmlNodeDumpFormatOutput on attributes,
2079      invalid character in attribute detection bug, big comments before
2080      internal subset streaming bug, HTML parsing of attributes with : in
2081      the name, IDness of name in HTML (Dagfinn I. Mannsåker)
2082   - Improvement: keep URI query parts in raw form (Richard Jones),
2083      embed tag support in HTML (Michael Day)
2084
2085
20862.6.28: Apr 17 2007:
2087   - Documentation: comment fixes (Markus Keim), xpath comments fixes too
2088      (James Dennett)
2089   - Bug fixes: XPath bug (William Brack), HTML parser autoclose stack usage
2090      (Usamah Malik), various regexp bug fixes (DV and William), path conversion
2091      on Windows (Igor Zlatkovic), htmlCtxtReset fix (Michael Day), XPath
2092      principal node of axis bug, HTML serialization of some codepoint
2093      (Steven Rainwater), user data propagation in XInclude (Michael Day),
2094      standalone and XML decl detection (Michael Day), Python id output
2095      for some id, fix the big python string memory leak, URI parsing fixes
2096      (Stéphane Bidoul and William), long comments parsing bug (William),
2097      concurrent threads initialization (Ted Phelps), invalid char
2098      in text XInclude (William), XPath memory leak (William), tab in
2099      python problems (Andreas Hanke), XPath node comparison error
2100      (Oleg Paraschenko), cleanup patch for reader (Julien Reichel),
2101      XML Schemas attribute group (William), HTML parsing problem (William),
2102      fix char 0x2d in regexps (William), regexp quantifier range with
2103      min occurs of 0 (William), HTML script/style parsing (Mike Day)
2104   - Improvement: make xmlTextReaderSetup() public
2105   - Compilation and postability: fix a missing include problem (William),
2106      __ss_family on AIX again (Björn Wiberg), compilation without zlib
2107      (Michael Day), catalog patch for Win32 (Christian Ehrlicher),
2108      Windows CE fixes (Andreas Stricke)
2109   - Various CVS to SVN infrastructure changes
2110
2111
21122.6.27: Oct 25 2006:
2113   - Portability fixes: file names on windows (Roland Schwingel,
2114      Emelyanov Alexey), windows compile fixup (Rob Richards),
2115      AIX iconv() is apparently case sensitive
2116   - improvements: Python XPath types mapping (Nic Ferrier), XPath optimization
2117      (Kasimier), add xmlXPathCompiledEvalToBoolean (Kasimier), Python node
2118      equality and comparison (Andreas Pakulat), xmlXPathCollectAndTest
2119      improvememt (Kasimier), expose if library was compiled with zlib
2120      support (Andrew Nosenko), cache for xmlSchemaIDCMatcher structs
2121      (Kasimier), xmlTextConcat should work with comments and PIs (Rob
2122      Richards), export htmlNewParserCtxt needed by Michael Day, refactoring
2123      of catalog entity loaders (Michael Day), add XPointer support to
2124      python bindings (Ross Reedstrom, Brian West and Stefan Anca),
2125      try to sort out most file path to URI conversions and xmlPathToUri,
2126      add --html --memory case to xmllint
2127   - building fix: fix --with-minimum (Felipe Contreras), VMS fix,
2128      const'ification of HTML parser structures (Matthias Clasen),
2129      portability fix (Emelyanov Alexey), wget autodetection (Peter
2130      Breitenlohner),  remove the build path recorded in the python
2131      shared module, separate library flags for shared and static builds
2132      (Mikhail Zabaluev), fix --with-minimum --with-sax1 builds, fix
2133      --with-minimum --with-schemas builds
2134   - bug fix: xmlGetNodePath fix (Kasimier), xmlDOMWrapAdoptNode and
2135      attribute (Kasimier), crash when using the recover mode,
2136      xmlXPathEvalExpr problem (Kasimier), xmlXPathCompExprAdd bug (Kasimier),
2137      missing destroy in xmlFreeRMutex (Andrew Nosenko), XML Schemas fixes
2138      (Kasimier), warning on entities processing, XHTML script and style
2139      serialization (Kasimier), python generator for long types, bug in
2140      xmlSchemaClearValidCtxt (Bertrand Fritsch), xmlSchemaXPathEvaluate
2141      allocation bug (Marton Illes), error message end of line (Rob Richards),
2142      fix attribute serialization in writer (Rob Richards), PHP4 DTD validation
2143      crash, parser safety patch (Ben Darnell), _private context propagation
2144      when parsing entities (with Michael Day), fix entities behaviour when
2145      using SAX, URI to file path fix (Mikhail Zabaluev), disappearing validity
2146      context, arg error in SAX callback (Mike Hommey), fix mixed-content
2147      autodetect when using --noblanks, fix xmlIOParseDTD error handling,
2148      fix bug in xmlSplitQName on special Names, fix Relax-NG element content
2149      validation bug, fix xmlReconciliateNs bug, fix potential attribute
2150      XML parsing bug, fix line/column accounting in XML parser, chunking bug
2151      in the HTML parser on script, try to detect obviously buggy HTML
2152      meta encoding indications, bugs with encoding BOM and xmlSaveDoc,
2153      HTML entities in attributes parsing, HTML minimized attribute values,
2154      htmlReadDoc and htmlReadIO were broken, error handling bug in
2155      xmlXPathEvalExpression (Olaf Walkowiak), fix a problem in
2156      htmlCtxtUseOptions, xmlNewInputFromFile could leak (Marius Konitzer),
2157      bug on misformed SSD regexps (Christopher Boumenot)
2158
2159   - documentation: warning about XML_PARSE_COMPACT (Kasimier Buchcik),
2160      fix xmlXPathCastToString documentation, improve man pages for
2161      xmllitn and xmlcatalog (Daniel Leidert), fixed comments of a few
2162      functions
2163
2164
21652.6.26: Jun 6 2006:
2166   - portability fixes: Python detection (Joseph Sacco), compilation
2167    error(William Brack and Graham Bennett), LynxOS patch (Olli Savia)
2168   - bug fixes: encoding buffer problem, mix of code and data in
2169    xmlIO.c(Kjartan Maraas), entities in XSD validation (Kasimier Buchcik),
2170    variousXSD validation fixes (Kasimier), memory leak in pattern (Rob
2171    Richards andKasimier), attribute with colon in name (Rob Richards), XPath
2172    leak inerror reporting (Aleksey Sanin), XInclude text include of
2173    selfdocument.
2174   - improvements: Xpath optimizations (Kasimier), XPath object
2175    cache(Kasimier)
2176
2177
21782.6.25: Jun 6 2006::
2179Do not use or package 2.6.25
21802.6.24: Apr 28 2006:
2181   - Portability fixes: configure on Windows, testapi compile on windows
2182      (Kasimier Buchcik, venkat naidu), Borland C++ 6 compile (Eric Zurcher),
2183      HP-UX compiler workaround (Rick Jones), xml2-config bugfix, gcc-4.1
2184      cleanups, Python detection scheme (Joseph Sacco), UTF-8 file paths on
2185      Windows (Roland Schwingel).
2186
2187   - Improvements: xmlDOMWrapReconcileNamespaces xmlDOMWrapCloneNode (Kasimier
2188      Buchcik), XML catalog debugging (Rick Jones), update to Unicode 4.01.
2189   - Bug fixes: xmlParseChunk() problem in 2.6.23, xmlParseInNodeContext()
2190      on HTML docs, URI behaviour on Windows (Rob Richards), comment streaming
2191      bug, xmlParseComment (with William Brack), regexp bug fixes (DV &
2192      Youri Golovanov), xmlGetNodePath on text/CDATA (Kasimier),
2193      one Relax-NG interleave bug, xmllint --path and --valid,
2194      XSD bugfixes (Kasimier), remove debug
2195      left in Python bindings (Nic Ferrier), xmlCatalogAdd bug (Martin Cole),
2196      xmlSetProp fixes (Rob Richards), HTML IDness (Rob Richards), a large
2197      number of cleanups and small fixes based on Coverity reports, bug
2198      in character ranges, Unicode tables const (Aivars Kalvans), schemas
2199      fix (Stefan Kost), xmlRelaxNGParse error deallocation,
2200      xmlSchemaAddSchemaDoc error deallocation, error handling on unallowed
2201      code point, ixmllint --nonet to never reach the net (Gary Coady),
2202      line break in writer after end PI (Jason Viers).
2203   - Documentation: man pages updates and cleanups (Daniel Leidert).
2204   - New features: Relax NG structure error handlers.
2205
2206
22072.6.23: Jan 5 2006:
2208   - portability fixes: Windows (Rob Richards), getaddrinfo on Windows
2209    (Kolja Nowak, Rob Richards), icc warnings (Kjartan Maraas),
2210    --with-minimum compilation fixes (William Brack), error case handling fix
2211    on Solaris (Albert Chin), don't use 'list' as parameter name reported by
2212    Samuel Diaz Garcia, more old Unices portability fixes (Albert Chin),
2213    MinGW compilation (Mark Junker), HP-UX compiler warnings (Rick
2214  Jones),
2215   - code cleanup: xmlReportError (Adrian Mouat), remove xmlBufferClose
2216    (Geert Jansen), unreachable code (Oleksandr Kononenko), refactoring
2217    parsing code (Bjorn Reese)
2218   - bug fixes: xmlBuildRelativeURI and empty path (William Brack),
2219    combinatory explosion and performances in regexp code, leak in
2220    xmlTextReaderReadString(), xmlStringLenDecodeEntities problem (Massimo
2221    Morara), Identity Constraints bugs and a segfault (Kasimier Buchcik),
2222    XPath pattern based evaluation bugs (DV & Kasimier),
2223    xmlSchemaContentModelDump() memory leak (Kasimier), potential leak in
2224    xmlSchemaCheckCSelectorXPath(), xmlTextWriterVSprintf() misuse of
2225    vsnprintf (William Brack), XHTML serialization fix (Rob Richards), CRLF
2226    split problem (William), issues with non-namespaced attributes in
2227    xmlAddChild() xmlAddNextSibling() and xmlAddPrevSibling() (Rob Richards),
2228    HTML parsing of script, Python must not output to stdout (Nic Ferrier),
2229    exclusive C14N namespace visibility (Aleksey Sanin), XSD datatype
2230    totalDigits bug (Kasimier Buchcik), error handling when writing to an
2231    xmlBuffer (Rob Richards), runtest schemas error not reported (Hisashi
2232    Fujinaka), signed/unsigned problem in date/time code (Albert Chin), fix
2233    XSI driven XSD validation (Kasimier), parsing of xs:decimal (Kasimier),
2234    fix DTD writer output (Rob Richards), leak in xmlTextReaderReadInnerXml
2235    (Gary Coady), regexp bug affecting schemas (Kasimier), configuration of
2236    runtime debugging (Kasimier), xmlNodeBufGetContent bug on entity refs
2237    (Oleksandr Kononenko), xmlRegExecPushString2 bug (Sreeni Nair),
2238    compilation and build fixes (Michael Day), removed dependencies on
2239    xmlSchemaValidError (Kasimier), bug with <xml:foo/>, more XPath
2240    pattern based evaluation fixes (Kasimier)
2241   - improvements: XSD Schemas redefinitions/restrictions (Kasimier
2242    Buchcik), node copy checks and fix for attribute (Rob Richards), counted
2243    transition bug in regexps, ctxt->standalone = -2 to indicate no
2244    standalone attribute was found, add xmlSchemaSetParserStructuredErrors()
2245    (Kasimier Buchcik), add xmlTextReaderSchemaValidateCtxt() to API
2246    (Kasimier), handle gzipped HTTP resources (Gary Coady), add
2247    htmlDocDumpMemoryFormat. (Rob Richards),
2248   - documentation: typo (Michael Day), libxml man page (Albert Chin), save
2249    function to XML buffer (Geert Jansen), small doc fix (Aron Stansvik),
2250
2251
22522.6.22: Sep 12 2005:
2253   - build fixes: compile without schematron (Stéphane Bidoul)
2254   - bug fixes: xmlDebugDumpNode on namespace node (Oleg Paraschenko)i,
2255    CDATA push parser bug, xmlElemDump problem with XHTML1 doc,
2256    XML_FEATURE_xxx clash with expat headers renamed XML_WITH_xxx, fix some
2257    output formatting for meta element (Rob Richards), script and style
2258    XHTML1 serialization (David Madore), Attribute derivation fixups in XSD
2259    (Kasimier Buchcik), better IDC error reports (Kasimier Buchcik)
2260   - improvements: add XML_SAVE_NO_EMPTY xmlSaveOption (Rob Richards), add
2261    XML_SAVE_NO_XHTML xmlSaveOption, XML Schemas improvements preparing for
2262    derive (Kasimier Buchcik).
2263   - documentation: generation of gtk-doc like docs, integration with
2264    devhelp.
2265
2266
22672.6.21: Sep 4 2005:
2268   - build fixes: Cygwin portability fixes (Gerrit P. Haase), calling
2269    convention problems on Windows (Marcus Boerger), cleanups based on Linus'
2270    sparse tool, update of win32/configure.js (Rob Richards), remove warnings
2271    on Windows(Marcus Boerger), compilation without SAX1, detection of the
2272    Python binary, use $GCC inestad of $CC = 'gcc' (Andrew W. Nosenko),
2273    compilation/link with threads and old gcc, compile problem by C370 on
2274    Z/OS,
2275   - bug fixes: http_proxy environments (Peter Breitenlohner), HTML UTF-8
2276    bug (Jiri Netolicky), XPath NaN compare bug (William Brack),
2277    htmlParseScript potential bug, Schemas regexp handling of spaces, Base64
2278    Schemas comparisons NIST passes, automata build error xsd:all,
2279    xmlGetNodePath for namespaced attributes (Alexander Pohoyda), xmlSchemas
2280    foreign namespaces handling, XML Schemas facet comparison (Kupriyanov
2281    Anatolij), xmlSchemaPSimpleTypeErr error report (Kasimier Buchcik), xml:
2282    namespace ahndling in Schemas (Kasimier), empty model group in Schemas
2283    (Kasimier), wildcard in Schemas (Kasimier), URI composition (William),
2284    xs:anyType in Schemas (Kasimier), Python resolver emitting error
2285    messages directly, Python xmlAttr.parent (Jakub Piotr Clapa), trying to
2286    fix the file path/URI conversion, xmlTextReaderGetAttribute fix (Rob
2287    Richards), xmlSchemaFreeAnnot memleak (Kasimier), HTML UTF-8
2288    serialization, streaming XPath, Schemas determinism detection problem,
2289    XInclude bug, Schemas context type (Dean Hill), validation fix (Derek
2290    Poon), xmlTextReaderGetAttribute[Ns] namespaces (Rob Richards), Schemas
2291    type fix (Kuba Nowakowski), UTF-8 parser bug, error in encoding handling,
2292    xmlGetLineNo fixes, bug on entities handling, entity name extraction in
2293    error handling with XInclude, text nodes in HTML body tags (Gary Coady),
2294    xml:id and IDness at the treee level fixes, XPath streaming patterns
2295  bugs.
2296   - improvements: structured interfaces for schemas and RNG error reports
2297    (Marcus Boerger), optimization of the char data inner loop parsing
2298    (thanks to Behdad Esfahbod for the idea), schematron validation though
2299    not finished yet, xmlSaveOption to omit XML declaration, keyref match
2300    error reports (Kasimier), formal expression handling code not plugged
2301    yet, more lax mode for the HTML parser, parser XML_PARSE_COMPACT option
2302    for text nodes allocation.
2303   - documentation: xmllint man page had --nonet duplicated
2304
2305
23062.6.20: Jul 10 2005:
2307   - build fixes: Windows build (Rob Richards), Mingw compilation (Igor
2308    Zlatkovic), Windows Makefile (Igor), gcc warnings (Kasimier and
2309    andriy@google.com), use gcc weak references to pthread to avoid the
2310    pthread dependency on Linux, compilation problem (Steve Nairn), compiling
2311    of subset (Morten Welinder), IPv6/ss_family compilation (William Brack),
2312    compilation when disabling parts of the library, standalone test
2313    distribution.
2314   - bug fixes: bug in lang(), memory cleanup on errors (William Brack),
2315    HTTP query strings (Aron Stansvik), memory leak in DTD (William), integer
2316    overflow in XPath (William), nanoftp buffer size, pattern "." apth fixup
2317    (Kasimier), leak in tree reported by Malcolm Rowe, replaceNode patch
2318    (Brent Hendricks), CDATA with NULL content (Mark Vakoc), xml:base fixup
2319    on XInclude (William), pattern fixes (William), attribute bug in
2320    exclusive c14n (Aleksey Sanin), xml:space and xml:lang with SAX2 (Rob
2321    Richards), namespace trouble in complex parsing (Malcolm Rowe), XSD type
2322    QNames fixes (Kasimier), XPath streaming fixups (William), RelaxNG bug
2323    (Rob Richards), Schemas for Schemas fixes (Kasimier), removal of ID (Rob
2324    Richards), a small RelaxNG leak, HTML parsing in push mode bug (James
2325    Bursa), failure to detect UTF-8 parsing bugs in CDATA sections,
2326    areBlanks() heuristic failure, duplicate attributes in DTD bug
2327  (William).
2328   - improvements: lot of work on Schemas by Kasimier Buchcik both on
2329    conformance and streaming, Schemas validation messages (Kasimier Buchcik,
2330    Matthew Burgess), namespace removal at the python level (Brent
2331    Hendricks), Update to new Schemas regression tests from W3C/Nist
2332    (Kasimier), xmlSchemaValidateFile() (Kasimier), implementation of
2333    xmlTextReaderReadInnerXml and xmlTextReaderReadOuterXml (James Wert),
2334    standalone test framework and programs, new DOM import APIs
2335    xmlDOMWrapReconcileNamespaces() xmlDOMWrapAdoptNode() and
2336    xmlDOMWrapRemoveNode(), extension of xmllint capabilities for SAX and
2337    Schemas regression tests, xmlStopParser() available in pull mode too,
2338    ienhancement to xmllint --shell namespaces support, Windows port of the
2339    standalone testing tools (Kasimier and William),
2340    xmlSchemaValidateStream() xmlSchemaSAXPlug() and xmlSchemaSAXUnplug() SAX
2341    Schemas APIs, Schemas xmlReader support.
2342
2343
23442.6.19: Apr 02 2005:
2345   - build fixes: drop .la from RPMs, --with-minimum build fix (William
2346    Brack), use XML_SOCKLEN_T instead of SOCKLEN_T because it breaks with AIX
2347    5.3 compiler, fixed elfgcchack.h generation and PLT reduction code on
2348    Linux/ELF/gcc4
2349   - bug fixes: schemas type decimal fixups (William Brack), xmmlint return
2350    code (Gerry Murphy), small schemas fixes (Matthew Burgess and GUY
2351    Fabrice), workaround "DAV:" namespace brokenness in c14n (Aleksey Sanin),
2352    segfault in Schemas (Kasimier Buchcik), Schemas attribute validation
2353    (Kasimier), Prop related functions and xmlNewNodeEatName (Rob Richards),
2354    HTML serialization of name attribute on a elements, Python error handlers
2355    leaks and improvement (Brent Hendricks), uninitialized variable in
2356    encoding code, Relax-NG validation bug, potential crash if
2357    gnorableWhitespace is NULL, xmlSAXParseDoc and xmlParseDoc signatures,
2358    switched back to assuming UTF-8 in case no encoding is given at
2359    serialization time
2360   - improvements: lot of work on Schemas by Kasimier Buchcik on facets
2361    checking and also mixed handling.
2362   -
2363
2364
23652.6.18: Mar 13 2005:
2366   - build fixes: warnings (Peter Breitenlohner), testapi.c generation,
2367    Bakefile support (Francesco Montorsi), Windows compilation (Joel Reed),
2368    some gcc4 fixes, HP-UX portability fixes (Rick Jones).
2369   - bug fixes: xmlSchemaElementDump namespace (Kasimier Buchcik), push and
2370    xmlreader stopping on non-fatal errors, thread support for dictionaries
2371    reference counting (Gary Coady), internal subset and push problem, URL
2372    saved in xmlCopyDoc, various schemas bug fixes (Kasimier), Python paths
2373    fixup (Stephane Bidoul), xmlGetNodePath and namespaces, xmlSetNsProp fix
2374    (Mike Hommey), warning should not count as error (William Brack),
2375    xmlCreatePushParser empty chunk, XInclude parser flags (William), cleanup
2376    FTP and HTTP code to reuse the uri parsing and IPv6 (William),
2377    xmlTextWriterStartAttributeNS fix (Rob Richards), XMLLINT_INDENT being
2378    empty (William), xmlWriter bugs (Rob Richards), multithreading on Windows
2379    (Rich Salz), xmlSearchNsByHref fix (Kasimier), Python binding leak (Brent
2380    Hendricks), aliasing bug exposed by gcc4 on s390, xmlTextReaderNext bug
2381    (Rob Richards), Schemas decimal type fixes (William Brack),
2382    xmlByteConsumed static buffer (Ben Maurer).
2383   - improvement: speedup parsing comments and DTDs, dictionary support for
2384    hash tables, Schemas Identity constraints (Kasimier), streaming XPath
2385    subset, xmlTextReaderReadString added (Bjorn Reese), Schemas canonical
2386    values handling (Kasimier), add xmlTextReaderByteConsumed (Aron
2387  Stansvik),
2388   - Documentation: Wiki support (Joel Reed)
2389
2390
23912.6.17: Jan 16 2005:
2392   - build fixes: Windows, warnings removal (William Brack),
2393    maintainer-clean dependency(William), build in a different directory
2394    (William), fixing --with-minimum configure build (William), BeOS build
2395    (Marcin Konicki), Python-2.4 detection (William), compilation on AIX (Dan
2396    McNichol)
2397   - bug fixes: xmlTextReaderHasAttributes (Rob Richards), xmlCtxtReadFile()
2398    to use the catalog(s), loop on output (William Brack), XPath memory leak,
2399    ID deallocation problem (Steve Shepard), debugDumpNode crash (William),
2400    warning not using error callback (William), xmlStopParser bug (William),
2401    UTF-16 with BOM on DTDs (William), namespace bug on empty elements in
2402    push mode (Rob Richards), line and col computations fixups (Aleksey
2403    Sanin), xmlURIEscape fix (William), xmlXPathErr on bad range (William),
2404    patterns with too many steps, bug in RNG choice optimization, line number
2405    sometimes missing.
2406   - improvements: XSD Schemas (Kasimier Buchcik), python generator
2407    (William), xmlUTF8Strpos speedup (William), unicode Python strings
2408    (William), XSD error reports (Kasimier Buchcik), Python __str__ call
2409    serialize().
2410   - new APIs: added xmlDictExists(), GetLineNumber and GetColumnNumber for
2411    the xmlReader (Aleksey Sanin), Dynamic Shared Libraries APIs (mostly Joel
2412    Reed), error extraction API from regexps, new XMLSave option for format
2413    (Phil Shafer)
2414   - documentation: site improvement (John Fleck), FAQ entries
2415  (William).
2416
2417
24182.6.16: Nov 10 2004:
2419   - general hardening and bug fixing crossing all the API based on new
2420    automated regression testing
2421   - build fix: IPv6 build and test on AIX (Dodji Seketeli)
2422   - bug fixes: problem with XML::Libxml reported by Petr Pajas,  encoding
2423    conversion functions return values, UTF-8 bug affecting XPath reported by
2424    Markus Bertheau, catalog problem with NULL entries (William Brack)
2425   - documentation: fix to xmllint man page, some API function description
2426    were updated.
2427   - improvements: DTD validation APIs provided at the Python level (Brent
2428    Hendricks)
2429
2430
24312.6.15: Oct 27 2004:
2432   - security fixes on the nanoftp and nanohttp modules
2433   - build fixes: xmllint detection bug in configure, building outside the
2434    source tree (Thomas Fitzsimmons)
2435   - bug fixes: HTML parser on broken ASCII chars in names (William), Python
2436    paths (Malcolm Tredinnick), xmlHasNsProp and default namespace (William),
2437    saving to python file objects (Malcolm Tredinnick), DTD lookup fix
2438    (Malcolm), save back <group> in catalogs (William), tree build
2439    fixes (DV and Rob Richards), Schemas memory bug, structured error handler
2440    on Python 64bits, thread local memory deallocation, memory leak reported
2441    by Volker Roth, xmlValidateDtd in the presence of an internal subset,
2442    entities and _private problem (William), xmlBuildRelativeURI error
2443    (William).
2444   - improvements: better XInclude error reports (William), tree debugging
2445    module and tests, convenience functions at the Reader API (Graham
2446    Bennett), add support for PI in the HTML parser.
2447
2448
24492.6.14: Sep 29 2004:
2450   - build fixes: configure paths for xmllint and xsltproc, compilation
2451    without HTML parser, compilation warning cleanups (William Brack &
2452    Malcolm Tredinnick), VMS makefile update (Craig Berry),
2453   - bug fixes: xmlGetUTF8Char (William Brack), QName properties (Kasimier
2454    Buchcik), XInclude testing, Notation serialization, UTF8ToISO8859x
2455    transcoding (Mark Itzcovitz), lots of XML Schemas cleanup and fixes
2456    (Kasimier), ChangeLog cleanup (Stepan Kasal), memory fixes (Mark Vakoc),
2457    handling of failed realloc(), out of bound array addressing in Schemas
2458    date handling, Python space/tabs cleanups (Malcolm Tredinnick), NMTOKENS
2459    E20 validation fix (Malcolm),
2460   - improvements: added W3C XML Schemas testsuite (Kasimier Buchcik), add
2461    xmlSchemaValidateOneElement (Kasimier), Python exception hierearchy
2462    (Malcolm Tredinnick), Python libxml2 driver improvement (Malcolm
2463    Tredinnick), Schemas support for xsi:schemaLocation,
2464    xsi:noNamespaceSchemaLocation, xsi:type (Kasimier Buchcik)
2465
2466
24672.6.13: Aug 31 2004:
2468   - build fixes: Windows and zlib (Igor Zlatkovic), -O flag with gcc,
2469    Solaris compiler warning, fixing RPM BuildRequires,
2470   - fixes: DTD loading on Windows (Igor), Schemas error reports APIs
2471    (Kasimier Buchcik), Schemas validation crash, xmlCheckUTF8 (William Brack
2472    and Julius Mittenzwei), Schemas facet check (Kasimier), default namespace
2473    problem (William), Schemas hexbinary empty values, encoding error could
2474    generate a serialization loop.
2475   - Improvements: Schemas validity improvements (Kasimier), added --path
2476    and --load-trace options to xmllint
2477   - documentation: tutorial update (John Fleck)
2478
2479
24802.6.12: Aug 22 2004:
2481   - build fixes: fix --with-minimum, elfgcchack.h fixes (Peter
2482    Breitenlohner), perl path lookup (William), diff on Solaris (Albert
2483    Chin), some 64bits cleanups.
2484   - Python: avoid a warning with 2.3 (William Brack), tab and space mixes
2485    (William), wrapper generator fixes (William), Cygwin support (Gerrit P.
2486    Haase), node wrapper fix (Marc-Antoine Parent), XML Schemas support
2487    (Torkel Lyng)
2488   - Schemas: a lot of bug fixes and improvements from Kasimier Buchcik
2489   - fixes: RVT fixes (William), XPath context resets bug (William), memory
2490    debug (Steve Hay), catalog white space handling (Peter Breitenlohner),
2491    xmlReader state after attribute reading (William), structured error
2492    handler (William), XInclude generated xml:base fixup (William), Windows
2493    memory reallocation problem (Steve Hay), Out of Memory conditions
2494    handling (William and Olivier Andrieu), htmlNewDoc() charset bug,
2495    htmlReadMemory init (William), a posteriori validation DTD base
2496    (William), notations serialization missing, xmlGetNodePath (Dodji),
2497    xmlCheckUTF8 (Diego Tartara), missing line numbers on entity
2498  (William)
2499   - improvements: DocBook catalog build scrip (William), xmlcatalog tool
2500    (Albert Chin), xmllint --c14n option, no_proxy environment (Mike Hommey),
2501    xmlParseInNodeContext() addition, extend xmllint --shell, allow XInclude
2502    to not generate start/end nodes, extend xmllint --version to include CVS
2503    tag (William)
2504   - documentation: web pages fixes, validity API docs fixes (William)
2505    schemas API fix (Eric Haszlakiewicz), xmllint man page (John Fleck)
2506
2507
25082.6.11: July 5 2004:
2509   - Schemas: a lot of changes and improvements by Kasimier Buchcik for
2510    attributes, namespaces and simple types.
2511   - build fixes: --with-minimum (William Brack),  some gcc cleanup
2512    (William), --with-thread-alloc (William)
2513   - portability: Windows binary package change (Igor Zlatkovic), Catalog
2514    path on Windows
2515   - documentation: update to the tutorial (John Fleck), xmllint return code
2516    (John Fleck), man pages (Ville Skytta),
2517   - bug fixes: C14N bug serializing namespaces (Aleksey Sanin), testSAX
2518    properly initialize the library (William), empty node set in XPath
2519    (William), xmlSchemas errors (William), invalid charref problem pointed
2520    by Morus Walter, XInclude xml:base generation (William), Relax-NG bug
2521    with div processing (William), XPointer and xml:base problem(William),
2522    Reader and entities, xmllint return code for schemas (William), reader
2523    streaming problem (Steve Ball), DTD serialization problem (William),
2524    libxml.m4 fixes (Mike Hommey), do not provide destructors as methods on
2525    Python classes, xmlReader buffer bug, Python bindings memory interfaces
2526    improvement (with Stéphane Bidoul), Fixed the push parser to be back to
2527    synchronous behaviour.
2528   - improvement: custom per-thread I/O enhancement (Rob Richards), register
2529    namespace in debug shell (Stefano Debenedetti), Python based regression
2530    test for non-Unix users (William), dynamically increase the number of
2531    XPath extension functions in Python and fix a memory leak (Marc-Antoine
2532    Parent and William)
2533   - performance: hack done with Arjan van de Ven to reduce ELF footprint
2534    and generated code on Linux, plus use gcc runtime profiling to optimize
2535    the code generated in the RPM packages.
2536
2537
25382.6.10: May 17 2004:
2539   - Web page generated for ChangeLog
2540   - build fixes: --without-html problems, make check without make all
2541   - portability: problem with xpath.c on Windows (MSC and Borland), memcmp
2542    vs. strncmp on Solaris, XPath tests on Windows (Mark Vakoc), C++ do not
2543    use "list" as parameter name, make tests work with Python 1.5 (Ed
2544  Davis),
2545   - improvements: made xmlTextReaderMode public, small buffers resizing
2546    (Morten Welinder), add --maxmem option to xmllint, add
2547    xmlPopInputCallback() for Matt Sergeant, refactoring of serialization
2548    escaping, added escaping customization
2549   - bugfixes: xsd:extension (Taihei Goi), assorted regexp bugs (William
2550    Brack), xmlReader end of stream problem, node deregistration with reader,
2551    URI escaping and filemanes,  XHTML1 formatting (Nick Wellnhofer), regexp
2552    transition reduction (William), various XSD Schemas fixes (Kasimier
2553    Buchcik), XInclude fallback problem (William), weird problems with DTD
2554    (William), structured error handler callback context (William), reverse
2555    xmlEncodeSpecialChars() behaviour back to escaping '"'
2556
2557
25582.6.9: Apr 18 2004:
2559   - implement xml:id Working Draft, relaxed XPath id() checking
2560   - bugfixes: xmlCtxtReset (Brent Hendricks), line number and CDATA (Dave
2561    Beckett), Relax-NG compilation (William Brack), Regexp patches (with
2562    William), xmlUriEscape (Mark Vakoc), a Relax-NG notAllowed problem (with
2563    William), Relax-NG name classes compares (William), XInclude duplicate
2564    fallback (William), external DTD encoding detection (William), a DTD
2565    validation bug (William), xmlReader Close() fix, recursive extension
2566    schemas
2567   - improvements: use xmlRead* APIs in test tools (Mark Vakoc), indenting
2568    save optimization, better handle IIS broken HTTP redirect  behaviour (Ian
2569    Hummel), HTML parser frameset (James Bursa), libxml2-python RPM
2570    dependency, XML Schemas union support (Kasimier Buchcik), warning removal
2571    clanup (William), keep ChangeLog compressed when installing from RPMs
2572   - documentation: examples and xmlDocDumpMemory docs (John Fleck), new
2573    example (load, xpath, modify, save), xmlCatalogDump() comments,
2574   - Windows: Borland C++ builder (Eric Zurcher), work around Microsoft
2575    compiler NaN handling bug (Mark Vakoc)
2576
2577
25782.6.8: Mar 23 2004:
2579   - First step of the cleanup of the serialization code and APIs
2580   - XML Schemas: mixed content (Adam Dickmeiss), QName handling fixes (Adam
2581    Dickmeiss), anyURI for "" (John Belmonte)
2582   - Python: Canonicalization C14N support added (Anthony Carrico)
2583   - xmlDocCopyNode() extension (William)
2584   - Relax-NG: fix when processing XInclude results (William), external
2585    reference in interleave (William), missing error on <choice>
2586    failure (William), memory leak in schemas datatype facets.
2587   - xmlWriter: patch for better DTD support (Alfred Mickautsch)
2588   - bug fixes: xmlXPathLangFunction memory leak (Mike Hommey and William
2589    Brack), no ID errors if using HTML_PARSE_NOERROR, xmlcatalog fallbacks to
2590    URI on SYSTEM lookup failure, XInclude parse flags inheritance (William),
2591    XInclude and XPointer fixes for entities (William), XML parser bug
2592    reported by Holger Rauch, nanohttp fd leak (William),  regexps char
2593    groups '-' handling (William), dictionary reference counting problems,
2594    do not close stderr.
2595   - performance patches from Petr Pajas
2596   - Documentation fixes: XML_CATALOG_FILES in man pages (Mike Hommey)
2597   - compilation and portability fixes: --without-valid, catalog cleanups
2598    (Peter Breitenlohner), MingW patch (Roland Schwingel), cross-compilation
2599    to Windows (Christophe de Vienne),  --with-html-dir fixup (Julio Merino
2600    Vidal), Windows build (Eric Zurcher)
2601
2602
26032.6.7: Feb 23 2004:
2604   - documentation: tutorial updates (John Fleck), benchmark results
2605   - xmlWriter: updates and fixes (Alfred Mickautsch, Lucas Brasilino)
2606   - XPath optimization (Petr Pajas)
2607   - DTD ID handling optimization
2608   - bugfixes: xpath number with  > 19 fractional (William Brack), push
2609    mode with unescaped '>' characters, fix xmllint --stream --timing, fix
2610    xmllint --memory --stream memory usage, xmlAttrSerializeTxtContent
2611    handling NULL, trying to fix Relax-NG/Perl interface.
2612   - python: 2.3 compatibility, whitespace fixes (Malcolm Tredinnick)
2613   - Added relaxng option to xmllint --shell
2614
2615
26162.6.6: Feb 12 2004:
2617   - nanohttp and nanoftp: buffer overflow error on URI parsing (Igor and
2618    William) reported by Yuuichi Teranishi
2619   - bugfixes: make test and path issues, xmlWriter attribute serialization
2620    (William Brack), xmlWriter indentation (William), schemas validation
2621    (Eric Haszlakiewicz), XInclude dictionaries issues (William and Oleg
2622    Paraschenko), XInclude empty fallback (William), HTML warnings (William),
2623    XPointer in XInclude (William), Python namespace serialization,
2624    isolat1ToUTF8 bound error (Alfred Mickautsch), output of parameter
2625    entities in internal subset (William), internal subset bug in push mode,
2626    <xs:all> fix (Alexey Sarytchev)
2627   - Build: fix for automake-1.8 (Alexander Winston), warnings removal
2628    (Philip Ludlam), SOCKLEN_T detection fixes (Daniel Richard), fix
2629    --with-minimum configuration.
2630   - XInclude: allow the 2001 namespace without warning.
2631   - Documentation: missing example/index.html (John Fleck), version
2632    dependencies (John Fleck)
2633   - reader API: structured error reporting (Steve Ball)
2634   - Windows compilation: mingw, msys (Mikhail Grushinskiy), function
2635    prototype (Cameron Johnson), MSVC6 compiler warnings, _WINSOCKAPI_
2636  patch
2637   - Parsers: added xmlByteConsumed(ctxt) API to get the byte offset in
2638    input.
2639
2640
26412.6.5: Jan 25 2004:
2642   - Bugfixes: dictionaries for schemas (William Brack), regexp segfault
2643    (William), xs:all problem (William), a number of XPointer bugfixes
2644    (William), xmllint error go to stderr, DTD validation problem with
2645    namespace, memory leak (William), SAX1 cleanup and minimal options fixes
2646    (Mark Vadoc), parser context reset on error (Shaun McCance), XPath union
2647    evaluation problem (William) , xmlReallocLoc with NULL (Aleksey Sanin),
2648    XML Schemas double free (Steve Ball), XInclude with no href, argument
2649    callbacks order for XPath callbacks (Frederic Peters)
2650   - Documentation: python scripts (William Brack), xslt stylesheets (John
2651    Fleck), doc (Sven Zimmerman), I/O example.
2652   - Python bindings: fixes (William), enum support (Stéphane Bidoul),
2653    structured error reporting (Stéphane Bidoul)
2654   - XInclude: various fixes for conformance, problem related to dictionary
2655    references (William & me), recursion (William)
2656   - xmlWriter: indentation (Lucas Brasilino), memory leaks (Alfred
2657    Mickautsch),
2658   - xmlSchemas: normalizedString datatype (John Belmonte)
2659   - code cleanup for strings functions (William)
2660   - Windows: compiler patches (Mark Vakoc)
2661   - Parser optimizations, a few new XPath and dictionary APIs for future
2662    XSLT optimizations.
2663
2664
26652.6.4: Dec 24 2003:
2666   - Windows build fixes (Igor Zlatkovic)
2667   - Some serious XInclude problems reported by Oleg Paraschenko and
2668   - Unix and Makefile packaging fixes (me, William Brack,
2669   - Documentation improvements (John Fleck, William Brack), example fix
2670    (Lucas Brasilino)
2671   - bugfixes: xmlTextReaderExpand() with xmlReaderWalker, XPath handling of
2672    NULL strings (William Brack) , API building reader or parser from
2673    filedescriptor should not close it, changed XPath sorting to be stable
2674    again (William Brack), xmlGetNodePath() generating '(null)' (William
2675    Brack), DTD validation and namespace bug (William Brack), XML Schemas
2676    double inclusion behaviour
2677
2678
26792.6.3: Dec 10 2003:
2680   - documentation updates and cleanup (DV, William Brack, John Fleck)
2681   - added a repository of examples, examples from Aleksey Sanin, Dodji
2682    Seketeli, Alfred Mickautsch
2683   - Windows updates: Mark Vakoc, Igor Zlatkovic, Eric Zurcher, Mingw
2684    (Kenneth Haley)
2685   - Unicode range checking (William Brack)
2686   - code cleanup (William Brack)
2687   - Python bindings: doc (John Fleck),  bug fixes
2688   - UTF-16 cleanup and BOM issues (William Brack)
2689   - bug fixes: ID and xmlReader validation, XPath (William Brack),
2690    xmlWriter (Alfred Mickautsch), hash.h inclusion problem, HTML parser
2691    (James Bursa), attribute defaulting and validation, some serialization
2692    cleanups, XML_GET_LINE macro, memory debug when using threads (William
2693    Brack), serialization of attributes and entities content, xmlWriter
2694    (Daniel Schulman)
2695   - XInclude bugfix, new APIs and update to the last version including the
2696    namespace change.
2697   - XML Schemas improvements: include (Robert Stepanek), import and
2698    namespace handling, fixed the regression tests troubles, added examples
2699    based on Eric van der Vlist book, regexp fixes
2700   - preliminary pattern support for streaming (needed for schemas
2701    constraints), added xmlTextReaderPreservePattern() to collect subdocument
2702    when streaming.
2703   - various fixes in the structured error handling
2704
2705
27062.6.2: Nov 4 2003:
2707   - XPath context unregistration fixes
2708   - text node coalescing fixes (Mark Lilback)
2709   - API to screate a W3C Schemas from an existing document (Steve Ball)
2710   - BeOS patches (Marcin 'Shard' Konicki)
2711   - xmlStrVPrintf function added (Aleksey Sanin)
2712   - compilation fixes (Mark Vakoc)
2713   - stdin parsing fix (William Brack)
2714   - a posteriori DTD validation fixes
2715   - xmlReader bug fixes: Walker fixes, python bindings
2716   - fixed xmlStopParser() to really stop the parser and errors
2717   - always generate line numbers when using the new xmlReadxxx
2718  functions
2719   - added XInclude support to the xmlReader interface
2720   - implemented XML_PARSE_NONET parser option
2721   - DocBook XSLT processing bug fixed
2722   - HTML serialization for <p> elements (William Brack and me)
2723   - XPointer failure in XInclude are now handled as resource errors
2724   - fixed xmllint --html to use the HTML serializer on output (added
2725    --xmlout to implement the previous behaviour of saving it using the XML
2726    serializer)
2727
2728
27292.6.1: Oct 28 2003:
2730   - Mostly bugfixes after the big 2.6.0 changes
2731   - Unix compilation patches: libxml.m4 (Patrick Welche), warnings cleanup
2732    (William Brack)
2733   - Windows compilation patches (Joachim Bauch, Stephane Bidoul, Igor
2734    Zlatkovic)
2735   - xmlWriter bugfix (Alfred Mickautsch)
2736   - chvalid.[ch]: couple of fixes from Stephane Bidoul
2737   - context reset: error state reset, push parser reset (Graham
2738  Bennett)
2739   - context reuse: generate errors if file is not readable
2740   - defaulted attributes for element coming from internal entities
2741    (Stephane Bidoul)
2742   - Python: tab and spaces mix (William Brack)
2743   - Error handler could crash in DTD validation in 2.6.0
2744   - xmlReader: do not use the document or element _private field
2745   - testSAX.c: avoid a problem with some PIs (Massimo Morara)
2746   - general bug fixes: mandatory encoding in text decl, serializing
2747    Document Fragment nodes, xmlSearchNs 2.6.0 problem (Kasimier Buchcik),
2748    XPath errors not reported,  slow HTML parsing of large documents.
2749
2750
27512.6.0: Oct 20 2003:
2752   - Major revision release: should be API and ABI compatible but got a lot
2753    of change
2754   - Increased the library modularity, far more options can be stripped out,
2755    a --with-minimum configuration will weight around 160KBytes
2756   - Use per parser and per document dictionary, allocate names and small
2757    text nodes from the dictionary
2758   - Switch to a SAX2 like parser rewrote most of the XML parser core,
2759    provides namespace resolution and defaulted attributes, minimize memory
2760    allocations and copies, namespace checking and specific error handling,
2761    immutable buffers, make predefined entities static structures, etc...
2762   - rewrote all the error handling in the library, all errors can be
2763    intercepted at a structured level, with precise information
2764  available.
2765   - New simpler and more generic XML and HTML parser APIs, allowing to
2766    easily modify the parsing options and reuse parser context for multiple
2767    consecutive documents.
2768   - Similar new APIs for the xmlReader, for options and reuse, provided new
2769    functions to access content as const strings, use them for Python
2770  bindings
2771   - a  lot of other smaller API improvements: xmlStrPrintf (Aleksey Sanin),
2772    Walker i.e. reader on a document tree based on Alfred Mickautsch code,
2773    make room in nodes for line numbers, reference counting and future PSVI
2774    extensions, generation of character ranges to be checked with faster
2775    algorithm (William),  xmlParserMaxDepth (Crutcher Dunnavant), buffer
2776    access
2777   - New xmlWriter API provided by Alfred Mickautsch
2778   - Schemas: base64 support by Anthony Carrico
2779   - Parser<->HTTP integration fix, proper processing of the Mime-Type
2780    and charset information if available.
2781   - Relax-NG: bug fixes including the one reported by Martijn Faassen and
2782    zeroOrMore, better error reporting.
2783   - Python bindings (Stéphane Bidoul), never use stdout for errors
2784  output
2785   - Portability: all the headers have macros for export and calling
2786    convention definitions (Igor Zlatkovic), VMS update (Craig A. Berry),
2787    Windows: threads (Jesse Pelton), Borland compiler (Eric Zurcher,  Igor),
2788    Mingw (Igor), typos (Mark Vakoc),  beta version (Stephane Bidoul),
2789    warning cleanups on AIX and MIPS compilers (William Brack), BeOS (Marcin
2790    'Shard' Konicki)
2791   - Documentation fixes and README (William Brack), search fix (William),
2792    tutorial updates (John Fleck), namespace docs (Stefan Kost)
2793   - Bug fixes: xmlCleanupParser (Dave Beckett), threading uninitialized
2794    mutexes, HTML doctype lowercase,  SAX/IO (William), compression detection
2795    and restore (William), attribute declaration in DTDs (William), namespace
2796    on attribute in HTML output (William), input filename (Rob Richards),
2797    namespace DTD validation, xmlReplaceNode (Chris Ryland), I/O callbacks
2798    (Markus Keim), CDATA serialization (Shaun McCance), xmlReader (Peter
2799    Derr), high codepoint charref like &#x10FFFF;, buffer access in push
2800    mode (Justin Fletcher), TLS threads on Windows (Jesse Pelton), XPath bug
2801    (William), xmlCleanupParser (Marc Liyanage), CDATA output (William), HTTP
2802    error handling.
2803   - xmllint options: --dtdvalidfpi for Tobias Reif, --sax1 for compat
2804    testing,  --nodict for building without tree dictionary, --nocdata to
2805    replace CDATA by text, --nsclean to remove surperfluous  namespace
2806    declarations
2807   - added xml2-config --libtool-libs option from Kevin P. Fleming
2808   - a lot of profiling and tuning of the code, speedup patch for
2809    xmlSearchNs() by Luca Padovani. The xmlReader should do far less
2810    allocation and it speed should get closer to SAX. Chris Anderson worked
2811    on speeding and cleaning up repetitive checking code.
2812   - cleanup of "make tests"
2813   - libxml-2.0-uninstalled.pc from Malcolm Tredinnick
2814   - deactivated the broken docBook SGML parser code and plugged the XML
2815    parser instead.
2816
2817
28182.5.11: Sep 9 2003:
2819A bugfix only release:   - risk of crash in Relax-NG
2820   - risk of crash when using multithreaded programs
2821
2822
28232.5.10: Aug 15 2003:
2824A bugfixes only release   - Windows Makefiles (William Brack)
2825   - UTF-16 support fixes (Mark Itzcovitz)
2826   - Makefile and portability (William Brack) automake, Linux alpha, Mingw
2827    on Windows (Mikhail Grushinskiy)
2828   - HTML parser (Oliver Stoeneberg)
2829   - XInclude performance problem reported by Kevin Ruscoe
2830   - XML parser performance problem reported by Grant Goodale
2831   - xmlSAXParseDTD() bug fix from Malcolm Tredinnick
2832   - and a couple other cleanup
2833
2834
28352.5.9: Aug 9 2003:
2836   - bugfixes: IPv6 portability, xmlHasNsProp (Markus Keim), Windows build
2837    (Wiliam Brake, Jesse Pelton, Igor), Schemas (Peter Sobisch), threading
2838    (Rob Richards), hexBinary type (), UTF-16 BOM (Dodji Seketeli),
2839    xmlReader, Relax-NG schemas compilation, namespace handling,  EXSLT (Sean
2840    Griffin), HTML parsing problem (William Brack), DTD validation for mixed
2841    content + namespaces, HTML serialization, library initialization,
2842    progressive HTML parser
2843   - better interfaces for Relax-NG error handling (Joachim Bauch, )
2844   - adding xmlXIncludeProcessTree() for XInclud'ing in a subtree
2845   - doc fixes and improvements (John Fleck)
2846   - configure flag for -with-fexceptions when embedding in C++
2847   - couple of new UTF-8 helper functions (William Brack)
2848   - general encoding cleanup + ISO-8859-x without iconv (Peter Jacobi)
2849   - xmlTextReader cleanup + enum for node types (Bjorn Reese)
2850   - general compilation/warning cleanup Solaris/HP-UX/... (William
2851  Brack)
2852
2853
28542.5.8: Jul 6 2003:
2855   - bugfixes: XPath, XInclude, file/URI mapping, UTF-16 save (Mark
2856    Itzcovitz), UTF-8 checking, URI saving, error printing (William Brack),
2857    PI related memleak, compilation without schemas or without xpath (Joerg
2858    Schmitz-Linneweber/Garry Pennington), xmlUnlinkNode problem with DTDs,
2859    rpm problem on , i86_64, removed a few compilation problems from 2.5.7,
2860    xmlIOParseDTD, and xmlSAXParseDTD (Malcolm Tredinnick)
2861   - portability: DJGPP (MsDos) , OpenVMS (Craig A. Berry)
2862   - William Brack fixed multithreading lock problems
2863   - IPv6 patch for FTP and HTTP accesses (Archana Shah/Wipro)
2864   - Windows fixes (Igor Zlatkovic,  Eric Zurcher), threading (Stéphane
2865    Bidoul)
2866   - A few W3C Schemas Structure improvements
2867   - W3C Schemas Datatype improvements (Charlie Bozeman)
2868   - Python bindings for thread globals (Stéphane Bidoul), and method/class
2869    generator
2870   - added --nonet option to xmllint
2871   - documentation improvements (John Fleck)
2872
2873
28742.5.7: Apr 25 2003:
2875   - Relax-NG: Compiling to regexp and streaming validation on top of the
2876    xmlReader interface, added to xmllint --stream
2877   - xmlReader: Expand(), Next() and DOM access glue, bug fixes
2878   - Support for large files: RGN validated a 4.5GB instance
2879   - Thread support is now configured in by default
2880   - Fixes: update of the Trio code (Bjorn), WXS Date and Duration fixes
2881    (Charles Bozeman), DTD and namespaces (Brent Hendricks), HTML push parser
2882    and zero bytes handling, some missing Windows file path conversions,
2883    behaviour of the parser and validator in the presence of "out of memory"
2884    error conditions
2885   - extended the API to be able to plug a garbage collecting memory
2886    allocator, added xmlMallocAtomic() and modified the allocations
2887    accordingly.
2888   - Performances: removed excessive malloc() calls, speedup of the push and
2889    xmlReader interfaces, removed excessive thread locking
2890   - Documentation: man page (John Fleck), xmlReader documentation
2891   - Python: adding binding for xmlCatalogAddLocal (Brent M Hendricks)
2892
2893
28942.5.6: Apr 1 2003:
2895   - Fixed W3C XML Schemas datatype, should be compliant now except for
2896    binHex and base64 which are not supported yet.
2897   - bug fixes: non-ASCII IDs, HTML output, XInclude on large docs and
2898    XInclude entities handling, encoding detection on external subsets, XML
2899    Schemas bugs and memory leaks, HTML parser (James Bursa)
2900   - portability: python/trio (Albert Chin), Sun compiler warnings
2901   - documentation: added --relaxng option to xmllint man page (John)
2902   - improved error reporting: xml:space, start/end tag mismatches, Relax NG
2903    errors
2904
2905
29062.5.5: Mar 24 2003:
2907   - Lot of fixes on the Relax NG implementation. More testing including
2908    DocBook and TEI examples.
2909   - Increased the support for W3C XML Schemas datatype
2910   - Several bug fixes in the URI handling layer
2911   - Bug fixes: HTML parser, xmlReader, DTD validation, XPath, encoding
2912    conversion, line counting in the parser.
2913   - Added support for $XMLLINT_INDENT environment variable, FTP delete
2914   - Fixed the RPM spec file name
2915
2916
29172.5.4: Feb 20 2003:
2918   - Conformance testing and lot of fixes on Relax NG and XInclude
2919    implementation
2920   - Implementation of XPointer element() scheme
2921   - Bug fixes: XML parser, XInclude entities merge, validity checking on
2922    namespaces,
2923    2 serialization bugs, node info generation problems, a DTD regexp
2924    generation problem.
2925
2926   - Portability: windows updates and path canonicalization (Igor)
2927   - A few typo fixes (Kjartan Maraas)
2928   - Python bindings generator fixes (Stephane Bidoul)
2929
2930
29312.5.3: Feb 10 2003:
2932   - RelaxNG and XML Schemas datatypes improvements, and added a first
2933    version of RelaxNG Python bindings
2934   - Fixes: XLink (Sean Chittenden), XInclude (Sean Chittenden), API fix for
2935    serializing namespace nodes, encoding conversion bug, XHTML1
2936  serialization
2937   - Portability fixes: Windows (Igor), AMD 64bits RPM spec file
2938
2939
29402.5.2: Feb 5 2003:
2941   - First implementation of RelaxNG, added --relaxng flag to xmllint
2942   - Schemas support now compiled in by default.
2943   - Bug fixes: DTD validation, namespace checking, XInclude and entities,
2944    delegateURI in XML Catalogs, HTML parser, XML reader (Stéphane Bidoul),
2945    XPath parser and evaluation,  UTF8ToUTF8 serialization, XML reader memory
2946    consumption, HTML parser, HTML serialization in the presence of
2947  namespaces
2948   - added an HTML API to check elements and attributes.
2949   - Documentation improvement, PDF for the tutorial (John Fleck), doc
2950    patches (Stefan Kost)
2951   - Portability fixes: NetBSD (Julio Merino), Windows (Igor Zlatkovic)
2952   - Added python bindings for XPointer, contextual error reporting
2953    (Stéphane Bidoul)
2954   - URI/file escaping problems (Stefano Zacchiroli)
2955
2956
29572.5.1: Jan 8 2003:
2958   - Fixes a memory leak and configuration/compilation problems in 2.5.0
2959   - documentation updates (John)
2960   - a couple of XmlTextReader fixes
2961
2962
29632.5.0: Jan 6 2003:
2964   - New XmltextReader interface based on C#
2965    API (with help of Stéphane Bidoul)
2966   - Windows: more exports, including the new API (Igor)
2967   - XInclude fallback fix
2968   - Python: bindings for the new API, packaging (Stéphane Bidoul),
2969    drv_libxml2.py Python xml.sax driver (Stéphane Bidoul), fixes, speedup
2970    and iterators for Python-2.2 (Hannu Krosing)
2971   - Tutorial fixes (john Fleck and Niraj Tolia) xmllint man update
2972  (John)
2973   - Fix an XML parser bug raised by Vyacheslav Pindyura
2974   - Fix for VMS serialization (Nigel Hall) and config (Craig A. Berry)
2975   - Entities handling fixes
2976   - new API to optionally track node creation and deletion (Lukas
2977  Schroeder)
2978   - Added documentation for the XmltextReader interface and some XML guidelines
2979
2980
29812.4.30: Dec 12 2002:
2982   - 2.4.29 broke the python bindings, rereleasing
2983   - Improvement/fixes of the XML API generator, and couple of minor code
2984    fixes.
2985
2986
29872.4.29: Dec 11 2002:
2988   - Windows fixes (Igor): Windows CE port, pthread linking, python bindings
2989    (Stéphane Bidoul), Mingw (Magnus Henoch), and export list updates
2990   - Fix for prev in python bindings (ERDI Gergo)
2991   - Fix for entities handling (Marcus Clarke)
2992   - Refactored the XML and HTML dumps to a single code path, fixed XHTML1
2993    dump
2994   - Fix for URI parsing when handling URNs with fragment identifiers
2995   - Fix for HTTP URL escaping problem
2996   - added an TextXmlReader (C#) like API (work in progress)
2997   - Rewrote the API in XML generation script, includes a C parser and saves
2998    more information needed for C# bindings
2999
3000
30012.4.28: Nov 22 2002:
3002   - a couple of python binding fixes
3003   - 2 bug fixes in the XML push parser
3004   - potential memory leak removed (Martin Stoilov)
3005   - fix to the configure script for Unix (Dimitri Papadopoulos)
3006   - added encoding support for XInclude parse="text"
3007   - autodetection of XHTML1 and specific serialization rules added
3008   - nasty threading bug fixed (William Brack)
3009
3010
30112.4.27: Nov 17 2002:
3012   - fixes for the Python bindings
3013   - a number of bug fixes: SGML catalogs, xmlParseBalancedChunkMemory(),
3014    HTML parser,  Schemas (Charles Bozeman), document fragment support
3015    (Christian Glahn), xmlReconciliateNs (Brian Stafford), XPointer,
3016    xmlFreeNode(), xmlSAXParseMemory (Peter Jones), xmlGetNodePath (Petr
3017    Pajas), entities processing
3018   - added grep to xmllint --shell
3019   - VMS update patch from Craig A. Berry
3020   - cleanup of the Windows build with support for more compilers (Igor),
3021    better thread support on Windows
3022   - cleanup of Unix Makefiles and spec file
3023   - Improvements to the documentation (John Fleck)
3024
3025
30262.4.26: Oct 18 2002:
3027   - Patches for Windows CE port, improvements on Windows paths handling
3028   - Fixes to the validation  code (DTD and Schemas), xmlNodeGetPath() ,
3029    HTML serialization, Namespace compliance,  and a number of small
3030  problems
3031
3032
30332.4.25: Sep 26 2002:
3034   - A number of bug fixes: XPath, validation, Python bindings, DOM and
3035    tree, xmlI/O,  Html
3036   - Serious rewrite of XInclude
3037   - Made XML Schemas regexp part of the default build and APIs, small fix
3038    and improvement of the regexp core
3039   - Changed the validation code to reuse XML Schemas regexp APIs
3040   - Better handling of Windows file paths, improvement of Makefiles (Igor,
3041    Daniel Gehriger, Mark Vakoc)
3042   - Improved the python I/O bindings, the tests, added resolver and regexp
3043    APIs
3044   - New logos from Marc Liyanage
3045   - Tutorial improvements: John Fleck, Christopher Harris
3046   - Makefile: Fixes for AMD x86_64 (Mandrake), DESTDIR (Christophe
3047  Merlet)
3048   - removal of all stderr/perror use for error reporting
3049   - Better error reporting: XPath and DTD validation
3050   - update of the trio portability layer (Bjorn Reese)
3051
30522.4.24: Aug 22 2002   - XPath fixes (William), xf:escape-uri() (Wesley Terpstra)
3053   - Python binding fixes: makefiles (William), generator, rpm build, x86-64
3054    (fcrozat)
3055   - HTML <style> and boolean attributes serializer fixes
3056   - C14N improvements by Aleksey
3057   - doc cleanups: Rick Jones
3058   - Windows compiler makefile updates: Igor and Elizabeth Barham
3059   - XInclude: implementation of fallback and xml:base fixup added
3060
3061
30622.4.23: July 6 2002:
3063   - performances patches: Peter Jacobi
3064   - c14n fixes, testsuite and performances: Aleksey Sanin
3065   - added xmlDocFormatDump: Chema Celorio
3066   - new tutorial: John Fleck
3067   - new hash functions and performances: Sander Vesik, portability fix from
3068    Peter Jacobi
3069   - a number of bug fixes: XPath (William Brack, Richard Jinks), XML and
3070    HTML parsers, ID lookup function
3071   - removal of all remaining sprintf: Aleksey Sanin
3072
3073
30742.4.22: May 27 2002:
3075   - a number of bug fixes: configure scripts, base handling, parser, memory
3076    usage, HTML parser, XPath, documentation (Christian Cornelssen),
3077    indentation, URI parsing
3078   - Optimizations for XMLSec, fixing and making public some of the network
3079    protocol handlers (Aleksey)
3080   - performance patch from Gary Pennington
3081   - Charles Bozeman provided date and time support for XML Schemas
3082  datatypes
3083
3084
30852.4.21: Apr 29 2002:
3086This release is both a bug fix release and also contains the early XML
3087Schemas structures at
3088http://www.w3.org/TR/xmlschema-1/
3089 and datatypes at
3090http://www.w3.org/TR/xmlschema-2/
3091 code, beware, all
3092interfaces are likely to change, there is huge holes, it is clearly a work in
3093progress and don't even think of putting this code in a production system,
3094it's actually not compiled in by default. The real fixes are:
3095   - a couple of bugs or limitations introduced in 2.4.20
3096   - patches for Borland C++ and MSC by Igor
3097   - some fixes on XPath strings and conformance patches by Richard
3098  Jinks
3099   - patch from Aleksey for the ExcC14N specification
3100   - OSF/1 bug fix by Bjorn
3101
3102
31032.4.20: Apr 15 2002:
3104   - bug fixes: file descriptor leak, XPath, HTML output, DTD validation
3105   - XPath conformance testing by Richard Jinks
3106   - Portability fixes: Solaris, MPE/iX, Windows, OSF/1, python bindings,
3107    libxml.m4
3108
3109
31102.4.19: Mar 25 2002:
3111   - bug fixes: half a dozen XPath bugs, Validation, ISO-Latin to UTF8
3112    encoder
3113   - portability fixes in the HTTP code
3114   - memory allocation checks using valgrind, and profiling tests
3115   - revamp of the Windows build and Makefiles
3116
3117
31182.4.18: Mar 18 2002:
3119   - bug fixes: tree, SAX, canonicalization, validation, portability,
3120  XPath
3121   - removed the --with-buffer option it was becoming unmaintainable
3122   - serious cleanup of the Python makefiles
3123   - speedup patch to XPath very effective for DocBook stylesheets
3124   - Fixes for Windows build, cleanup of the documentation
3125
3126
31272.4.17: Mar 8 2002:
3128   - a lot of bug fixes, including "namespace nodes have no parents in
3129  XPath"
3130   - fixed/improved the Python wrappers, added more examples and more
3131    regression tests, XPath extension functions can now return node-sets
3132   - added the XML Canonicalization support from Aleksey Sanin
3133
3134
31352.4.16: Feb 20 2002:
3136   - a lot of bug fixes, most of them were triggered by the XML Testsuite
3137    from OASIS and W3C. Compliance has been significantly improved.
3138   - a couple of portability fixes too.
3139
3140
31412.4.15: Feb 11 2002:
3142   - Fixed the Makefiles, especially the python module ones
3143   - A few bug fixes and cleanup
3144   - Includes cleanup
3145
3146
31472.4.14: Feb 8 2002:
3148   - Change of License to the MIT
3149    License basically for integration in XFree86 codebase, and removing
3150    confusion around the previous dual-licensing
3151   - added Python bindings, beta software but should already be quite
3152    complete
3153   - a large number of fixes and cleanups, especially for all tree
3154    manipulations
3155   - cleanup of the headers, generation of a reference API definition in
3156  XML
3157
3158
31592.4.13: Jan 14 2002:
3160   - update of the documentation: John Fleck and Charlie Bozeman
3161   - cleanup of timing code from Justin Fletcher
3162   - fixes for Windows and initial thread support on Win32: Igor and Serguei
3163    Narojnyi
3164   - Cygwin patch from Robert Collins
3165   - added xmlSetEntityReferenceFunc() for Keith Isdale work on xsldbg
3166
3167
31682.4.12: Dec 7 2001:
3169   - a few bug fixes: thread (Gary Pennington), xmllint (Geert Kloosterman),
3170    XML parser (Robin Berjon), XPointer (Danny Jamshy), I/O cleanups
3171  (robert)
3172   - Eric Lavigne contributed project files for MacOS
3173   - some makefiles cleanups
3174
3175
31762.4.11: Nov 26 2001:
3177   - fixed a couple of errors in the includes, fixed a few bugs, some code
3178    cleanups
3179   - xmllint man pages improvement by Heiko Rupp
3180   - updated VMS build instructions from John A Fotheringham
3181   - Windows Makefiles updates from Igor
3182
3183
31842.4.10: Nov 10 2001:
3185   - URI escaping fix (Joel Young)
3186   - added xmlGetNodePath() (for paths or XPointers generation)
3187   - Fixes namespace handling problems when using DTD and validation
3188   - improvements on xmllint: Morus Walter patches for --format and
3189    --encode, Stefan Kost and Heiko Rupp improvements on the --shell
3190   - fixes for xmlcatalog linking pointed by Weiqi Gao
3191   - fixes to the HTML parser
3192
3193
31942.4.9: Nov 6 2001:
3195   - fixes more catalog bugs
3196   - avoid a compilation problem, improve xmlGetLineNo()
3197
3198
31992.4.8: Nov 4 2001:
3200   - fixed SGML catalogs broken in previous release, updated xmlcatalog
3201  tool
3202   - fixed a compile errors and some includes troubles.
3203
3204
32052.4.7: Oct 30 2001:
3206   - exported some debugging interfaces
3207   - serious rewrite of the catalog code
3208   - integrated Gary Pennington thread safety patch, added configure option
3209    and regression tests
3210   - removed an HTML parser bug
3211   - fixed a couple of potentially serious validation bugs
3212   - integrated the SGML DocBook support in xmllint
3213   - changed the nanoftp anonymous login passwd
3214   - some I/O cleanup and a couple of interfaces for Perl wrapper
3215   - general bug fixes
3216   - updated xmllint man page by John Fleck
3217   - some VMS and Windows updates
3218
3219
32202.4.6: Oct 10 2001:
3221   - added an updated man pages by John Fleck
3222   - portability and configure fixes
3223   - an infinite loop on the HTML parser was removed (William)
3224   - Windows makefile patches from Igor
3225   - fixed half a dozen bugs reported for libxml or libxslt
3226   - updated xmlcatalog to be able to modify SGML super catalogs
3227
3228
32292.4.5: Sep 14 2001:
3230   - Remove a few annoying bugs in 2.4.4
3231   - forces the HTML serializer to output decimal charrefs since some
3232    version of Netscape can't handle hexadecimal ones
3233
3234
32351.8.16: Sep 14 2001:
3236   - maintenance release of the old libxml1 branch, couple of bug and
3237    portability fixes
3238
3239
32402.4.4: Sep 12 2001:
3241   - added --convert to xmlcatalog, bug fixes and cleanups of XML
3242  Catalog
3243   - a few bug fixes and some portability changes
3244   - some documentation cleanups
3245
3246
32472.4.3:  Aug 23 2001:
3248   - XML Catalog support see the doc
3249   - New NaN/Infinity floating point code
3250   - A few bug fixes
3251
3252
32532.4.2:  Aug 15 2001:
3254   - adds xmlLineNumbersDefault() to control line number generation
3255   - lot of bug fixes
3256   - the Microsoft MSC projects files should now be up to date
3257   - inheritance of namespaces from DTD defaulted attributes
3258   - fixes a serious potential security bug
3259   - added a --format option to xmllint
3260
3261
32622.4.1:  July 24 2001:
3263   - possibility to keep line numbers in the tree
3264   - some computation NaN fixes
3265   - extension of the XPath API
3266   - cleanup for alpha and ia64 targets
3267   - patch to allow saving through HTTP PUT or POST
3268
3269
32702.4.0: July 10 2001:
3271   - Fixed a few bugs in XPath, validation, and tree handling.
3272   - Fixed XML Base implementation, added a couple of examples to the
3273    regression tests
3274   - A bit of cleanup
3275
3276
32772.3.14: July 5 2001:
3278   - fixed some entities problems and reduce memory requirement when
3279    substituting them
3280   - lots of improvements in the XPath queries interpreter can be
3281    substantially faster
3282   - Makefiles and configure cleanups
3283   - Fixes to XPath variable eval, and compare on empty node set
3284   - HTML tag closing bug fixed
3285   - Fixed an URI reference computation problem when validating
3286
3287
32882.3.13: June 28 2001:
3289   - 2.3.12 configure.in was broken as well as the push mode XML parser
3290   - a few more fixes for compilation on Windows MSC by Yon Derek
3291
3292
32931.8.14: June 28 2001:
3294   - Zbigniew Chyla gave a patch to use the old XML parser in push mode
3295   - Small Makefile fix
3296
3297
32982.3.12: June 26 2001:
3299   - lots of cleanup
3300   - a couple of validation fix
3301   - fixed line number counting
3302   - fixed serious problems in the XInclude processing
3303   - added support for UTF8 BOM at beginning of entities
3304   - fixed a strange gcc optimizer bugs in xpath handling of float, gcc-3.0
3305    miscompile uri.c (William), Thomas Leitner provided a fix for the
3306    optimizer on Tru64
3307   - incorporated Yon Derek and Igor Zlatkovic  fixes and improvements for
3308    compilation on Windows MSC
3309   - update of libxml-doc.el (Felix Natter)
3310   - fixed 2 bugs in URI normalization code
3311
3312
33132.3.11: June 17 2001:
3314   - updates to trio, Makefiles and configure should fix some portability
3315    problems (alpha)
3316   - fixed some HTML serialization problems (pre, script, and block/inline
3317    handling), added encoding aware APIs, cleanup of this code
3318   - added xmlHasNsProp()
3319   - implemented a specific PI for encoding support in the DocBook SGML
3320    parser
3321   - some XPath fixes (-Infinity, / as a function parameter and namespaces
3322    node selection)
3323   - fixed a performance problem and an error in the validation code
3324   - fixed XInclude routine to implement the recursive behaviour
3325   - fixed xmlFreeNode problem when libxml is included statically twice
3326   - added --version to xmllint for bug reports
3327
3328
33292.3.10: June 1 2001:
3330   - fixed the SGML catalog support
3331   - a number of reported bugs got fixed, in XPath, iconv detection,
3332    XInclude processing
3333   - XPath string function should now handle unicode correctly
3334
3335
33362.3.9: May 19 2001:
3337Lots of bugfixes, and added a basic SGML catalog support:
3338   - HTML push bugfix #54891 and another patch from Jonas Borgstrom
3339   - some serious speed optimization again
3340   - some documentation cleanups
3341   - trying to get better linking on Solaris (-R)
3342   - XPath API cleanup from Thomas Broyer
3343   - Validation bug fixed #54631, added a patch from Gary Pennington, fixed
3344    xmlValidGetValidElements()
3345   - Added an INSTALL file
3346   - Attribute removal added to API: #54433
3347   - added a basic support for SGML catalogs
3348   - fixed xmlKeepBlanksDefault(0) API
3349   - bugfix in xmlNodeGetLang()
3350   - fixed a small configure portability problem
3351   - fixed an inversion of SYSTEM and PUBLIC identifier in HTML document
3352
3353
33541.8.13: May 14 2001:
3355   - bugfixes release of the old libxml1 branch used by Gnome
3356
3357
33582.3.8: May 3 2001:
3359   - Integrated an SGML DocBook parser for the Gnome project
3360   - Fixed a few things in the HTML parser
3361   - Fixed some XPath bugs raised by XSLT use, tried to fix the floating
3362    point portability issue
3363   - Speed improvement (8M/s for SAX, 3M/s for DOM, 1.5M/s for
3364    DOM+validation using the XML REC as input and a 700MHz celeron).
3365   - incorporated more Windows cleanup
3366   - added xmlSaveFormatFile()
3367   - fixed problems in copying nodes with entities references (gdome)
3368   - removed some troubles surrounding the new validation module
3369
3370
33712.3.7: April 22 2001:
3372   - lots of small bug fixes, corrected XPointer
3373   - Non deterministic content model validation support
3374   - added xmlDocCopyNode for gdome2
3375   - revamped the way the HTML parser handles end of tags
3376   - XPath: corrections of namespaces support and number formatting
3377   - Windows: Igor Zlatkovic patches for MSC compilation
3378   - HTML output fixes from P C Chow and William M. Brack
3379   - Improved validation speed sensible for DocBook
3380   - fixed a big bug with ID declared in external parsed entities
3381   - portability fixes, update of Trio from Bjorn Reese
3382
3383
33842.3.6: April 8 2001:
3385   - Code cleanup using extreme gcc compiler warning options, found and
3386    cleared half a dozen potential problem
3387   - the Eazel team found an XML parser bug
3388   - cleaned up the user of some of the string formatting function. used the
3389    trio library code to provide the one needed when the platform is missing
3390    them
3391   - xpath: removed a memory leak and fixed the predicate evaluation
3392    problem, extended the testsuite and cleaned up the result. XPointer seems
3393    broken ...
3394
3395
33962.3.5: Mar 23 2001:
3397   - Biggest change is separate parsing and evaluation of XPath expressions,
3398    there is some new APIs for this too
3399   - included a number of bug fixes(XML push parser, 51876, notations,
3400  52299)
3401   - Fixed some portability issues
3402
3403
34042.3.4: Mar 10 2001:
3405   - Fixed bugs #51860 and #51861
3406   - Added a global variable xmlDefaultBufferSize to allow default buffer
3407    size to be application tunable.
3408   - Some cleanup in the validation code, still a bug left and this part
3409    should probably be rewritten to support ambiguous content model :-\
3410   - Fix a couple of serious bugs introduced or raised by changes in 2.3.3
3411    parser
3412   - Fixed another bug in xmlNodeGetContent()
3413   - Bjorn fixed XPath node collection and Number formatting
3414   - Fixed a loop reported in the HTML parsing
3415   - blank space are reported even if the Dtd content model proves that they
3416    are formatting spaces, this is for XML conformance
3417
3418
34192.3.3: Mar 1 2001:
3420   - small change in XPath for XSLT
3421   - documentation cleanups
3422   - fix in validation by Gary Pennington
3423   - serious parsing performances improvements
3424
3425
34262.3.2: Feb 24 2001:
3427   - chasing XPath bugs, found a bunch, completed some TODO
3428   - fixed a Dtd parsing bug
3429   - fixed a bug in xmlNodeGetContent
3430   - ID/IDREF support partly rewritten by Gary Pennington
3431
3432
34332.3.1: Feb 15 2001:
3434   - some XPath and HTML bug fixes for XSLT
3435   - small extension of the hash table interfaces for DOM gdome2
3436    implementation
3437   - A few bug fixes
3438
3439
34402.3.0: Feb 8 2001 (2.2.12 was on 25 Jan but I didn't kept track):
3441   - Lots of XPath bug fixes
3442   - Add a mode with Dtd lookup but without validation error reporting for
3443    XSLT
3444   - Add support for text node without escaping (XSLT)
3445   - bug fixes for xmlCheckFilename
3446   - validation code bug fixes from Gary Pennington
3447   - Patch from Paul D. Smith correcting URI path normalization
3448   - Patch to allow simultaneous install of libxml-devel and
3449  libxml2-devel
3450   - the example Makefile is now fixed
3451   - added HTML to the RPM packages
3452   - tree copying bugfixes
3453   - updates to Windows makefiles
3454   - optimization patch from Bjorn Reese
3455
3456
34572.2.11: Jan 4 2001:
3458   - bunch of bug fixes (memory I/O, xpath, ftp/http, ...)
3459   - added htmlHandleOmittedElem()
3460   - Applied Bjorn Reese's IPV6 first patch
3461   - Applied Paul D. Smith patches for validation of XInclude results
3462   - added XPointer xmlns() new scheme support
3463
3464
34652.2.10: Nov 25 2000:
3466   - Fix the Windows problems of 2.2.8
3467   - integrate OpenVMS patches
3468   - better handling of some nasty HTML input
3469   - Improved the XPointer implementation
3470   - integrate a number of provided patches
3471
3472
34732.2.9: Nov 25 2000:
3474   - erroneous release :-(
3475
3476
34772.2.8: Nov 13 2000:
3478   - First version of XInclude
3479    support
3480   - Patch in conditional section handling
3481   - updated MS compiler project
3482   - fixed some XPath problems
3483   - added an URI escaping function
3484   - some other bug fixes
3485
3486
34872.2.7: Oct 31 2000:
3488   - added message redirection
3489   - XPath improvements (thanks TOM !)
3490   - xmlIOParseDTD() added
3491   - various small fixes in the HTML, URI, HTTP and XPointer support
3492   - some cleanup of the Makefile, autoconf and the distribution content
3493
3494
34952.2.6: Oct 25 2000::
3496   - Added an hash table module, migrated a number of internal structure to
3497    those
3498   - Fixed a posteriori validation problems
3499   - HTTP module cleanups
3500   - HTML parser improvements (tag errors, script/style handling, attribute
3501    normalization)
3502   - coalescing of adjacent text nodes
3503   - couple of XPath bug fixes, exported the internal API
3504
3505
35062.2.5: Oct 15 2000::
3507   - XPointer implementation and testsuite
3508   - Lot of XPath fixes, added variable and functions registration, more
3509    tests
3510   - Portability fixes, lots of enhancements toward an easy Windows build
3511    and release
3512   - Late validation fixes
3513   - Integrated a lot of contributed patches
3514   - added memory management docs
3515   - a performance problem when using large buffer seems fixed
3516
3517
35182.2.4: Oct 1 2000::
3519   - main XPath problem fixed
3520   - Integrated portability patches for Windows
3521   - Serious bug fixes on the URI and HTML code
3522
3523
35242.2.3: Sep 17 2000:
3525   - bug fixes
3526   - cleanup of entity handling code
3527   - overall review of all loops in the parsers, all sprintf usage has been
3528    checked too
3529   - Far better handling of larges Dtd. Validating against DocBook XML Dtd
3530    works smoothly now.
3531
3532
35331.8.10: Sep 6 2000:
3534   - bug fix release for some Gnome projects
3535
3536
35372.2.2: August 12 2000:
3538   - mostly bug fixes
3539   - started adding routines to access xml parser context options
3540
3541
35422.2.1: July 21 2000:
3543   - a purely bug fixes release
3544   - fixed an encoding support problem when parsing from a memory block
3545   - fixed a DOCTYPE parsing problem
3546   - removed a bug in the function allowing to override the memory
3547    allocation routines
3548
3549
35502.2.0: July 14 2000:
3551   - applied a lot of portability fixes
3552   - better encoding support/cleanup and saving (content is now always
3553    encoded in UTF-8)
3554   - the HTML parser now correctly handles encodings
3555   - added xmlHasProp()
3556   - fixed a serious problem with &#38;
3557   - propagated the fix to FTP client
3558   - cleanup, bugfixes, etc ...
3559   - Added a page about libxml Internationalization
3560    support
3561
3562
35631.8.9:  July 9 2000:
3564   - fixed the spec the RPMs should be better
3565   - fixed a serious bug in the FTP implementation, released 1.8.9 to solve
3566    rpmfind users problem
3567
3568
35692.1.1: July 1 2000:
3570   - fixes a couple of bugs in the 2.1.0 packaging
3571   - improvements on the HTML parser
3572
3573
35742.1.0 and 1.8.8: June 29 2000:
3575   - 1.8.8 is mostly a commodity package for upgrading to libxml2 according
3576    to new instructions. It fixes a nasty problem
3577    about &#38; charref parsing
3578   - 2.1.0 also ease the upgrade from libxml v1 to the recent version. it
3579    also contains numerous fixes and enhancements:
3580
3581      added xmlStopParser() to stop parsing
3582      improved a lot parsing speed when there is large CDATA blocks
3583      includes XPath patches provided by Picdar Technology
3584      tried to fix as much as possible DTD validation and namespace
3585        related problems
3586      output to a given encoding has been added/tested
3587      lot of various fixes
3588
3589
3590   - added xmlStopParser() to stop parsing
3591   - improved a lot parsing speed when there is large CDATA blocks
3592   - includes XPath patches provided by Picdar Technology
3593   - tried to fix as much as possible DTD validation and namespace
3594        related problems
3595   - output to a given encoding has been added/tested
3596   - lot of various fixes
3597
3598
35992.0.0: Apr 12 2000:
3600   - First public release of libxml2. If you are using libxml, it's a good
3601    idea to check the 1.x to 2.x upgrade instructions. NOTE: while initially
3602    scheduled for Apr 3 the release occurred only on Apr 12 due to massive
3603    workload.
3604   - The include are now located under $prefix/include/libxml (instead of
3605    $prefix/include/gnome-xml), they also are referenced by
3606    #include <libxml/xxx.h>
3607    instead of
3608    #include "xxx.h"
3609
3610   - a new URI module for parsing URIs and following strictly RFC 2396
3611   - the memory allocation routines used by libxml can now be overloaded
3612    dynamically by using xmlMemSetup()
3613   - The previously CVS only tool tester has been renamed
3614    xmllint and is now installed as part of the libxml2
3615    package
3616   - The I/O interface has been revamped. There is now ways to plug in
3617    specific I/O modules, either at the URI scheme detection level using
3618    xmlRegisterInputCallbacks()  or by passing I/O functions when creating a
3619    parser context using xmlCreateIOParserCtxt()
3620   - there is a C preprocessor macro LIBXML_VERSION providing the version
3621    number of the libxml module in use
3622   - a number of optional features of libxml can now be excluded at
3623    configure time (FTP/HTTP/HTML/XPath/Debug)
3624
3625
36262.0.0beta: Mar 14 2000:
3627   - This is a first Beta release of libxml version 2
3628   - It's available only fromxmlsoft.org
3629    FTP, it's packaged as libxml2-2.0.0beta and available as tar and
3630  RPMs
3631   - This version is now the head in the Gnome CVS base, the old one is
3632    available under the tag LIB_XML_1_X
3633   - This includes a very large set of changes. From a  programmatic point
3634    of view applications should not have to be modified too much, check the
3635    upgrade page
3636   - Some interfaces may changes (especially a bit about encoding).
3637   - the updates includes:
3638
3639      fix I18N support. ISO-Latin-x/UTF-8/UTF-16 (nearly) seems correctly
3640        handled now
3641      Better handling of entities, especially well-formedness checking
3642        and proper PEref extensions in external subsets
3643      DTD conditional sections
3644      Validation now correctly handle entities content
3645      change
3646        structures to accommodate DOM
3647
3648
3649   - fix I18N support. ISO-Latin-x/UTF-8/UTF-16 (nearly) seems correctly
3650        handled now
3651   - Better handling of entities, especially well-formedness checking
3652        and proper PEref extensions in external subsets
3653   - DTD conditional sections
3654   - Validation now correctly handle entities content
3655   - change
3656        structures to accommodate DOM
3657   - Serious progress were made toward compliance, here are the result of the test against the
3658    OASIS testsuite (except the Japanese tests since I don't support that
3659    encoding yet). This URL is rebuilt every couple of hours using the CVS
3660    head version.
3661
3662
36631.8.7: Mar 6 2000:
3664   - This is a bug fix release:
3665   - It is possible to disable the ignorable blanks heuristic used by
3666    libxml-1.x, a new function  xmlKeepBlanksDefault(0) will allow this. Note
3667    that for adherence to XML spec, this behaviour will be disabled by
3668    default in 2.x . The same function will allow to keep compatibility for
3669    old code.
3670   - Blanks in <a>  </a> constructs are not ignored anymore,
3671    avoiding heuristic is really the Right Way :-\
3672   - The unchecked use of snprintf which was breaking libxml-1.8.6
3673    compilation on some platforms has been fixed
3674   - nanoftp.c nanohttp.c: Fixed '#' and '?' stripping when processing
3675  URIs
3676
3677
36781.8.6: Jan 31 2000:
3679   - added a nanoFTP transport module, debugged until the new version of rpmfind can use
3680    it without troubles
3681
3682
36831.8.5: Jan 21 2000:
3684   - adding APIs to parse a well balanced chunk of XML (production [43] content of the
3685    XML spec)
3686   - fixed a hideous bug in xmlGetProp pointed by Rune.Djurhuus@fast.no
3687   - Jody Goldberg <jgoldberg@home.com> provided another patch trying
3688    to solve the zlib checks problems
3689   - The current state in gnome CVS base is expected to ship as 1.8.5 with
3690    gnumeric soon
3691
3692
36931.8.4: Jan 13 2000:
3694   - bug fixes, reintroduced xmlNewGlobalNs(), fixed xmlNewNs()
3695   - all exit() call should have been removed from libxml
3696   - fixed a problem with INCLUDE_WINSOCK on WIN32 platform
3697   - added newDocFragment()
3698
3699
37001.8.3: Jan 5 2000:
3701   - a Push interface for the XML and HTML parsers
3702   - a shell-like interface to the document tree (try tester --shell :-)
3703   - lots of bug fixes and improvement added over XMas holidays
3704   - fixed the DTD parsing code to work with the xhtml DTD
3705   - added xmlRemoveProp(), xmlRemoveID() and xmlRemoveRef()
3706   - Fixed bugs in xmlNewNs()
3707   - External entity loading code has been revamped, now it uses
3708    xmlLoadExternalEntity(), some fix on entities processing were added
3709   - cleaned up WIN32 includes of socket stuff
3710
3711
37121.8.2: Dec 21 1999:
3713   - I got another problem with includes and C++, I hope this issue is fixed
3714    for good this time
3715   - Added a few tree modification functions: xmlReplaceNode,
3716    xmlAddPrevSibling, xmlAddNextSibling, xmlNodeSetName and
3717    xmlDocSetRootElement
3718   - Tried to improve the HTML output with help from Chris Lahey
3719
3720
37211.8.1: Dec 18 1999:
3722   - various patches to avoid troubles when using libxml with C++ compilers
3723    the "namespace" keyword and C escaping in include files
3724   - a problem in one of the core macros IS_CHAR was corrected
3725   - fixed a bug introduced in 1.8.0 breaking default namespace processing,
3726    and more specifically the Dia application
3727   - fixed a posteriori validation (validation after parsing, or by using a
3728    Dtd not specified in the original document)
3729   - fixed a bug in
3730
3731
37321.8.0: Dec 12 1999:
3733   - cleanup, especially memory wise
3734   - the parser should be more reliable, especially the HTML one, it should
3735    not crash, whatever the input !
3736   - Integrated various patches, especially a speedup improvement for large
3737    dataset from Carl Nygard,
3738    configure with --with-buffers to enable them.
3739   - attribute normalization, oops should have been added long ago !
3740   - attributes defaulted from DTDs should be available, xmlSetProp() now
3741    does entities escaping by default.
3742
3743
37441.7.4: Oct 25 1999:
3745   - Lots of HTML improvement
3746   - Fixed some errors when saving both XML and HTML
3747   - More examples, the regression tests should now look clean
3748   - Fixed a bug with contiguous charref
3749
3750
37511.7.3: Sep 29 1999:
3752   - portability problems fixed
3753   - snprintf was used unconditionally, leading to link problems on system
3754    were it's not available, fixed
3755
3756
37571.7.1: Sep 24 1999:
3758   - The basic type for strings manipulated by libxml has been renamed in
3759    1.7.1 from CHAR to xmlChar. The reason
3760    is that CHAR was conflicting with a predefined type on Windows. However
3761    on non WIN32 environment, compatibility is provided by the way of  a
3762    #define .
3763   - Changed another error : the use of a structure field called errno, and
3764    leading to troubles on platforms where it's a macro
3765
3766
37671.7.0: Sep 23 1999:
3768   - Added the ability to fetch remote DTD or parsed entities, see the nanohttp module.
3769   - Added an errno to report errors by another mean than a simple printf
3770    like callback
3771   - Finished ID/IDREF support and checking when validation
3772   - Serious memory leaks fixed (there is now a memory wrapper module)
3773   - Improvement of XPath
3774    implementation
3775   - Added an HTML parser front-end
3776
3777Daniel Veillard at
3778bugs.html
3779