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