VirtualBox

source: vbox/trunk/src/libs/libxml2-2.13.2/NEWS@ 105589

Last change on this file since 105589 was 105420, checked in by vboxsync, 4 months ago

libxml2-2.12.6: Applied and adjusted our libxml2 changes to 2.12.6. bugref:10730

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

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette