* valid.c xmlreader.c: final touch running DTD validation
on the XmlTextReader
* python/tests/Makefile.am python/tests/reader2.py: added a
specific run based on the examples from test/valid/*.xml
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
* doc/apibuild.py doc/libxml2-api.xml doc/Makefile.am: new API
building Python script, does the C parsing directly, generates
a better API description including structure fieds defs and
enums. Still a couple of bugs, but good enough for the python
wrappers now.
* DOCBparser.c SAX.c nanohttp.c parser.c parserInternals.c tree.c
valid.c xmlIO.c xmlmemory.c xmlreader.c xmlregexp.c xmlschemas.c
include/libxml/schemasInternals.h include/libxml/tree.h: more
cleanup based on the python analysis script reports.
* libxml.spec.in: make sure the API XML description is part of the
devel package.
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
* Makefile.am config.h.in libxml.spec.in doc/Makefile.am:
serious cleanup of the spec file and associated changes
in the Makefiles.
* valid.c: try to remove some warnings on x86_64
Daniel
* SAX.c valid.c include/libxml/valid.h: fixed bug #92518 validation
error were not covering namespace declarations.
* result/valid/dia.xml test/valid/dia.xml: the test wasn't valid,
it was missing the attribute declaration for the namespace
* result/VC/NS3: the fix now report breakages in that test
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
* Makefile.am configure.in include/libxml/xmlversion.h.in:
made configuring with regexps/automata/unicode the default
but without schemas ATM
* testRegexp.c valid.c xmlregexp.c include/libxml/xmlregexp.h:
fixed the regexp based DTD validation performance and memory
problem by switching to a compact form for determinist regexps
and detecting the determinism property in the process. Seems
as fast as the old DTD validation specific engine :-) despite
the regexp built and compaction process.
Daniel
* valid.c: determinism is debugged, new DTD checking code now works
but xmlFAComputesDeterminism takes far too much CPU and the whole
set usues too much memory to be really usable as-is
Daniel
* HTMLparser.c: small cleanup
* valid.c xmlregexp.c: switched DTD validation to use only regexp
when configured with them. A bit of debugging around the determinism
checks is still needed
Daniel
* xmlschemastypes.c: incomplete steps for real/double support
* testAutomata.c include/libxml/xmlautomata.h
include/libxml/xmlregexp.h: avoiding a compilation problem
* valid.c include/libxml/valid.h: starting the work toward using
the regexps for actual DTD validation
Daniel
* hash.c: cosmetic cleanup
* valid.c include/libxml/tree.h include/libxml/valid.h: started
integrating a DTD validation layer based on the regexps
Daniel
* error.c valid.c: working on better error reporting of validity
errors, especially providing an accurate context.
* result/valid/xlink.xml.err result/valid/rss.xml.err: better
error reports in those cases.
Daniel
* parser.c include/libxml/parser.h: adding a new API for Christian
Glahn: xmlParseBalancedChunkMemoryRecover
* valid.c: patch from Rick Jones for some grammar cleanup in
validation messages
* result/VC/* result/valid/*: this slightly change some of the
regression tests outputs
Daniel
* valid.c SAX.c: Never commit without running "make tests" :-(
fix a couple of stupidities in the previous commit
* result/*: a few changes in some attribute order result of previous
commit.
Daniel
* valid.c SAX.c: fixed bug #76168, attribute redeclared in
the internal subset should not raise duplicate ID errors,
also there was a small bug in conjunction to namespace
declarations defaulted and xml:xxx attributes DTD definitions.
Daniel
* Makefile.am: adding "make valgrind" running the full regression
tests (except python ones) under Valgrind (using valgrind -q
which was kindly added by the author).
* valid.c: stupid bug pinpointed by Valgrind, the regression tests
passes cleanly now except an obcure floating point initialization
raised in log10() in one XPath regression test ???
* tree.c: edited some comments to close#75244
Daniel
* configure.in: preparing 2.4.18
* doc/*: updated and rebuilt the web site
* *.c libxml.h: implement the new IN_LIBXML scheme discussed with
the Windows and Cygwin maintainers.
* parser.c: humm, changed the way the SAX parser work when
xmlSubstituteEntitiesDefault(1) is set, it will then
do the entity registration and loading by itself in case the
user provided SAX getEntity() returns NULL.
* testSAX.c: added --noent to test the behaviour.
Daniel
* include/libxml/parserInternals.h parser.c: had to change
2 internal parsing API when processing document content
to check the start and end of element content are defined
in the same entity
* valid.c include/libxml/valid.h: attribute normalization can
generate a validity error added xmlValidCtxtNormalizeAttributeValue()
with the context to report it.
* SAX.c: fixed the last known bugs, crazy validation constraints
when a document is standalone seems correctly handled. There
is a couple of open issues left which need consideration especially
PE93 on external unparsed entities and standalone status.
Ran 1819 tests: 1817 suceeded, 2 failed and 0 generated an error in 8.26 s.
The 2 tests left failing are actually in error. Cleanup done.
Daniel
* parser.c valid.c: a couple of errors were reported but not
saved back as such in the parsing context. Down to 1% failure rate
Ran 1819 tests: 1801 suceeded, 18 failed and 0 generated an error
Daniel
* SAX.c parserInternals.c valid.c: more work on the conformance
suite. Took the step to finally block documents with encoding
errors. It's a fatal error per the spec, people should have fixed
their documents by now.
Daniel
* check-xml-test-suite.py: improved the behaviour a bit as
well as the logs
* parser.c valid.c SAX.c: fixed a few more bugs
"Ran 1819 tests: 1778 suceeded, 41 failed, and 0 generated an error"
Daniel
* include/libxml/entities.h: fixing a comment
* valid.c: fixing some troubles with validity check on namespaces
* result/VC/NS3 test/VC/NS3: added a specific regression test
Daniel
* tree.c valid.c xinclude.c: fix#68882, cleanup the XInclude
copying of node, merge back IDs in the target document.
* result/XInclude/docids.xml test/XInclude/docs/docids.xml
test/XInclude/ents/ids.xml: test case
* result/VC/ElementValid4: output changed due to a typo fix
Daniel
* parserInternals.c valid.c: Justin Fletcher found some parts
of the code needing cleanup
* libxml.spec.in python/Makefile.am python/generator.py
python/libxml.c python/libxml.py: Fixed the python Makefiles
corrected a bug showing up on ia64, changed the name of the
python internal module too
Daniel
* valid.c: fixed validation of attributes content of type
NAME NAMES NMTOKEN and NMTOKENS to accept internationalized
values, very old bug. Fixes#67671
Daniel
* DOCBparser.c parser.c valid.c include/libxml/parserInternals.h
include/libxml/xmlerror.h include/libxml/xpathInternals.h:
Fixed a few other problems raised by Charlie Bozeman.
* result/VC/ElementValid[5-7]: fixed the output
Daniel
* valid.c include/libxml/tree.h: trying to fix namespaces +
validation problems for good, closing #63619 in the process
* result/valid/dia.xml test/valid/dia.xml: the Dia test was
wrong in this respect, fixed it.
Daniel