* Makefile.am: adding repeated parsing and validating tests
* SAX2.c parser.c tree.c include/libxml/parser.h: make the new
DOM tree building interfaces use the dictionary from the
parsing context to build the element and attributes names
as well as formatting spaces and short text nodes
* include/libxml/dict.h dict.c: added some reference counting
for xmlDictPtr because they can be shared by documents and
a parser context.
* xmlreader.c: a bit of cleanup, remove the specific tree freeing
functions and use the standard ones now.
* xmllint.c: add --nodict
* python/libxml.c: fix a stupid bug so that ns() works on
attribute nodes.
Daniel
* parser.c include/libxml/parser.h: adding a new set of
API for parsing xmlReadDoc() xmlReadFile() ... xmlReadIO()
and xmlCtxtReadDoc() ... xmlCtxtReadIO(). That with
a clear define of xmlParserOption, xmlCtxtUseOptions()
should simplify custom parsing without being tempted to
use global variables, and xmlCtxtReset() should allow reuse
of a context for multiple parsing.
* xmllint.c: switched to use xmlReadXXX, allow options to
be used simultaneously with less troubles.
* tree.c: simple warning removal
* doc/apibuild.py: small fix
* doc/libxml2-api.xml win32/libxml2.def.src: updated
Daniel
* Makefile.am: add streaming on memory regression tests, found
bad bugs in the reader interface
* xmlreader.c: fixing bugs w.r.t. very large names, and special
condition in end of file.
* xmlIO.c tree.c include/libxml/tree.h include/libxml/xmlIO.h:
adding immutable buffers, and parser input based on those,
but this should not be used (yet) for general parsing
* parser.c: added a comment about using immutable buffers for
general parsing.
* result/bigname.xml.rdr result/bigname2.xml.rdr: fixing the
output of the regression tests
* xmllint.c: using the immutable buffers when streaming on
mmaped file (--stream --memory)
Daniel
* parserInternals.c: small fix from Rob Richards for input filename
* xmllint.c: fixes for --repeat and --memory/--stream for speed tests
* xmlIO: adding a guard in one function
Daniel
* dict.c include/libxml/dict.h: do string allocations in large
pools, allowing to find if a string pertain to a dict quickly
* xmllint.c: fix --stream --repeat --timing
* Makefile.am: the testThreads run output should be seen.
Daniel
fixing bugs and migrating to SAX2 interface by default. There
is some work letf TODO, like namespace validation and attributes
normalization (this break C14N right now)
* Makefile.am: fixed the test rules
* include/libxml/SAX2.h include/libxml/parser.h
include/libxml/parserInternals.h SAX2.c parser.c
parserInternals.c: changing the parser, migrating to SAX2,
adding new interface to switch back to SAX1 or initialize a
SAX block for v1 or v2. Most of the namespace work is done
below SAX, as well as attribute defaulting
* globals.c: changed initialization of the default SAX handlers
* hash.c tree.c include/libxml/hash.h: added QName specific handling
* xmlIO.c: small fix
* xmllint.c testSAX.c: provide a --sax1 switch to test the old
version code path
* result/p3p result/p3p.sax result/noent/p3p test/p3p: the new code
pointed out a typo in a very old test namespace
Daniel
* Makefile.am configure.in example/Makefile.am libxml.h nanoftp.c
nanohttp.c xmllint.c: Applied patch from Mikhail Grushinskiy for
mingw compiler on Windows.
Daniel
* doc/*: applied a patch from Gman for building docs
* valid.c xmllint.c include/libxml/valid.h: applied a patch from
Gary Pennington to provide an allocator for xmlValidCtxt
* xmlreader.c: applied patch from Jacek Konieczny fixing bug
#113580 about data not being passed immediately.
Daniel
* xmllint.c doc/xmllint.xml: added --nonet option
* doc/Makefile.am: fixing #112803 by adding --nonet when calling
xsltproc or xmllint
* doc/xmllint.xml doc/xmllint.1: also added --schema doc and
rebuilt
* HTMLparser.c: cleaned up the HTML parser context build when
using an URL
Daniel
* xmllint.c: added --schema option to run WXS schema validation
* xmlschemas.c xmlschemastypes.c include/libxml/schemasInternals.h:
tried to improve error reporting in the Schema code, some cleanup
too.
Daniel
* xmlschemas.c: fixing bug #104081 with xs:all with an element
holding minOccurs="0"
* test/schemas/all_* result/schemas/all_*: added some regression
tests for that bug
* xmllint.c xmlreader.c: patches from Joerg Schmitz-Linneweber and
Garry Pennington to compile without schemas support.
Daniel
* globals.c libxml.h parser.c parserInternals.c tree.c xmllint.c
xmlreader.c include/libxml/parser.h: a lot of performance work
especially the speed of streaming through the reader and push
interface. Some thread related optimizations. Nearly doubled the
speed of parsing through the reader.
Daniel
* relaxng.c xmllint.c: more work on RelaxNG streaming validation
trying to improve the subset compiled, and more testing.
* doc/downloads.html doc/xml.html doc/xmlmem.html: some updates on the
documentation
* test/relaxng/tutor11_1_3.xml: fixes the DTD path
* result/relaxng/*.err: fix some of the outputs
Daniel
* relaxng.c xmlreader.c xmllint.c include/libxml/relaxng.h
include/libxml/xmlreader.h: implemented streaming of
RelaxNG (when possible) on top of the xmlReader interface,
provided it as xmllint --stream --relaxng .rng .xml
This seems to mostly work.
* Makefile.am: updated to test RelaxNG streaming
Daniel
* SAX.c: Fixed validation bug #108858 on namespace names using
entities and reported by Brent Hendricks
* xmllint.c: report xmlTextReaderHasValue() result in --stream
--debug output.
Daniel
* test/xsdtest/xsdtest.xml uri.c: after and exchange with James
Clark it appeared I had bug in URI parsing code ...
* relaxng.c include/libxml/relaxng.h: completely revamped error
reporting to not loose message from optional parts.
* xmllint.c: added timing for RNG validation steps
* result/relaxng/*: updated the result, all error messages changed
Daniel
* configure.in xmllint.c: I f...ed up the default configuration
of schemas and --relaxng option display in xmllint, pointed by
Morus Walter.
* xlink.c: Sean Chittenden pointed a couple of errors in the XLink
detection module, fixes bug #105374.
Daniel
* HTMLparser.c tree.c xmlIO.c: comments cleanups
* Makefile.am: use xmllint for doing the RelaxNG tests
* configure.in: preparing 2.5.2 made schemas support default to
on instead of off
* relaxng.c: removed the verbosity
* xmllint.c: added --relaxng option
* python/generator.py python/libxml_wrap.h: prepared the integration
of the new RelaxNG module and schemas
* result/relaxng/*: less verbose output
Daniel
* tree.c : applied patch from Lukas Schroeder for register callbacks
* valid.c: modified patch from Lukas Schroeder to test
register callbacks with --chkregister
Daniel
* xmllint.c: a bit of cleanup
* xmlreader.c: small fix
* doc/xmlreader.html: more work on the XmlTextReader tutorial
* python/libxml.py: a few fixes pointed out by Hannu Krosing
Daniel
* testReader.c xmlreader.c valid.c include/libxml/tree.h
include/libxml/valid.h include/libxml/xmlreader.h: working on
DTD validation on top of xml reader interfaces. Allows to
validate arbitrary large instances. This required some extensions
to the valid module interface and augmenting the size of xmlID
and xmlRef structs a bit.
* uri.c xmlregexp.c: simple cleanup.
Daniel
* DOCBparser.c HTMLparser.c c14n.c debugXML.c encoding.c hash.c
nanoftp.c nanohttp.c parser.c parserInternals.c testC14N.c
testDocbook.c threads.c tree.c valid.c xmlIO.c xmllint.c xmlmemory.c
xmlreader.c xmlregexp.c xmlschemas.c xmlschemastypes.c xpath.c:
code cleanup, especially the function comments.
* tree.c: fixed a small bug when freeing nodes which are XInclude ones.
Daniel
* xmlregexp.c: fixed the data callback on transition functionality
which was broken when using the compact form
* result/schemas/*: updated the results, less verbose, all tests
pass like before
* DOCBparser.c testAutomata.c testC14N.c testSchemas.c testThreads.c
testXPath.c valid.c xinclude.c xmllint.c xmlregexp.c xmlschemas.c
xmlschemastypes.c xpath.c python/libxml.c: removed a bunch of
annoying warnings
* xpath.c: try to provide better error report when possible
Daniel
* DOCBparser.c HTMLparser.c debugXML.c encoding.c
nanoftp.c nanohttp.c parser.c tree.c uri.c xmlIO.c
xmllint.c xpath.c: replaced sprintf() with snprintf()
to prevent possible buffer overflow (the bug was pointed
out by Anju Premachandran)
* configure.in xmllint.c: owen pointed out a problem with the
ftime fix, gettimeofday() was not detected by configure and
the ftime header wasn't included, dohhh
Daniel
* libxml.h: Applied following patches from Robert Collins
and make sure IN_LIBXML is defined when compiling it
-------
* include/libxml/xmlversion.h.in (LIBXML_DLL_IMPORT): Use on Cygwin
as well as Visual C.
* parser.c (XML_DIR_SEP): Don't use '\\' for Cygwin.
* parserInternals.c (XML_DIR_SEP): Don't use '\\' for Cygwin.
* strio.c (PLATFORM_UNIX): Define for Cygwin.
* triodef.h (TRIO_PLATFORM_UNIX): Define for Cygwin.
* xmlIO.c (xmlFileOpen): Use unix behaviour for Cygwin.
Use binary mode opens for Cygwin (xmlFileOpenW xmlParserGetDirectory
xmlSysIDExists xmlNoNetExists).
* xmllint.c: Don't include winsock2.h for Cygwin.
Daniel
* valid.c: fix the xmlStrdup() used in the previous patch.
* valid.c: added --dropdtd
* tree.c: fixed xmlUnlinkNode so it also removes the references
from the document if the node is a DTD
Daniel