IF YOU WOULD LIKE TO GET AN ACCOUNT, please write an
email to Administrator. User accounts are meant only to access repo
and report issues and/or generate pull requests.
This is a purpose-specific Git hosting for
BaseALT
projects. Thank you for your understanding!
Только зарегистрированные пользователи имеют доступ к сервису!
Для получения аккаунта, обратитесь к администратору.
* xmlIO.c: small typo pointed out by Mike Hommey
* doc/xmllint.xml, xmllint.html, xmllint.1: slightly improved
the --c14n description, c.f. #144675 .
* nanohttp.c nanoftp.c: applied a first simple patch from
Mike Hommey for $no_proxy, c.f. #133470
* parserInternals.c include/libxml/parserInternals.h
include/libxml/xmlerror.h: cleanup to avoid 'error' identifier
in includes #
* parser.c SAX2.c debugXML.c include/libxml/parser.h:
first version of the inplementation of parsing within
the context of a node in the tree #142359, new function
xmlParseInNodeContext(), added support at the xmllint --shell
level as the "set" function
* test/scripts/set* result/scripts/* Makefile.am: extended
the script based regression tests to instrument the new function.
Daniel
* SAX2.c, encoding.c, error.c, parser.c, tree.c, uri.c, xmlIO.c,
xmlreader.c, include/libxml/tree.h: many further little changes
for OOM problems. Now seems to be getting closer to "ok".
* testOOM.c: added code to intercept more errors, found more
problems with library. Changed method of flagging / counting
errors intercepted.
* SAX2.c, error.c, parser.c, tree.c, xmlreader.c:
implemented patches supplied by Olivier Andrieu
(bug 148588), plus made some further enhancements, to
correct some problems with out of memory conditions.
* testOOM.c: improved with patches from Olivier Andrieu
* parser.c: make the push interfaces synchronous
* python/tests/sync.py: added a specific test
* python/tests/Makefile.am doc/examples/Makefile.am
doc/examples/index.py: added the new test, cleaning up
"make tests" output
Daniel
* elfgcchack.h doc/elfgcchack.xsl libxml.h: hack based on Arjan van de
Ven suggestion to reduce ELF footprint and generated code. Based on
aliasing of libraries function to generate direct call instead of
indirect ones
* doc/libxml2-api.xml doc/Makefile.am doc/apibuild.py: added automatic
generation of elfgcchack.h based on the API description, extended
the API description to show the conditionals configuration flags
required for symbols.
* nanohttp.c parser.c xmlsave.c include/libxml/*.h: lot of cleanup
* doc/*: regenerated the docs.
Daniel
* parser.c xmlreader.c include/libxml/parser.h: fixed a serious
problem when substituing entities using the Reader, the entities
content might be freed and if rereferenced would crash
* Makefile.am test/* result/*: added a new test case and a new
test operation for the reader with substitution of entities.
Daniel
* parser.c: fixed a bug where invalid charrefs may not be detected
sometimes as pointed by Morus Walter.
* test/errors/charref1.xm result/errors/charref1.xml*: added the
test in the regression suite.
Daniel
* xmlwriter.c include/libxml/xmlwriter.h doc/* : applied patch from
Alfred Mickautsch for better DTD support.
* SAX2.c HTMLparser.c parser.c xinclude.c xmllint.c xmlreader.c
xmlschemas.c: fixed bug #137867 i.e. fixed properly the way
reference counting is handled in the XML parser which had the
side effect of removing a lot of hazardous cruft added to try
to fix the problems associated as they popped up.
* xmlIO.c: FILE * close fixup for stderr/stdout
Daniel
* parser.c: fix bug reported by Holger Rauch
* test/att8 result/noent/att8 result/att8 result/att8.rdr
result/att8.sax: added the test to th regression suite
Daniel
* parser.c: fixed a problem in push mode when attribute contains
unescaped '>' characters, fixes bug #134566
* test/att6 result//att6*: added the test to the regression suite
Daniel
* parser.c: fixed bug #132575 about finding the end of the
internal subset in push mode.
* test/intsubset.xml result/intsubset.xml* result/noent/intsubset.xml:
added the test to the regression suite
Daniel
* xinclude.c: remove the warning on the 2001 namespace
* parser.c parserInternals.c xpath.c: remove some warnings
when compiling with MSVC6
* nanohttp.c: applied a patch when using _WINSOCKAPI_
Daniel
* dict.c parser.c xmlstring.c: some parser optimizations,
xmllint --memory --timing --repeat --stream ./db10000.xml
went down from 16.5 secs to 15.5 secs.
Daniel
* encoding.c, parser.c, xmlstring.c, Makefile.am,
include/libxml/Makefile.am, include/libxml/catalog.c,
include/libxml/chvalid.h, include/libxml/encoding.h,
include/libxml/parser.h, include/libxml/relaxng.h,
include/libxml/tree.h, include/libxml/xmlwriter.h,
include/libxml/xmlstring.h:
moved string and UTF8 routines out of parser.c and encoding.c
into a new module xmlstring.c with include file
include/libxml/xmlstring.h mostly using patches from Reid
Spencer. Since xmlChar now defined in xmlstring.h, several
include files needed to have a #include added for safety.
* doc/apibuild.py: added some additional sorting for various
references displayed in the APIxxx.html files. Rebuilt the
docs, and also added new file for xmlstring module.
* configure.in: small addition to help my testing; no effect on
normal usage.
* doc/search.php: added $_GET[query] so that persistent globals
can be disabled (for recent versions of PHP)
* parser.c, include/libxml/parser.h: added a routine
xmlStrncatNew to create a new string from 2 frags.
* tree.c: added code to check if node content is from
dictionary before trying to change or concatenate.
* parser.c, xmlmemory.c, include/libxml/xmlmemory.h: Fixed
memory leak reported by Dave Beckett
* xmlschemas.c: Removed spurious comment reported on the mailing
list
* xinclude.c, xpath.c, xpointer.c, libxml/include/xpointer.h:
Further work on Bug 129967 concerning xpointer range handling
and range-to function; much better, but still not complete
* parser.c xmlreader.c: change xmlReadFd() xmlCtxtReadFd()
xmlReaderNewFd() xmlReaderForFd(), change those to not close
the file descriptor. Updated the comment, should close#129683
Daniel
* python/libxml.py: tried to fix the problems reported in
bug #126735
* xpath.c SAX2.c error.c parser.c valid.c include/libxml/xmlerror.h:
fixed again some problem trying to use the structured error
handlers, c.f. bug #126735
* result/VC/ElementValid: tiny change due to the fix
Daniel
* parser.c: swapped the attribute defaulting and attribute checking
parts of parsing a new element start, fixes bug #127772
* result/valid/127772.* test/valid/127772.xml
test/valid/dtds/127772.dtd: added the example in the regression tests
Daniel
* check-xinclude-test-suite.py: less verbose on difference
* libxml.spec.in: cleanup
* parser.c: fixed xmlCleanupParser() doc
* doc/Makefile.am doc/apibuild.py doc/libxml2-api.xml
doc/examples/Makefile.am doc/examples/example1.c
doc/examples/examples.xml doc/examples/index.py
doc/examples/test1.xml: work on adding C examples and
generating automated information about those. examples.xml
is autogenerated describing the examples.
* example/Makefile.am: cleanup
Daniel
* parser.c xmlIO.c include/libxml/parserInternals.h: implemented
the XML_PARSE_NONET parser option.
* xmllint.c: converted xmllint.c to use the option instead of
relying on the global resolver variable.
Daniel
* python/libxml.c: previous fix for #124044 was broken, correct
fix provided.
* HTMLparser.c parser.c parserInternals.c xmlIO.c: fix xmlStopParser()
and the error handlers to address #125877
Daniel
* parser.c include/libxml/parser.h: included a new function
to reuse a Push parser context, based on Graham Bennett original
code
* valid.c: in HTML, a name in an input is not an ID
* TODO: bug list update
Daniel
* libxml.m4: applied patch from Patrick Welche provided in
bug #125432 , future proofing the .m4 file.
* parser.c: resetting the context should also reset the error
* TODO: problem of conformance w.r.t. E20 was raised in the
XML Core telconf and libxml2 isn't conformant there.
Daniel
* Makefile.am configure.in xmldwalk.c xmlreader.c
include/libxml/Makefile.am include/libxml/xmldwalk.h
include/libxml/xmlversion.h.in: removing xmldwalk module
since it got merged with the xmlreader.
* parser.c: cleanup
* win32/libxml2.def.src python/libxml2class.txt doc/libxml2-api.xml:
rebuilt the API
* python/tests/Makefile.am python/tests/reader7.py
python/tests/walker.py: adding regression testing for the
new xmlreader APIs, new APIs for reader creation, including
makeing reader "walker" operating on preparsed document trees.
Daniel
* include/libxml/parserInternals.h HTMLparser.c HTMLtree.c
SAX2.c catalog.c debugXML.c entities.c parser.c relaxng.c
testSAX.c tree.c valid.c xmlschemas.c xmlschemastypes.c
xpath.c: Changed all (?) occurences where validation macros
(IS_xxx) had single-byte arguments to use IS_xxx_CH instead
(e.g. IS_BLANK changed to IS_BLANK_CH). This gets rid of
many warning messages on certain platforms, and also high-
lights places in the library which may need to be enhanced
for proper UTF8 handling.
* genChRanges.py, chvalid.c, include/libxml/chvalid.h,
include/libxml/parserInternals.h: enhanced macros to avoid
breaking ABI from previous versions.
* catalog.c, parser.c, tree.c: modified to use IS_* macros
defined in parserInternals.h. Makes maintenance much easier.
* testHTML.c, testSAX.c, python/libxml.c: minor fixes to avoid
compilation warnings
* configuration.in: fixed pushHTML test error; enhanced for
better devel (me) testing
* legacy.c: remove the warning for startDocument(), as it is used by
glade (or glade-python)
* parser.c relaxng.c xmlschemastypes.c: fixed an assorted set of
invalid accesses found by running some Python based regression
tests under valgrind. There is still a few leaks reported by the
relaxng regressions which need some attention.
* doc/Makefile.am: fixed a make install problem c.f. #124539
* include/libxml/parserInternals.h: addition of xmlParserMaxDepth
patch from crutcher
Daniel
* configure.in: patch from Mike Hommey
* threads.c: applied Windows patch from Jesse Pelton and Stephane
Bidoul
* parser.c: fix the potentially nasty access to ctxt->serror
without checking first that the SAX block is version 2
Daniel
* SAX2.c: fixed a nasty bug with interning some text strings
* configure.in: prepare for beta5 of 2.6.0
* libxml.h nanoftp.c nanohttp.c xmlIO.c include/libxml/xmlerror.h:
better error handling for I/O and converted FTP and HTTP
* parser.c: fixed another bug
Daniel
* HTMLparser.c c14n.c catalog.c error.c globals.c parser.c
parserInternals.c relaxng.c valid.c xinclude.c xmlIO.c xmlregexp.c
xmlschemas.c xpath.c xpointer.c include/libxml/globals.h
include/libxml/parser.h include/libxml/valid.h
include/libxml/xmlerror.h: Setting up the framework for structured
error reporting, touches a lot of modules, but little code now
the error handling trail has been cleaned up.
Daniel
* error.c include/libxml/xmlerror.h include/libxml/xpath.h
include/libxml/xpathInternals.h xpath.c: cleaning up XPath
error reporting that time.
* threads.c: applied the two patches for TLS threads
on Windows from Jesse Pelton
* parser.c: tiny safety patch for xmlStrPrintf() make sure the
return is always zero terminated. Should also help detecting
passing wrong buffer size easilly.
* result/VC/* result/valid/rss.xml.err result/valid/xlink.xml.err:
updated the results to follow the errors string generated by
last commit.
Daniel
* check-xml-test-suite.py: fixing the script
* parser.c: replace sequences of RAW && NXT(.) == '.' with
memcmp calls, seems to not break conformance, slightly inflate
the size of the gcc generated code though.
Daniel
* parserInternals.c parser.c valid.c include/libxml/parserInternals.h:
more cleanup of error handling in parserInternals, sharing the
routine for memory errors.
Daniel
* HTMLparser.c Makefile.am legacy.c parser.c parserInternals.c
include/libxml/xmlerror.h: more code cleanup, especially around
error messages, the HTML parser has now been upgraded to the new
handling.
* result/HTML/*: a few changes in the resulting error messages
Daniel
* Makefile.am: more cleanup in make tests
* error.c valid.c parser.c include/libxml/xmlerror.h: more work
in the transition to the new error reporting strategy.
* python/tests/reader2.py result/VC/* result/valid/*:
few changes in the strings generated by the validation output
Daniel
* Makefile.am: changed 'make tests' to use a concise output,
scrolling to see where thing broke wasn't pleasant
* configure.in: some beta4 preparation, but not ready yet
* error.c globals.c include/libxml/globals.h include/libxml/xmlerror.h:
new error handling code, last error informations are stored
in the parsing context or a global variable, new APIs to
handle the xmlErrorPtr type.
* parser.c parserInternals.c valid.c : started migrating to the
new error handling code, it's a royal pain.
* include/libxml/parser.h include/libxml/parserInternals.h:
moved the definition of xmlNewParserCtxt()
* parser.c: small potential buffer access problem in push code
provided by Justin Fletcher
* result/*.sax result/VC/PENesting* result/namespaces/*
result/valid/*.err: some error messages were sligthly changed.
Daniel
* entities.c legacy.c parser.c: made the predefined entities
static predefined structures to avoid the work, memory and
hazards associated to initialization/cleanup.
Daniel
* HTMLparser.c Makefile.am configure.in legacy.c parser.c
parserInternals.c testHTML.c xmllint.c include/libxml/HTMLparser.h
include/libxml/parser.h include/libxml/parserInternals.h
include/libxml/xmlversion.h.in: added a new configure
option --with-push, some cleanups, chased code size anomalies.
Now a library configured --with-minimum is around 150KB,
sounds good enough.
Daniel
* Makefile.am: cleanup, creating a new legacy.c module,
made sure make tests ran in reduced conditions
* SAX.c SAX2.c configure.in entities.c globals.c parser.c
parserInternals.c tree.c valid.c xlink.c xmlIO.c xmlcatalog.c
xmlmemory.c xpath.c xmlmemory.c include/libxml/xmlversion.h.in:
increased the modularization, allow to configure out
validation code and legacy code, added a configuration
option --with-minimum compiling only the mandatory code
which then shrink to 200KB.
Daniel
* parser.c: fix a bug raised by the Mips compiler.
* include/libxml/SAX.h include/libxml/parser.h: move the
SAXv1 block definitions to parser.h fixes bug #123380
* xmlreader.c include/libxml/xmlreader.h: reinstanciate
the attribute and element pool borken 2 commits ago.
Start playing with an entry point to preserve a subtree.
* entities.c: remove a warning.
Daniel
* parser.c: William's change allowed to spot a nasty bug in xmlDoRead
if the result is well formed that ctxt->myDoc is not NULL and uses
the context dictionnary.
Daniel
* doc/libxml2-api.xml: rebuilt the API
* xmllint.c doc/xmllint.1 doc/xmllint.xml: added the new options
--nocdata and --nsclean to remove CDATA section and surperfluous
namespace declarations
* parser.c SAX2.c: implementation of the 2 new options
Daniel
* parser.c xmllint.c doc/libxml2-api.xml include/libxml/parser.h:
Changed the new xmlRead/xmlCtxtRead APIs to have an extra
base URL parameter when not loading from a file or URL.
Daniel
* configure.in: preparing a beta3 solving the ABI problems
* globals.c parser.c parserInternals.c testHTML.c HTMLparser.c SAX.c
include/libxml/globals.h include/libxml/SAX.h: make sure the
global variables for the default SAX handler are V1 ones to
avoid ABI compat problems.
* xmlreader.c: cleanup of uneeded code
* hash.c: fix a comment
Daniel
* SAX2.c hash.c parser.c include/libxml/xmlexports.h
include/libxml/xmlmemory.h include/libxml/xmlversion.h.in:
fixing some comments to avoid warnings from apibuild.py
Daniel
* 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
* parser.c: make sure xmlDetectSAX2() is called only at
parsing time to avoid breaking apps changing the SAX
callbacks after context allocation, change xmlCreateDocParserCtxt()
to use an immutable buffer instead of a copy
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
* SAX2.c parser.c parserInternals.c xmlreader.c: started messing
seriously with per-document dict and element and attribute nodes
reuse in the xmlReader. This seems to lead to an interesting
speedup of the xmlReader already.
Daniel
* SAX2.c parser.c valid.c: starting to cleanup some of the
problems exposed by the W3C/NIST regression suite.
* result/ent7.sax result/xml2.sax: small fixes.
Daniel
* parser.c include/libxml/xmlerror.h: factoring of more
error handling code, serious size reduction and more lisibility
of the resulting code.
* parserInternals.c parser.c include/libxml/parserInternals.h
include/libxml/parser.h: changing the way VC:Proper Group/PE Nesting
checks are done, use a counter for entities. Entities where freed and
reallocated at the same address failing the check.
* tree.c: avoid a warning
* result/valid/* result/VC/*: this slightly changes some validation
error messages.
Daniel
* parser.c include/libxml/xmlerror.h: starting cleaning up
error handling, factorize error processing
* doc/xmllint.html: update of the page, remove --sgml
Daniel
* parser.c parserInternals.c tree.c include/libxml/parser.h
include/libxml/xmlerror.h: adding namespace checkings
while making sure they still parse as wellformed documents.
Add an nsWellFormed status report to the context, and
provide new appropriate error codes.
* Makefile.am result/namespaces/* test/namespaces/*: add
specific regression testing for the new namespace support
* test/att5 result/noent/att5 result/att5 result/att5.sax:
add more coverage for the attribute parsing and normalization
code.
Daniel
* configure.in doc/* : 2.6.0beta1 changes
* SAX2.c hash.c parser.c parserInternals.c: Fixing attribute
normalization, might not be totally fixed but this should
make sure SAX event provide the right strings for attributes
except entities for which libxml2 is different by default
This should fix#109564
* result/attrib.xml.sax result/ent3.sax result/p3p.sax: minor changes
in attribute callback values
* result/c14n/with-comments/example-4
result/c14n/without-comments/example-4: this also fixes a subtle
bug in the canonicalization tests.
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
* dict.c: allow to give -1 for undefined length in lookups
* include/libxml/parser.h parser.c parserInternals.c testSAX.c:
first round of work on the new SAX2 interfaces, the API
will change but commiting before changing for historical
reference.
Daniel
* HTMLparser.c: when creating a DOCTYPE use "html" lowercase
by default instead of "HTML"
* parser.c xmlreader.c: optimization, gain a few % parsing speed by
avoiding calls to "areBlanks" when not needed.
* include/libxml/parser.h include/libxml/tree.h: some structure
extensions for future work on using per-document dictionaries.
Daniel
* Makefile.am SAX2.c include/libxml/Makefile.am include/libxml/SAX2.h:
Adding new version of the SAX interface, it's not there yet,
currently just preparing the work
* globals.c parser.c SAX.c include/libxml/SAX.h
include/libxml/globals.h include/libxml/parser.h: doing some
refactoring of the SAXv1 interfaces, obsoleting a bunch of them
while keeping functionalities, preparing SAX2 integration.
* dict.c: small cleanup.
Daniel
* dict.c hash.c: optimization when freeing hash tables.
* parser.c xmlIO.c include/libxml/tree.h: some tuning of buffer
allocations
* parser.c parserInternals.c include/libxml/parser.h: keep a
single allocated block for all the attributes callbacks,
avoid useless malloc()/free()
* tree.c: do not realloc() when growing a buffer if the buffer
ain't full, malloc/memcpy/free avoid copying memory.
Daniel
* dict.c include/libxml/dict.h Makefile.am include/libxml/Makefile.am:
new dictionary module to keep a single instance of the names used
by the parser
* DOCBparser.c HTMLparser.c parser.c parserInternals.c valid.c:
switched all parsers to use the dictionary internally
* include/libxml/HTMLparser.h include/libxml/parser.h
include/libxml/parserInternals.h include/libxml/valid.h:
Some of the interfaces changed as a result to receive or return
"const xmlChar *" instead of "xmlChar *", this is either
insignificant from an user point of view or when the returning
value changed, those function are really parser internal methods
that no user code should really change
* doc/libxml2-api.xml doc/html/*: the API interface changed and
the docs were regenerated
Daniel
* encoding.c: applied UTF-16 encoding handling patch provided by
Mark Itzcovitz
* encoding.c parser.c: more cleanup and fixes for UTF-16 when
not having iconv support.
Daniel
* parser.c: fixed the serious CPU usage problem reported by
Grant Goodale
* HTMLparser.c: applied patch from Oliver Kidman about a free
missing in htmlSAXParseDoc
Daniel
* tree.c include/libxml/tree.h: added a new API to split a
QName without generating any memory allocation
* valid.c: fixed another problem with namespaces on element
in mixed content case
* python/tests/reader2.py: updated the testcase with
Bjorn Reese fix to reader for unsignificant white space
* parser.c HTMLparser.c: cleanup.
Daniel
* DOCBparser.c HTMLparser.c entities.c parser.c relaxng.c
xmlschemas.c xpath.c: removed some warnings by casting xmlChar
to unsigned int and a couple of others.
* xmlschemastypes.c: fixes a segfault on empty hexBinary strings
Daniel
* parser.c HTMLparser.c: use the character() SAX callback
if the cdataBlock ain't defined.
* xpath.c: fix bug #115349 allowing compilation when configured
with --without-xpath since the Schemas code needs NAN and co.
Daniel
* build_glob.py global.data globals.c parser.c
include/libxml/globals.h: patch from Stphane Bidoul for setting
up threads global defaults.
* doc/libxml2-api.xml: this extends the API with new functions
* python/tests/Makefile.am python/tests/reader2.py
python/tests/thread2.py: integrated the associated testcase and
fixed the error string used in reader2
Daniel
* Makefile.am testOOM.c testOOMlib.[ch] : integrated the Out Of
Memory test from Havoc Pennington #109368
* SAX.c parser.c parserInternals.c tree.c uri.c valid.c
xmlmemory.c xmlreader.c xmlregexp.c include/libxml/tree.h
include/libxml/parser.h: a lot of memory allocation cleanups
based on the results of the OOM testing
* check-relaxng-test-suite2.py: seems I forgot to commit the
script.
Daniel
* DOCBparser.c SAX.c catalog.c debugXML.c parser.c: try to find
more places where xmlCanonicPath() must be used to convert
filenames to URLs, trying to fix#111088
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
* DOCBparser.c HTMLparser.c c14n.c catalog.c encoding.c globals.c
nanohttp.c parser.c parserInternals.c relaxng.c tree.c uri.c
xmlmemory.c xmlreader.c xmlregexp.c xpath.c xpointer.c
include/libxml/globals.h include/libxml/xmlmemory.h: added
xmlMallocAtomic() to be used when allocating blocks which
do not contains pointers, add xmlGcMemSetup() and xmlGcMemGet()
to allow registering the full set of functions needed by
a garbage collecting allocator like libgc, ref #109944
Daniel
* libxml.h include/libxml/parser.h parser.c xmlIO.c DOCBparser.c:
added support for large file, tested with a 3+GB instance,
and some cleanup.
* catalog.c: added a TODO
* Makefile.am: added some "make tests" comments
Daniel
* parser.c: fixing #109227 providing more context in case of
start/end tag mismatch
* python/tests/ctxterror.py python/tests/readererr.py: update the
tests accordingly
Daniel
* parser.c: fixing bug #108976 get the ID/REFs to reference
the ID in the document content and not in the entity copy
* SAX.c include/libxml/parser.h: more checking of the ID/REF
stuff, better solution for #107208
* xmlregexp.c: removed a direct printf, dohhh
* xmlreader.c: fixed a bug on streaming validation of empty
elements in entities
* result/VC/ElementValid8 test/VCM/v20.xml result/valid/xhtml1.xhtml:
cleanup of the validation tests
* test/valid/id* test/valid/dtds/destfoo.ent result/valid/id*:
added more ID/IDREF tests to the suite
Daniel
* HTMLparser.c parser.c parserInternals.c: patch from
johan@evenhuis.nl for #107937 fixing some line counting
problems, and some other cleanups.
* result/HTML/: this result in some line number changes
Daniel
* SAX.c parser.c: fix some recursion problems introduced in the
last release.
* relaxng.c: more debugging of the RNG validation engine, still
problems though.
Daniel
* uri.c parser.c: some warning removal on Igor's patch
* tree.c: seems I messed up with #106788 fix
* python/libxml.c: fixed some base problems when Python provides
the resolver.
* relaxng.c: fixed the interleave algorithm
found 373 test schemas: 364 success 9 failures
found 529 test instances: 525 success 4 failures
the resulting failures are bug in the algorithm from 7.3 and
lack of support for params
Daniel
* parser.c: another fix for nodeinfo in entities problem
* tree.c entities.c: fixed bug #106788 from James Clark
some spaces need to be serialized as character references.
Daniel
* parser.c: fixing some nodeinfo in entities problem raised
by Glenn W. Bach
* relaxng.c: implemented the first section 7.3 check
* result/relaxng/*: updated the results
Daniel
* python/libxml.c: removed an unprotedted debug message Aleksi Suhonen
* parser.c: put a guard against infinite document depth, basically
trying to avoid another kind of DoS attack.
* relaxng.c: some code w.r.t. nameClasses
Daniel
* parser.c: one more IsEmptyElement crazyness, that time in
external parsed entities if substitution is asked.
* python/tests/reader3.py: added a specific test.
Daniel
* entities.c parser.c tree.c include/libxml/entities.h: Fixed
a really nasty problem raised by a DocBook XSLT transform
provided by Sebastian Bergmann
Daniel
* parser.c: Vyacheslav Pindyura managed to trigger a bug in
parseStartTag, fixing it.
* test/att4 result/att4 result/noent/att4: adding the test
* xmlreader.c include/libxml/xmlreader.h doc/libxml2-api.xml: added
more methods to XmlTextReader.
Daniel
* xmlreader.c doc/libxml2-api.xml: added the close and getattribute
methods of XmlTextReader.
* python/generator.py python/libxml_wrap.h python/types.c
python/libxml2class.txt: added the reader to the Python bindings
* python/tests/Makefile.am python/tests/reader.py: added a specific
test for the Python bindings of the Reader APIs
* parser.c: small 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 xmlreader.c include/libxml/Makefile.am
include/libxml/xmlreader.h: Adding a new set of APIs based on
the C# TextXmlReader API but converted to C. Allow to parse
in constant memory usage, far simpler to program and explain
than the SAX like APIs, unfinished but working.
* testReader.c: test program
Daniel
* configure.in: preparing release 2.4.27
* doc/* : updated and rebuilt the docs
* doc/Makefile.am libxml.spec.in: try to make sure the tutorial
and all the docs are actually packaged and in the final RPMs
* parser.c parserInternals.c include/libxml/parser.h: restore
xmllint --recover feature.
Daniel
* parser.c xpath.c: fixing #96925 wich was also dependant on the
processing of parsed entities, and XPath computation on sustitued
entities.
* testXPath.c: make sure entities are substitued.
Daniel
* parserInternals.c: fixed the initialization of the SAX structure
which was breaking xsltproc
* xpath.c: patch from Petr Pajas for CDATA nodes
* tree.c: patch from Petr Pajas improving xmlGetNodePath()
* parser.c include/libxml/parser.h: patch from Peter Jones
removing a leak in xmlSAXParseMemory() and adding the
function xmlSAXParseMemoryWithData()
Daniel
* parser.c: Christian Glahn found a problem with a recent
patch to xmlParseBalancedChunkMemoryRecover()
* xmlschemas.c: Charles Bozeman fixed some Schemas validation
problems
* result/schemas/elem* result/schemas/seq* test/schemas.elem*
test/schemas/seq*: added the test cases from Charles
Daniel
* parser.c: tried to fix bug #91500 where doc->children may
be overriden by a call to xmlParseBalancedChunkMemory()
* catalog.c: tried to fix bug #90945 w.r.t. parsing of system
identifiers in SGML catalogs containing '&'
Daniel
* include/libxml/xmlIO.h xmlIO.c parser.c HTMLparser.c DOCBparser.c:
messing around with support for Windows path, cleanups,
trying to identify and fix the various code path to the
filename access. Added xmlNormalizeWindowsPath()
Daniel
* DOCBparser.c HTMLparser.c c14n.c entities.c list.c
parser.c parserInternals.c xmlIO.c: get rid of all the
perror() calls made in the library execution paths. This
should fix both #92059 and #92385
Daniel
* xpath.c: possible mem leak patch from Jason Adams
* xpath.c: integrated xf:escape-uri() from Wesley Terpstra
in the XQuery namespace
* configure.in: preparing 2.4.24
* doc/*.html: updated the web pages
* python/generator.py: closing bug #85258 by generating conditional
compile check to avoid linking to routines not configured in.
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
* xpath.c: applied patch from Richard Jinks for the namespace
axis + fixed a memory error.
* parser.c parserInternals.c: applied patches from Peter Jacobi
removing ctxt->token for good.
* xmlschemas.c xmlschemastypes.c: fixed a few memory leaks
popped out by the regression tests.
* Makefile.am: patch for threads makefile from Gary Pennington
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)
* parser.c: applied a couple of patches from Peter Jacobi to start
to get rid of ctxt->token, with a possible significant speed
improvement to be gained once done. Better compliance with PE
references constructs in DTDs too.
* test/valid/t[0-9]* result/valid/t[0-9]*: added a set of tests
from Peter too
Daniel
* parser.c: Babak Vahedipour-Kunze reported that openTag in
xmlParseElement was likely to have been deallocated at the
time of the report, possibly leading to segfault. Just report
the tag name now.
Daniel
* TODO: updated a bit
* parser.c: made a comment more specific
* xmlregexp.c xmlschemas.c xmlschemastypes.c: more work on the
Schemas conformance.
* test/schemas result/schemas: updated the test list
Daniel
* HTMLparser.c error.c parser.c parserInternals.c tree.c xmlIO.c
include/libxml/tree.h: dohh I really didn't intended to commit
this test version :-(
Daniel
* testSAX.c: I wanted to see the real speed at the SAX interface
after a little too many Ximianer started complaining about the
parser speed.
added a --quiet option:
paphio:~/XML -> ls -l db100000.xml
-rw-rw-r-- 1 veillard www 20182040 Mar 20 10:30 db100000.xml
paphio:~/XML -> time ./testSAX --quiet db100000.xml
3200006 callbacks generated
real 0m1.270s
Which means 16MBytes/s and 3Mcallback/s
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
* 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
* parser.c: Wilfried Teiken provided a hackish but working
way to get context reported back on entities when parsing
with SAX and without breaking the DOM build.
Daniel
* parser.c: make sure SAX endDocument is always called as
this could result in a Python memory leak otherwise (it's
used to decrement ref-counting)
* python/generator.py python/libxml.c python/libxml.py
python/libxml2-python-api.xml python/libxml2class.txt
python/tests/error.py python/tests/xpath.py: implemented
the suggestions made by Gary Benson and extended the tests
to match it.
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
* xmlInternald.c: isExtender was missing a char
* parser.c include/libxml/parser.h: % are acceptable in the
internal subset if within a PUBLIC ID
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
* check-xml-test-suite.py: python script to run regression tests
against the XML Test suite of W3C/OASis
* SAX.c: fixed a validation bug
* parser.c: fixed 3 errors pointed by the test suite
* doc/buildDocBookCatalog: fixed a typo pointed by drake
* python/Makefile.am: fixed a dependendy
Daniel
* doc/libxml2-api.xml doc/parsedecl.py: Build a new version
hopefully near complete and fully documented of the API in XML
* HTMLtree.c SAX.c debugXML.c error.c globals.c parser.c tree.c
xmlIO.c xmlmemory.c include/libxml/catalog.h include/libxml/hash.h
include/libxml/list.h include/libxml/parser.h include/libxml/tree.h
include/libxml/parserInternals.h include/libxml/valid.hi
include/libxml/xmlIO.h include/libxml/xmlerror.hi
include/libxml/xmlmemory.h include/libxml/xmlversion.h.ini
include/libxml/xpath.h include/libxml/xpathInternals.h:
Cleaned up the doc comments a lot in the process, the interface
coverage is now 100%
Daniel
* parser.c include/libxml/parserInternals.h tree.c: integrated
a couple of fixes and a new API function xmlSetEntityReferenceFunc()
from Keith Isdale and dedicated to xsldbg the XSLT debugger.
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
* 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
* configure.in libxml.h parser.c testThreads.c macos/: integrated
Eric Lavigne (sp???) contribution to build libxml2 on MacOS using
CodeWarrior.
Daniel
Thu Nov 1 15:29:31 CET 2001 Daniel Veillard <daniel@veillard.com>
* HTMLtree.c tree.c include/libxml/HTMLtree.h
include/libxml/tree.h include/libxml/xmlIO.h: more include
cleanups, export cleanly one html output + format function.
Thu Nov 1 14:12:12 CET 2001 Daniel Veillard <daniel@veillard.com>
* parser.c: removed initGenericErrorDefaultFunc call from
xmlInitParser() since it could destroy previous calls to
xsltSetGenericErrorFunc() effects
Daniel
* parser.c globals.c DOCBparser.c HTMLparser.c error.c:
apply fixes to close#63271 and avoid segfaults when
the error routine gets callbed before xmlInitParser()
get called.
* nanoftp.c error.c: Applied patches from Justin Fletcher
correcting some xmlGenericError misuses.
Daniel
* parser.c: fixed an erroneous validation bug when PE refs
occurs in external parsed entities referenced from the
internals subset
* test/valid/index.xml test/valid/dtds/nitf-2-5.dtd
test/valid/dtds/NewsMLv1.0.dtd result/valid/index.xml*:
added the associated testcase, it's a nice one.
* HTMLparser.c: generate the DTD node as HTML still ...
* HTMLtree.c: fixed errors in Set/GetMetaEncoding
Daniel
* include/libxml/SAX.h include/libxml/globals.h include/libxml/parser.h
include/libxml/parserInternals.h include/libxml/tree.h
include/libxml/xmlerror.h HTMLparser.c SAX.c error.c globals.c
nanoftp.c nanohttp.c parser.c parserInternals.c testDocbook.c
testHTML.c testSAX.c tree.c uri.c xlink.c xmlmemory.c:
Applied the last patches from Gary, cleanup, activated threading
all user accessible global variables are now handled in globals.[ch]
Still a bit rought but make tests passes with either
--with-threads defined at configure time or not.
* Makefile.am example/Makefile.am: added globals.[ch] and threads
linking options
Daniel
* HTMLtree.c catalog.c debugXML.c entities.c nanoftp.c
parser.c valid.c xmlmemory.c xpath.c xpointer.c: started
integrating the non-controversial parts of Gary Pennington
multithread patches
* catalog.c: corrected a small bug introduced
Daniel
* xmllint.c: John Fleck fixed typos in the options output
* parser.c SAX.c: fix ignorable white space SAX selection
* entities.c: Steve Underwood found the possibility of an
ininite loop in case of error.
Daniel
* Makefile.am configure.in include/libxml/xmlwin32version.h:
preparing for a 2.4.3 release even if it may not be ready yet
* catalog.c parser.c xmlIO.c include/libxml/catalog.h: redirected
all file parsing lookup to go through the entity resolver, add
to add an API to bypass it (needed to load catalogs themselves),
some cleanup on the catalog code too.
* nanoftp.c: small cleanup
* doc/catalog.html: small update
Daniel
* include/libxml/catalog.h include/libxml/parser.h
include/libxml/xmlerror.h catalog.c parser.c parserInternals.c
xmlIO.c: added support and APIs needed for the catalog PI
* include/libxml/xmlIO.h: cleanup
Daniel
* catalog.c parser.c xmlIO.c xmlcatalog.c xmllint.c
include/libxml/catalog.h: starts to look okay, really
plugged the new framework, cleaned a lot of stuff,
added some APIs, except the PI's support missing this
should be mostly complete
* result/catalogs/* test/catalogs/*: added new test, enriched
the existing one with URN ID tests
Daniel
* Makefile.am catalog.c xmlcatalog.c include/libxml/catalog.h:
more work on the XML catalog support.
* parser.c include/libxml/parser.h: small cleanup seems using
list as a public parameter name can give portability troubles
* trionan.c trionan.h xpath.c include/libxml/trionan.h
include/libxml/xpath.h include/libxml/Makefile.am: removed
trionan from the libxml API, added xmlXPathIsInf and xmlXPathIsNaN
wrappers
Daniel
* SAX.c: small fix fixing bug #58539 reported by coolo, in
entity substitution mode text at the end of the entity might
be added due to text coalescing.
* nanoftp.c parser.c: small cleanup
Daniel
* parser.c parserInternals.c: fixed the xmlLineNumbersDefault()
errors, lesson don't add new functions at 1am before a release
* xpath.c: integrated fix from Bjorn to avoid divide by zero
from XPath initialization when possible.
Daniel
* result/scripts/base*: removing history/readline changed
this slightly
* include/libxml/parser.h SAX.c parser.c parserInternals.c
xmllint.c: make element content line number generation
optionnal to avoid breaking old apps added interface to switch
Daniel
Cleanup, cleanup ..
* configure.in Makefile.am: removed libxml softlink for good
* include/libxml/*.h *.c doc/Makefile.am: cleanup to get
100% coverage by gtk-doc
Daniel
* DOCBparser.c HTMLparser.c HTMLtree.c SAX.c debugXML.c parser.c
tree.c xpointer.c: store the line numbder in element->content,
may break some software, need a configuration mechanism
Daniel
* SAX.c parser.c testXPath.c xpath.c: trying to fix#56948, this
led to an XPath fix, improvements of SAX initialization, and
an added option --nocdata to testXPath
Daniel
are handled when running the parser in entity substitution mode.
This fixes a bug reported by Stephan Kulow and nearly divides
by 3 the amount of memory required by libxslt to load and process
DocBook TDG.
Daniel
* include/libxml/parser.h parser.c: xmlStrstr args are both const
* xpath.c: small cleanup
* xmlGetNsList: reformated, fixed problems if used on Entities
Daniel
* AUTHORS: added William and Bjorn
* include/libxml/*.h *.c README doc/*.html etc.: changed old email to
daniel@veillard.com hopefully I won't have to do this again
* doc/Makefile.am doc/html/*.html: cleanup makefile, checked that
docs can be rebuilt cleanly now
* include/libxml/xml*version.h*: removed include/libxml/xmlversion.h
from CVs it's generated, added include/libxml/xmlwin32version.h
also generated but which should change far less frequently.
* catalog.c nanoftp.c: made sure to include libxml.h not
libxml/xmlversion.h directly
* include/libxml/*.h: include xmlwin32version.h instead of xmlversion.h
when compiling on WIN32 and MSC
Daniel
outputs a BOM in UTF8, an errata has been issued to avoid the
problem, that was the most reasonable solution... Add support
for a leading UTF8 BOM in entities.
Daniel
provided another failing case found in KDE, the way the
ctxt->vctxt.nodeTab was allocated and freed changed over
time but it wasn't completely cleaned up. This should fix it.
Daniel
integrating catalogs
- catalog.[ch] testCatalog.c: adding a small catalo API
(only SGML catalog support).
- parser.c: restaured xmlKeepBlanksDefault(0) API
Daniel
for the validation step but I have a clean way to add this without touching
the algorithm:
- valid.[ch] tree.h: worked *hard* to get non-determinist content
validation without using an ugly NFA -> DFA algo in the source.
Made a specific algorithm easier to maintain, using a single
stack and without recursion.
- Makefile.am test/VCM/*.xml: added more tests to "make Validtests"
- hash.c: made the growing routine static
- tree.h parser.c: added the parent information to an
xmlElementContent node.
Daniel