Commit Graph

216 Commits

Author SHA1 Message Date
Daniel Veillard
6984e6d3cc another patch from Kenneth Haley for Mingw, c.f. #128787 Daniel
* configure.in Makefile.am: another patch from Kenneth Haley
  for Mingw, c.f. #128787
Daniel
2003-12-09 14:20:17 +00:00
Daniel Veillard
e74d2e1cb8 augmented the XInclude API to be able to pass XML parser flags down to the
* xinclude.c xmllint.c xmlreader.c include/libxml/xinclude.h
  include/libxml/xmlerror.h: augmented the XInclude API
  to be able to pass XML parser flags down to the Inclusion
  process. Also resynchronized with the Last Call W3C Working
  Draft 10 November 2003 for the xpointer attribute.
* Makefile.am test/XInclude/docs/nodes[23].xml
  result/XInclude/*: augmented the tests for the new namespace and
  testing the xpointer attribute, changed the way error messages
  are tested
* doc/*: regenerated the documentation
Daniel
2003-12-09 11:35:37 +00:00
Daniel Veillard
b3de70c282 adding the pattern node selection code. Inheried in part from libxslt but
* pattern.c include/libxml/pattern.h: adding the pattern node
  selection code. Inheried in part from libxslt but smaller.
* Makefile.am configure.in include/libxml/xmlversion.h.in:
  integrated the pattern module, made it a configure time option
* xmllint.c: added --pattern to test when doing --stream
Daniel
2003-12-02 22:32:15 +00:00
Daniel Veillard
1a79241a3c do not package cvs versioning temp files. more cleanup, slightly improved
* Makefile.am: do not package cvs versioning temp files.
* doc/apibuild.py doc/libxml2-api.xml doc/newapi.xsl: more cleanup,
  slightly improved the API xml format, fixed a lot of small
  rendering problems
* doc/html/libxml*.html: rebuilt
Daniel
2003-11-18 23:52:38 +00:00
Daniel Veillard
fe9fc792ed apply fix from Karl Eichwalder for script path Daniel
* Makefile.am: apply fix from Karl Eichwalder for script path
Daniel
2003-11-05 22:47:51 +00:00
Daniel Veillard
7899c5c5d6 adding XInclude support to the reader interface. Lot of testing of the
* xinclude.c xmlreader.c include/libxml/xinclude.h: adding XInclude
  support to the reader interface. Lot of testing of the walker,
  various bug fixes.
* xmllint.c: added --walker and made sure --xinclude --stream --debug
  works as expected
* Makefile.am result/dtd11.rdr result/ent6.rdr test/dtd11 test/ent6
  result/XInclude/*.rdr: added regression tests for the walker and
  XInclude xmlReader support, had to slightly change a couple of tests
  because the walker can't distinguish <foo/> from <foo></foo>
Daniel
2003-11-03 12:31:38 +00:00
Daniel Veillard
72b9e29edf cleanup fixing bug #125653 sometimes the error handlers can get a parser
* Makefile.am: cleanup
* error.c valid.c include/libxml/xmlerror.h: fixing bug #125653
  sometimes the error handlers can get a parser context on DTD
  errors, and sometime they don't. So be very careful when trying
  to grab those informations.
Daniel
2003-10-28 15:44:17 +00:00
Daniel Veillard
1d211e2273 added the xmlWriter module contributed by Alfred Mickautsch added room for
* configure.in xmlwriter.c Makefile.am include/libxml/xmlwriter.h
  include/libxml/Makefile.am include/libxml/xmlversion.h.in:
  added the xmlWriter module contributed by Alfred Mickautsch
* include/libxml/tree.h: added room for line and extra information
* xmlreader.c python/tests/reader6.py: bugfixing some problem some
  of them introduced in September
* win32/libxml2.def.src doc/libxml2-api.xml: regenerated the API
Daniel
2003-10-20 22:32:39 +00:00
Daniel Veillard
198c1bfc1c removing xmldwalk module since it got merged with the xmlreader. cleanup
* 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
2003-10-20 17:07:41 +00:00
Daniel Veillard
903cd385c3 small fix from Bjorn Reese Daniel
* Makefile.am: small fix from Bjorn Reese
Daniel
2003-10-13 19:47:09 +00:00
William M. Brack
68aca051a6 new files for a different method for doing range validation of character
* genChRange.py, chvalid.def, chvalid.c, include/libxml/chvalid.h:
  new files for a different method for doing range validation
  of character data.
* Makefile.am, parserInternals.c, include/libxml/Makefile.am,
  include/libxml/parserInternals.h: modified for new range method.
* catalog.c: small enhance for warning message (using one
  of the new range routines)
2003-10-11 15:22:13 +00:00
Daniel Veillard
d0c9c32f64 cleanup fix a funny typo converted the Schemas code to the new error
* Makefile.am: cleanup
* encoding.c: fix a funny typo
* error.c xmlschemas.c xmlschemastypes.c include/libxml/xmlerror.h:
  converted the Schemas code to the new error handling. PITA,
  still need to check output from regression tests.
Daniel
2003-10-10 00:49:42 +00:00
Daniel Veillard
f403d298c3 more code cleanup, especially around error messages, the HTML parser has
* 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
2003-10-05 13:51:35 +00:00
Daniel Veillard
1ae42d653e integrated the xmlDocWalker API given by Alfred Mickautsch, and providing
* Makefile.am configure.in xmldwalk.c include/libxml/Makefile.am
  include/libxml/xmldwalk.h include/libxml/xmlversion.h.in:
  integrated the xmlDocWalker API given by Alfred Mickautsch,
  and providing an xmlReader like API but working on a xmlDocPtr.
Daniel
2003-10-03 23:59:20 +00:00
Daniel Veillard
bb5ababa28 more cleanup in make tests more work in the transition to the new error
* 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
2003-10-03 22:21:51 +00:00
Daniel Veillard
2b8c4a151b changed 'make tests' to use a concise output, scrolling to see where thing
* 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
2003-10-02 22:28:19 +00:00
Daniel Veillard
73b013fc17 added a new configure option --with-push, some cleanups, chased code size
* 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
2003-09-30 12:36:01 +00:00
AEST 2003 Malcolm Tredinnick
0643112b6a New file for building against uninstalled libxml2 builds. Support the
Tue Sep 30 12:31:00 AEST 2003 Malcolm Tredinnick <malcolm@commsecure.com.au>

	* libxml-2.0-uninstalled.pc.in: New file for building against
	uninstalled libxml2 builds.
	* configure.in, Makefile.am: Support the *-uninstalled.pc file.
2003-09-30 02:36:08 +00:00
Daniel Veillard
8127390f03 added 2 new configure option: --with-reader --with-sax1 to allow removing
* Makefile.am SAX.c SAX2.c configure.in globals.c parser.c
  parserInternals.c testReader.c testSAX.c xmlIO.c xmllint.c
  xmlreader.c example/gjobread.c include/libxml/xmlversion.h.in:
  added 2 new configure option: --with-reader --with-sax1
  to allow removing the reader or non-xmlReadxxx() interfaces.
Daniel
2003-09-30 00:43:48 +00:00
Daniel Veillard
4432df239b cleanup, creating a new legacy.c module, made sure make tests ran in
* 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
2003-09-28 18:58:27 +00:00
Daniel Veillard
e96a2a4bf0 adding repeated parsing and validating tests make the new DOM tree
* 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
2003-09-24 21:23:56 +00:00
Daniel Veillard
d9e9c9d8f3 fixing namespace DTD validations the output of defaulted namespaces is
* SAX2.c: fixing namespace DTD validations
* result/valid/ns2.xml result/valid/ns.xml: the output of defaulted
  namespaces is slightly different now.
* Makefile.am: report the memory used in Timingtests (as well as time)
Daniel
2003-09-18 22:03:46 +00:00
Daniel Veillard
5335055ef6 add streaming on memory regression tests, found bad bugs in the reader
* 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
2003-09-18 13:35:51 +00:00
Daniel Veillard
f6bc7c249e add a Timingtests target to check bad behaviour from the streaming engine
* Makefile.am: add a Timingtests target to check bad behaviour
  from the streaming engine
* dbgen.pl dbgenattr.pl: perl script to generate big instances
* xmlreader.c: fix a bad behaviour on large buffer inputs
Daniel
2003-09-17 22:33:22 +00:00
Daniel Veillard
81514ba478 do string allocations in large pools, allowing to find if a string pertain
* 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
2003-09-16 23:17:26 +00:00
Daniel Veillard
8a44e59d67 starting work on reusing the parser dictionary for the element and
* SAX2.c include/libxml/parser.h: starting work on reusing the
  parser dictionary for the element and attribute tag names.
  Add pools for Element and Attributes in the parser context,
  which should help speeding up the reader.
* Makefile.am result/*.rdr : adding non-python reader regression
  tests.
Daniel
2003-09-15 14:50:06 +00:00
Daniel Veillard
877a7bd6a3 removing the broken pseudo SGML DocBook parser code. Daniel
* Makefile.am DOCBparser.c parserInternals.c testDocbook.c
  xmllint.c doc/xmllint.xml doc/xmllint.1: removing the
  broken pseudo SGML DocBook parser code.
Daniel
2003-09-13 00:16:32 +00:00
Daniel Veillard
3b7840cd6c adding namespace checkings while making sure they still parse as
* 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
2003-09-11 23:42:01 +00:00
Daniel Veillard
07cb8226c0 Time to commit 3 days of work rewriting the parser internal,
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
2003-09-10 10:51:05 +00:00
Daniel Veillard
4b1577f14a removing the SAXresults tree, keeping result in the same tree, added
* Makefile.am results/*.sax SAXResult/*: removing the SAXresults
  tree, keeping result in the same tree, added SAXtests to the
  default "make tests"
Daniel
2003-09-03 13:10:37 +00:00
Daniel Veillard
1af9a41f24 Adding new version of the SAX interface, it's not there yet, currently
* 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
2003-08-20 22:54:39 +00:00
Daniel Veillard
2fdbd32d51 new dictionary module to keep a single instance of the names used by the
* 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
2003-08-18 12:15:38 +00:00
Daniel Veillard
1638a47a88 Applied patch from Mikhail Grushinskiy for mingw compiler on Windows.
* 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
2003-08-14 01:23:25 +00:00
Daniel Veillard
de0a0a5a25 make sure the OOM code don't get in the way of the builds automatic update
* Makefile.am doc/apibuild.py: make sure the OOM code don't
  get in the way of the builds
* doc/libxml2-api.xml python/libxml2class.txt: automatic update
Daniel
2003-04-24 17:12:57 +00:00
Daniel Veillard
a76fe5ca11 integrated the Out Of Memory test from Havoc Pennington #109368 a lot of
* 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
2003-04-24 16:06:47 +00:00
Daniel Veillard
3e59fc52d5 added support for large file, tested with a 3+GB instance, and some
* 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
2003-04-18 12:34:58 +00:00
Daniel Veillard
f4e5576f8f implemented streaming of RelaxNG (when possible) on top of the xmlReader
* 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
2003-04-15 23:32:22 +00:00
Daniel Veillard
580ced8ee2 fixed Red Hat bug #86118 use libxml2.spec instead of libxml.spec fixed
* configure.in Makefile.am: fixed Red Hat bug #86118 use libxml2.spec
  instead of libxml.spec
* relaxng.c: fixed some of the error reporting excessive
  verbosity
* catalog.c debugXML.c valid.c xmlreader.c xmlschemas.c xpath.c
  xmlschemastypes.c: removed some warnings from gcc
* doc/libxml2-api.xml: rebuilt
Daniel
2003-03-21 21:22:48 +00:00
Daniel Veillard
5add868b2e stop generating wrong result file with * in name fixing the include bug
* Makefile.am: stop generating wrong result file with * in name
* relaxng.c: fixing the include bug raised by Sebastian Rahtz
* result/relaxng/demo* test/relaxng/demo: added the tests from
  Sebastian reproducing the problem.
Daniel
2003-03-10 13:13:58 +00:00
Daniel Veillard
2e9b165f9e patched to have shared libraries for Python regression tests and static
* Makefile.am configure.in: patched to have shared libraries
  for Python regression tests and static binaries for gdb debug
  in my development environment
* relaxng.c: more bugfixes
  found 373 test schemas: 296 success 77 failures
  found 529 test instances: 516 success 8 failures
* result/relaxng/*: updated the results
Daniel
2003-02-19 13:29:45 +00:00
Daniel Veillard
869fb32050 Adding the 2 check python scripts for RelaxNG and XInclude, Daniel 2003-02-10 16:24:45 +00:00
Daniel Veillard
231d791fc4 fixes a libtool problem on AMD 64bits builds found the validation problem
* libxml.spec.in: fixes a libtool problem on AMD 64bits builds
* relaxng.c: found the validation problem I had with interleave
  when not covering all remaining siblings
* Makefile.am test.relaxng/* result/relaxng/*: augmented the
  testsuite and check the RNG schemas against the RNG schemas
  given in appendix A
Daniel
2003-02-09 14:22:17 +00:00
Daniel Veillard
71531f3345 comments cleanups use xmllint for doing the RelaxNG tests preparing 2.5.2
* 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
2003-02-05 13:19:53 +00:00
Daniel Veillard
d41f4f4888 more work on Relax-NG, implementing externalRef augmented/updated the
* relaxng.c: more work on Relax-NG, implementing externalRef
* test/relaxng/* result/relaxng/*: augmented/updated the
  regression tests
* Makefile.am: cleanup to Relaxtests target
Daniel
2003-01-29 21:07:52 +00:00
Daniel Veillard
6eadf63ca6 First commit of the new Relax-NG validation code, not generally useful
* Makefile.am configure.in relaxng.c include/libxml/relaxng.h:
  First commit of the new Relax-NG validation code, not generally
  useful yet.
* test/relaxng/* result/relaxng/*: current state of the regression
  tests
Daniel
2003-01-23 18:29:16 +00:00
Daniel Veillard
e1ca50330b Adding a new set of APIs based on the C# TextXmlReader API but converted
* 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
2002-12-09 14:13:43 +00:00
Daniel Veillard
66651aa8a0 trying to fix bug #98517 about building outside the source tree fixed the
* Makefile.am python/Makefile.am python/tests/Makefile.am:
  trying to fix bug #98517 about building outside the source tree
* doc/xml.html doc/FAQ.html: fixed the link to libiconv #94585
Daniel
2002-11-15 11:21:43 +00:00
Daniel Veillard
91ad879819 switched the order of a couple of includes to fix bugs #97100 Daniel
* Makefile.am: switched the order of a couple of includes
  to fix bugs #97100
Daniel
2002-11-04 17:06:52 +00:00
Daniel Veillard
366a915f86 serious cleanup of the spec file and associated changes in the Makefiles.
* 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
2002-10-23 20:43:53 +00:00
Daniel Veillard
63186735fc use test -f instead of test -e since Solaris /bin/sh misses it, reported
* Makefile.am: use test -f instead of test -e since Solaris /bin/sh
  misses it, reported by Peter Bray.
Daniel
2002-10-15 08:43:17 +00:00