preparing release of libxml2-2.6.27 fix a small problem with preproc flags
* NEWS configure.in testapi.c doc//*: preparing release of
libxml2-2.6.27
* include/libxml/tree.h: fix a small problem with preproc flags
Daniel
diff --git a/ChangeLog b/ChangeLog
index 11098d8..9f2603f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Wed Oct 25 18:04:50 CEST 2006 Daniel Veillard <daniel@veillard.com>
+
+ * NEWS configure.in testapi.c doc//*: preparing release of
+ libxml2-2.6.27
+ * include/libxml/tree.h: fix a small problem with preproc flags
+
Fri Oct 20 14:55:47 CEST 2006 Daniel Veillard <daniel@veillard.com>
* tree.c: fix comment for xmlDocSetRootElement c.f. #351981
diff --git a/NEWS b/NEWS
index 5cf122f..e13224f 100644
--- a/NEWS
+++ b/NEWS
@@ -15,6 +15,59 @@
to the CVS at
http://cvs.gnome.org/viewcvs/libxml2/
code base.There is the list of public releases:
+2.6.27: Oct 25 2006:
+ - Portability fixes: file names on windows (Roland Schwingel,
+ Emelyanov Alexey), windows compile fixup (Rob Richards),
+ AIX iconv() is apparently case sensitive
+ - improvements: Python XPath types mapping (Nic Ferrier), XPath optimization
+ (Kasimier), add xmlXPathCompiledEvalToBoolean (Kasimier), Python node
+ equality and comparison (Andreas Pakulat), xmlXPathCollectAndTest
+ improvememt (Kasimier), expose if library was compiled with zlib
+ support (Andrew Nosenko), cache for xmlSchemaIDCMatcher structs
+ (Kasimier), xmlTextConcat should work with comments and PIs (Rob
+ Richards), export htmlNewParserCtxt needed by Michael Day, refactoring
+ of catalog entity loaders (Michael Day), add XPointer support to
+ python bindings (Ross Reedstrom, Brian West and Stefan Anca),
+ try to sort out most file path to URI conversions and xmlPathToUri,
+ add --html --memory case to xmllint
+ - building fix: fix --with-minimum (Felipe Contreras), VMS fix,
+ const'ification of HTML parser structures (Matthias Clasen),
+ portability fix (Emelyanov Alexey), wget autodetection (Peter
+ Breitenlohner), remove the build path recorded in the python
+ shared module, separate library flags for shared and static builds
+ (Mikhail Zabaluev), fix --with-minimum --with-sax1 builds, fix
+ --with-minimum --with-schemas builds
+ - bug fix: xmlGetNodePath fix (Kasimier), xmlDOMWrapAdoptNode and
+ attribute (Kasimier), crash when using the recover mode,
+ xmlXPathEvalExpr problem (Kasimier), xmlXPathCompExprAdd bug (Kasimier),
+ missing destry in xmlFreeRMutex (Andrew Nosenko), XML Schemas fixes
+ (Kasimier), warning on entities processing, XHTML script and style
+ serialization (Kasimier), python generator for long types, bug in
+ xmlSchemaClearValidCtxt (Bertrand Fritsch), xmlSchemaXPathEvaluate
+ allocation bug (Marton Illes), error message end of line (Rob Richards),
+ fix attribute serialization in writer (Rob Richards), PHP4 DTD validation
+ crasher, parser safety patch (Ben Darnell), _private context propagation
+ when parsing entities (with Michael Day), fix entities behaviour when
+ using SAX, URI to file path fix (Mikhail Zabaluev), disapearing validity
+ context, arg error in SAX callback (Mike Hommey), fix mixed-content
+ autodetect when using --noblanks, fix xmlIOParseDTD error handling,
+ fix bug in xmlSplitQName on special Names, fix Relax-NG element content
+ validation bug, fix xmlReconciliateNs bug, fix potential attribute
+ XML parsing bug, fix line/column accounting in XML parser, chunking bug
+ in the HTML parser on script, try to detect obviously buggy HTML
+ meta encoding indications, bugs with encoding BOM and xmlSaveDoc,
+ HTML entities in attributes parsing, HTML minimized attribute values,
+ htmlReadDoc and htmlReadIO were broken, error handling bug in
+ xmlXPathEvalExpression (Olaf Walkowiak), fix a problem in
+ htmlCtxtUseOptions, xmlNewInputFromFile could leak (Marius Konitzer),
+ bug on misformed SSD regexps (Christopher Boumenot)
+
+ - documentation: warning about XML_PARSE_COMPACT (Kasimier Buchcik),
+ fix xmlXPathCastToString documentation, improve man pages for
+ xmllitn and xmlcatalog (Daniel Leidert), fixed comments of a few
+ functions
+
+
2.6.26: Jun 6 2006:
- portability fixes: Python detection (Joseph Sacco), compilation
error(William Brack and Graham Bennett), LynxOS patch (Olli Savia)
diff --git a/configure.in b/configure.in
index e34c3dd..b2174c6 100644
--- a/configure.in
+++ b/configure.in
@@ -5,7 +5,7 @@
LIBXML_MAJOR_VERSION=2
LIBXML_MINOR_VERSION=6
-LIBXML_MICRO_VERSION=26
+LIBXML_MICRO_VERSION=27
LIBXML_MICRO_VERSION_SUFFIX=
LIBXML_VERSION=$LIBXML_MAJOR_VERSION.$LIBXML_MINOR_VERSION.$LIBXML_MICRO_VERSION$LIBXML_MICRO_VERSION_SUFFIX
LIBXML_VERSION_INFO=`expr $LIBXML_MAJOR_VERSION + $LIBXML_MINOR_VERSION`:$LIBXML_MICRO_VERSION:$LIBXML_MINOR_VERSION
diff --git a/doc/APIchunk10.html b/doc/APIchunk10.html
index 3218532..432eb31 100644
--- a/doc/APIchunk10.html
+++ b/doc/APIchunk10.html
@@ -110,6 +110,7 @@
</dd><dt>act</dt><dd><a href="html/libxml-pattern.html#xmlStreamPush">xmlStreamPush</a><br />
<a href="html/libxml-pattern.html#xmlStreamPushAttr">xmlStreamPushAttr</a><br />
<a href="html/libxml-pattern.html#xmlStreamPushNode">xmlStreamPushNode</a><br />
+</dd><dt>action</dt><dd><a href="html/libxml-tree.html#xmlDocSetRootElement">xmlDocSetRootElement</a><br />
</dd><dt>activate</dt><dd><a href="html/libxml-xmlreader.html#xmlTextReaderSetParserProp">xmlTextReaderSetParserProp</a><br />
</dd><dt>activated</dt><dd><a href="html/libxml-xmlmemory.html#DEBUG_MEMORY">DEBUG_MEMORY</a><br />
<a href="html/libxml-xmlautomata.html#xmlAutomataNewAllTrans">xmlAutomataNewAllTrans</a><br />
diff --git a/doc/APIchunk17.html b/doc/APIchunk17.html
index e54d9d8..9842c3a 100644
--- a/doc/APIchunk17.html
+++ b/doc/APIchunk17.html
@@ -405,6 +405,7 @@
<a href="html/libxml-tree.html#xmlAddNextSibling">xmlAddNextSibling</a><br />
<a href="html/libxml-tree.html#xmlAddPrevSibling">xmlAddPrevSibling</a><br />
<a href="html/libxml-valid.html#xmlCopyElementContent">xmlCopyElementContent</a><br />
+<a href="html/libxml-tree.html#xmlDocSetRootElement">xmlDocSetRootElement</a><br />
<a href="html/libxml-valid.html#xmlFreeElementContent">xmlFreeElementContent</a><br />
<a href="html/libxml-chvalid.html#xmlIsBaseChar">xmlIsBaseChar</a><br />
<a href="html/libxml-chvalid.html#xmlIsBlank">xmlIsBlank</a><br />
diff --git a/doc/APIchunk23.html b/doc/APIchunk23.html
index c635968..effe8f5 100644
--- a/doc/APIchunk23.html
+++ b/doc/APIchunk23.html
@@ -353,6 +353,7 @@
<a href="html/libxml-tree.html#xmlBufferShrink">xmlBufferShrink</a><br />
<a href="html/libxml-catalog.html#xmlCatalogRemove">xmlCatalogRemove</a><br />
<a href="html/libxml-parserInternals.html#xmlDecodeEntities">xmlDecodeEntities</a><br />
+<a href="html/libxml-tree.html#xmlDocSetRootElement">xmlDocSetRootElement</a><br />
<a href="html/libxml-entities.html#xmlEncodeEntities">xmlEncodeEntities</a><br />
<a href="html/libxml-hash.html#xmlHashRemoveEntry">xmlHashRemoveEntry</a><br />
<a href="html/libxml-hash.html#xmlHashRemoveEntry2">xmlHashRemoveEntry2</a><br />
diff --git a/doc/APIchunk25.html b/doc/APIchunk25.html
index 39aeb8f..848a69a 100644
--- a/doc/APIchunk25.html
+++ b/doc/APIchunk25.html
@@ -60,6 +60,7 @@
<a href="html/libxml-HTMLparser.html#htmlIsAutoClosed">htmlIsAutoClosed</a><br />
<a href="html/libxml-HTMLtree.html#htmlSetMetaEncoding">htmlSetMetaEncoding</a><br />
</dd><dt>take</dt><dd><a href="html/libxml-threads.html#xmlLockLibrary">xmlLockLibrary</a><br />
+</dd><dt>taken</dt><dd><a href="html/libxml-tree.html#xmlDocSetRootElement">xmlDocSetRootElement</a><br />
</dd><dt>takes</dt><dd><a href="html/libxml-xmlschemastypes.html#xmlSchemaValidateFacetWhtsp">xmlSchemaValidateFacetWhtsp</a><br />
</dd><dt>tatkes</dt><dd><a href="html/libxml-xmlregexp.html#xmlExpExpDerive">xmlExpExpDerive</a><br />
</dd><dt>tell</dt><dd><a href="html/libxml-parser.html#XML_COMPLETE_ATTRS">XML_COMPLETE_ATTRS</a><br />
diff --git a/doc/devhelp/libxml2-parser.html b/doc/devhelp/libxml2-parser.html
index b26841e..c12cd02 100644
--- a/doc/devhelp/libxml2-parser.html
+++ b/doc/devhelp/libxml2-parser.html
@@ -554,7 +554,7 @@
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlIOParseDTD"/>xmlIOParseDTD ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlDtdPtr">xmlDtdPtr</a> xmlIOParseDTD (<a href="libxml2-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br/> <a href="libxml2-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br/> <a href="libxml2-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br/>
</pre><p>Load and parse a DTD</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block or NULL</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>an Input Buffer</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting <a href="libxml2-tree.html#xmlDtdPtr">xmlDtdPtr</a> or NULL in case of error. @input will be freed at parsing end.</td></tr></tbody></table></div></div>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block or NULL</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>an Input Buffer</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting <a href="libxml2-tree.html#xmlDtdPtr">xmlDtdPtr</a> or NULL in case of error. @input will be freed by the function in any case.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlInitNodeInfoSeq"/>xmlInitNodeInfoSeq ()</h3><pre class="programlisting">void xmlInitNodeInfoSeq (<a href="libxml2-parser.html#xmlParserNodeInfoSeqPtr">xmlParserNodeInfoSeqPtr</a> seq)<br/>
</pre><p>-- Initialize (set to initial state) node info sequence</p>
diff --git a/doc/devhelp/libxml2-tree.html b/doc/devhelp/libxml2-tree.html
index aba84d3..70c6e50 100644
--- a/doc/devhelp/libxml2-tree.html
+++ b/doc/devhelp/libxml2-tree.html
@@ -1081,7 +1081,7 @@
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlDocSetRootElement"/>xmlDocSetRootElement ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> xmlDocSetRootElement (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> root)<br/>
</pre><p>Set the root element of the document (doc->children is a list containing possibly comments, PIs, etc ...).</p>
-<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>root</tt></i>:</span></td><td>the new document root element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the old root element if any was found</td></tr></tbody></table></div></div>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>root</tt></i>:</span></td><td>the new document root element, if root is NULL no action is taken, to remove a node from a document use xmlUnlinkNode(root) instead.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the old root element if any was found, NULL if root was NULL</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlElemDump"/>xmlElemDump ()</h3><pre class="programlisting">void xmlElemDump (FILE * f, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br/>
</pre><p>Dump an XML/HTML node, recursive behaviour, children are printed too.</p>
diff --git a/doc/devhelp/libxml2-xmlversion.html b/doc/devhelp/libxml2-xmlversion.html
index 691f2e1..6a3a089 100644
--- a/doc/devhelp/libxml2-xmlversion.html
+++ b/doc/devhelp/libxml2-xmlversion.html
@@ -218,7 +218,7 @@
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="LIBXML_VERSION">Macro </a>LIBXML_VERSION</h3><pre class="programlisting">#define <a href="#LIBXML_VERSION">LIBXML_VERSION</a>;
-</pre><p>the version number: 1.2.3 value is 1002003</p>
+</pre><p>the version number: 1.2.3 value is 10203</p>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="LIBXML_VERSION_EXTRA">Macro </a>LIBXML_VERSION_EXTRA</h3><pre class="programlisting">#define <a href="#LIBXML_VERSION_EXTRA">LIBXML_VERSION_EXTRA</a>;
@@ -226,7 +226,7 @@
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="LIBXML_VERSION_STRING">Macro </a>LIBXML_VERSION_STRING</h3><pre class="programlisting">#define <a href="#LIBXML_VERSION_STRING">LIBXML_VERSION_STRING</a>;
-</pre><p>the version number string, 1.2.3 value is "1002003"</p>
+</pre><p>the version number string, 1.2.3 value is "10203"</p>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="LIBXML_WRITER_ENABLED">Macro </a>LIBXML_WRITER_ENABLED</h3><pre class="programlisting">#define <a href="#LIBXML_WRITER_ENABLED">LIBXML_WRITER_ENABLED</a>;
diff --git a/doc/html/libxml-parser.html b/doc/html/libxml-parser.html
index 26f407d..b0849cf 100644
--- a/doc/html/libxml-parser.html
+++ b/doc/html/libxml-parser.html
@@ -447,7 +447,7 @@
</pre><p>Examines if the library has been compiled with a given feature.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>feature</tt></i>:</span></td><td>the feature to be examined</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a non-zero value if the feature exist, otherwise zero. Returns zero (0) if the feature does not exist or an unknown unknown feature is requested, non-zero otherwise.</td></tr></tbody></table></div><h3><a name="xmlIOParseDTD" id="xmlIOParseDTD"></a>Function: xmlIOParseDTD</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> xmlIOParseDTD (<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br /> <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br /> <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
</pre><p>Load and parse a DTD</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block or NULL</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>an Input Buffer</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> or NULL in case of error. @input will be freed at parsing end.</td></tr></tbody></table></div><h3><a name="xmlInitNodeInfoSeq" id="xmlInitNodeInfoSeq"></a>Function: xmlInitNodeInfoSeq</h3><pre class="programlisting">void xmlInitNodeInfoSeq (<a href="libxml-parser.html#xmlParserNodeInfoSeqPtr">xmlParserNodeInfoSeqPtr</a> seq)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block or NULL</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>an Input Buffer</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> or NULL in case of error. @input will be freed by the function in any case.</td></tr></tbody></table></div><h3><a name="xmlInitNodeInfoSeq" id="xmlInitNodeInfoSeq"></a>Function: xmlInitNodeInfoSeq</h3><pre class="programlisting">void xmlInitNodeInfoSeq (<a href="libxml-parser.html#xmlParserNodeInfoSeqPtr">xmlParserNodeInfoSeqPtr</a> seq)<br />
</pre><p>-- Initialize (set to initial state) node info sequence</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>seq</tt></i>:</span></td><td>a node info sequence pointer</td></tr></tbody></table></div><h3><a name="xmlInitParser" id="xmlInitParser"></a>Function: xmlInitParser</h3><pre class="programlisting">void xmlInitParser (void)<br />
</pre><p>Initialization function for the XML parser. This is not reentrant. Call once before processing in case of use in multithreaded programs.</p>
diff --git a/doc/html/libxml-tree.html b/doc/html/libxml-tree.html
index 7848691..26ec73b 100644
--- a/doc/html/libxml-tree.html
+++ b/doc/html/libxml-tree.html
@@ -717,7 +717,7 @@
</pre><p>Get the root element of the document (doc->children is a list containing possibly comments, PIs, etc ...).</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the #xmlNodePtr for the root or NULL</td></tr></tbody></table></div><h3><a name="xmlDocSetRootElement" id="xmlDocSetRootElement"></a>Function: xmlDocSetRootElement</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlDocSetRootElement (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> root)<br />
</pre><p>Set the root element of the document (doc->children is a list containing possibly comments, PIs, etc ...).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>root</tt></i>:</span></td><td>the new document root element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the old root element if any was found</td></tr></tbody></table></div><h3><a name="xmlElemDump" id="xmlElemDump"></a>Function: xmlElemDump</h3><pre class="programlisting">void xmlElemDump (FILE * f, <br /> <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>root</tt></i>:</span></td><td>the new document root element, if root is NULL no action is taken, to remove a node from a document use xmlUnlinkNode(root) instead.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the old root element if any was found, NULL if root was NULL</td></tr></tbody></table></div><h3><a name="xmlElemDump" id="xmlElemDump"></a>Function: xmlElemDump</h3><pre class="programlisting">void xmlElemDump (FILE * f, <br /> <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br /> <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
</pre><p>Dump an XML/HTML node, recursive behaviour, children are printed too.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr></tbody></table></div><h3><a name="xmlFreeDoc" id="xmlFreeDoc"></a>Function: xmlFreeDoc</h3><pre class="programlisting">void xmlFreeDoc (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
</pre><p>Free up all the structures used by a document, tree included.</p>
diff --git a/doc/html/libxml-xmlversion.html b/doc/html/libxml-xmlversion.html
index d45db37..3e9d50a 100644
--- a/doc/html/libxml-xmlversion.html
+++ b/doc/html/libxml-xmlversion.html
@@ -43,9 +43,9 @@
<h3><a name="LIBXML_TREE_ENABLED" id="LIBXML_TREE_ENABLED"></a>Macro: LIBXML_TREE_ENABLED</h3><pre>#define LIBXML_TREE_ENABLED</pre><p>Whether the DOM like tree manipulation API support is configured in</p>
<h3><a name="LIBXML_UNICODE_ENABLED" id="LIBXML_UNICODE_ENABLED"></a>Macro: LIBXML_UNICODE_ENABLED</h3><pre>#define LIBXML_UNICODE_ENABLED</pre><p>Whether the Unicode related interfaces are compiled in</p>
<h3><a name="LIBXML_VALID_ENABLED" id="LIBXML_VALID_ENABLED"></a>Macro: LIBXML_VALID_ENABLED</h3><pre>#define LIBXML_VALID_ENABLED</pre><p>Whether the DTD validation support is configured in</p>
-<h3><a name="LIBXML_VERSION" id="LIBXML_VERSION"></a>Macro: LIBXML_VERSION</h3><pre>#define LIBXML_VERSION</pre><p>the version number: 1.2.3 value is 1002003</p>
+<h3><a name="LIBXML_VERSION" id="LIBXML_VERSION"></a>Macro: LIBXML_VERSION</h3><pre>#define LIBXML_VERSION</pre><p>the version number: 1.2.3 value is 10203</p>
<h3><a name="LIBXML_VERSION_EXTRA" id="LIBXML_VERSION_EXTRA"></a>Macro: LIBXML_VERSION_EXTRA</h3><pre>#define LIBXML_VERSION_EXTRA</pre><p>extra version information, used to show a CVS compilation</p>
-<h3><a name="LIBXML_VERSION_STRING" id="LIBXML_VERSION_STRING"></a>Macro: LIBXML_VERSION_STRING</h3><pre>#define LIBXML_VERSION_STRING</pre><p>the version number string, 1.2.3 value is "1002003"</p>
+<h3><a name="LIBXML_VERSION_STRING" id="LIBXML_VERSION_STRING"></a>Macro: LIBXML_VERSION_STRING</h3><pre>#define LIBXML_VERSION_STRING</pre><p>the version number string, 1.2.3 value is "10203"</p>
<h3><a name="LIBXML_WRITER_ENABLED" id="LIBXML_WRITER_ENABLED"></a>Macro: LIBXML_WRITER_ENABLED</h3><pre>#define LIBXML_WRITER_ENABLED</pre><p>Whether the xmlWriter saving interface is configured in</p>
<h3><a name="LIBXML_XINCLUDE_ENABLED" id="LIBXML_XINCLUDE_ENABLED"></a>Macro: LIBXML_XINCLUDE_ENABLED</h3><pre>#define LIBXML_XINCLUDE_ENABLED</pre><p>Whether XInclude is configured in</p>
<h3><a name="LIBXML_XPATH_ENABLED" id="LIBXML_XPATH_ENABLED"></a>Macro: LIBXML_XPATH_ENABLED</h3><pre>#define LIBXML_XPATH_ENABLED</pre><p>Whether XPath is configured in</p>
diff --git a/doc/libxml2-api.xml b/doc/libxml2-api.xml
index 41a84c3..dd49a2b 100644
--- a/doc/libxml2-api.xml
+++ b/doc/libxml2-api.xml
@@ -3954,13 +3954,13 @@
<info>Whether the DTD validation support is configured in</info>
</macro>
<macro name='LIBXML_VERSION' file='xmlversion'>
- <info>the version number: 1.2.3 value is 1002003</info>
+ <info>the version number: 1.2.3 value is 10203</info>
</macro>
<macro name='LIBXML_VERSION_EXTRA' file='xmlversion'>
<info>extra version information, used to show a CVS compilation</info>
</macro>
<macro name='LIBXML_VERSION_STRING' file='xmlversion'>
- <info>the version number string, 1.2.3 value is "1002003"</info>
+ <info>the version number string, 1.2.3 value is "10203"</info>
</macro>
<macro name='LIBXML_WRITER_ENABLED' file='xmlversion'>
<info>Whether the xmlWriter saving interface is configured in</info>
@@ -9365,9 +9365,9 @@
<function name='xmlDocSetRootElement' file='tree' module='tree'>
<cond>defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED)</cond>
<info>Set the root element of the document (doc->children is a list containing possibly comments, PIs, etc ...).</info>
- <return type='xmlNodePtr' info='the old root element if any was found'/>
+ <return type='xmlNodePtr' info='the old root element if any was found, NULL if root was NULL'/>
<arg name='doc' type='xmlDocPtr' info='the document'/>
- <arg name='root' type='xmlNodePtr' info='the new document root element'/>
+ <arg name='root' type='xmlNodePtr' info='the new document root element, if root is NULL no action is taken, to remove a node from a document use xmlUnlinkNode(root) instead.'/>
</function>
<function name='xmlDumpAttributeDecl' file='valid' module='valid'>
<cond>defined(LIBXML_OUTPUT_ENABLED)</cond>
@@ -9969,7 +9969,7 @@
<arg name='node' type='xmlNodePtr' info='a node'/>
</function>
<function name='xmlGetNsList' file='tree' module='tree'>
- <cond>defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED)</cond>
+ <cond>defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)</cond>
<info>Search all the namespace applying to a given element.</info>
<return type='xmlNsPtr *' info='an NULL terminated array of all the #xmlNsPtr found that need to be freed by the caller or NULL if no namespace if defined'/>
<arg name='doc' type='xmlDocPtr' info='the document'/>
@@ -10315,7 +10315,7 @@
<function name='xmlIOParseDTD' file='parser' module='parser'>
<cond>defined(LIBXML_VALID_ENABLED)</cond>
<info>Load and parse a DTD</info>
- <return type='xmlDtdPtr' info='the resulting xmlDtdPtr or NULL in case of error. @input will be freed at parsing end.'/>
+ <return type='xmlDtdPtr' info='the resulting xmlDtdPtr or NULL in case of error. @input will be freed by the function in any case.'/>
<arg name='sax' type='xmlSAXHandlerPtr' info='the SAX handler block or NULL'/>
<arg name='input' type='xmlParserInputBufferPtr' info='an Input Buffer'/>
<arg name='enc' type='xmlCharEncoding' info='the charset encoding if known'/>
@@ -16677,7 +16677,7 @@
<arg name='elem' type='xmlElementPtr' info='an element definition'/>
</function>
<function name='xmlValidateNCName' file='tree' module='tree'>
- <cond>defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_DEBUG_ENABLED) || defined (LIBXML_HTML_ENABLED)</cond>
+ <cond>defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_DEBUG_ENABLED) || defined (LIBXML_HTML_ENABLED) || defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED)</cond>
<info>Check that a value conforms to the lexical space of NCName</info>
<return type='int' info='0 if this validates, a positive error code number otherwise and -1 in case of internal or API error.'/>
<arg name='value' type='const xmlChar *' info='the value to check'/>
diff --git a/doc/libxml2-refs.xml b/doc/libxml2-refs.xml
index 69d7166..d7af1f5 100644
--- a/doc/libxml2-refs.xml
+++ b/doc/libxml2-refs.xml
@@ -18455,6 +18455,9 @@
<ref name='xmlStreamPushAttr'/>
<ref name='xmlStreamPushNode'/>
</word>
+ <word name='action'>
+ <ref name='xmlDocSetRootElement'/>
+ </word>
<word name='activate'>
<ref name='xmlTextReaderSetParserProp'/>
</word>
@@ -23617,6 +23620,7 @@
<ref name='xmlAddNextSibling'/>
<ref name='xmlAddPrevSibling'/>
<ref name='xmlCopyElementContent'/>
+ <ref name='xmlDocSetRootElement'/>
<ref name='xmlFreeElementContent'/>
<ref name='xmlIsBaseChar'/>
<ref name='xmlIsBlank'/>
@@ -26914,6 +26918,7 @@
<ref name='xmlBufferShrink'/>
<ref name='xmlCatalogRemove'/>
<ref name='xmlDecodeEntities'/>
+ <ref name='xmlDocSetRootElement'/>
<ref name='xmlEncodeEntities'/>
<ref name='xmlHashRemoveEntry'/>
<ref name='xmlHashRemoveEntry2'/>
@@ -28632,6 +28637,9 @@
<word name='take'>
<ref name='xmlLockLibrary'/>
</word>
+ <word name='taken'>
+ <ref name='xmlDocSetRootElement'/>
+ </word>
<word name='takes'>
<ref name='xmlSchemaValidateFacetWhtsp'/>
</word>
@@ -30754,6 +30762,7 @@
<ref name='xmlParseURIRaw'/>
</word>
<word name='xmlUnlinkNode'>
+ <ref name='xmlDocSetRootElement'/>
<ref name='xmlFreeNode'/>
</word>
<word name='xmlUnlockLibrary'>
diff --git a/doc/libxml2.xsa b/doc/libxml2.xsa
index 0cfdca5..341e126 100644
--- a/doc/libxml2.xsa
+++ b/doc/libxml2.xsa
@@ -8,9 +8,20 @@
</vendor>
<product id="libxml2">
<name>libxml2</name>
- <version>2.6.25</version>
- <last-release> Jun 6 2006:</last-release>
+ <version>2.6.26</version>
+ <last-release> Jun 6 2006</last-release>
<info-url>http://xmlsoft.org/</info-url>
- <changes>Do not use or package 2.6.25</changes>
+ <changes> - portability fixes: Python detection (Joseph Sacco), compilation
+ error(William Brack and Graham Bennett), LynxOS patch (Olli Savia)
+ - bug fixes: encoding buffer problem, mix of code and data in
+ xmlIO.c(Kjartan Maraas), entities in XSD validation (Kasimier Buchcik),
+ variousXSD validation fixes (Kasimier), memory leak in pattern (Rob
+ Richards andKasimier), attribute with colon in name (Rob Richards), XPath
+ leak inerror reporting (Aleksey Sanin), XInclude text include of
+ selfdocument.
+ - improvements: Xpath optimizations (Kasimier), XPath object
+ cache(Kasimier)
+
+</changes>
</product>
</xsa>
diff --git a/doc/news.html b/doc/news.html
index 1b4024f..79a89d6 100644
--- a/doc/news.html
+++ b/doc/news.html
@@ -12,7 +12,57 @@
<li>Finishing up <a href="http://www.w3.org/TR/xmlschema-1/">XML
Schemas</a></li>
</ul><p>The <a href="ChangeLog.html">change log</a> describes the recents commits
-to the <a href="http://cvs.gnome.org/viewcvs/libxml2/">CVS</a> code base.</p><p>There is the list of public releases:</p><h3>2.6.26: Jun 6 2006</h3><ul><li>portability fixes: Python detection (Joseph Sacco), compilation
+to the <a href="http://cvs.gnome.org/viewcvs/libxml2/">CVS</a> code base.</p><p>There is the list of public releases:</p><h3>2.6.27: Oct 25 2006</h3><ul><li>Portability fixes: file names on windows (Roland Schwingel,
+ Emelyanov Alexey), windows compile fixup (Rob Richards),
+ AIX iconv() is apparently case sensitive</li>
+ <li>improvements: Python XPath types mapping (Nic Ferrier), XPath optimization
+ (Kasimier), add xmlXPathCompiledEvalToBoolean (Kasimier), Python node
+ equality and comparison (Andreas Pakulat), xmlXPathCollectAndTest
+ improvememt (Kasimier), expose if library was compiled with zlib
+ support (Andrew Nosenko), cache for xmlSchemaIDCMatcher structs
+ (Kasimier), xmlTextConcat should work with comments and PIs (Rob
+ Richards), export htmlNewParserCtxt needed by Michael Day, refactoring
+ of catalog entity loaders (Michael Day), add XPointer support to
+ python bindings (Ross Reedstrom, Brian West and Stefan Anca),
+ try to sort out most file path to URI conversions and xmlPathToUri,
+ add --html --memory case to xmllint</li>
+ <li>building fix: fix --with-minimum (Felipe Contreras), VMS fix,
+ const'ification of HTML parser structures (Matthias Clasen),
+ portability fix (Emelyanov Alexey), wget autodetection (Peter
+ Breitenlohner), remove the build path recorded in the python
+ shared module, separate library flags for shared and static builds
+ (Mikhail Zabaluev), fix --with-minimum --with-sax1 builds, fix
+ --with-minimum --with-schemas builds</li>
+ <li>bug fix: xmlGetNodePath fix (Kasimier), xmlDOMWrapAdoptNode and
+ attribute (Kasimier), crash when using the recover mode,
+ xmlXPathEvalExpr problem (Kasimier), xmlXPathCompExprAdd bug (Kasimier),
+ missing destry in xmlFreeRMutex (Andrew Nosenko), XML Schemas fixes
+ (Kasimier), warning on entities processing, XHTML script and style
+ serialization (Kasimier), python generator for long types, bug in
+ xmlSchemaClearValidCtxt (Bertrand Fritsch), xmlSchemaXPathEvaluate
+ allocation bug (Marton Illes), error message end of line (Rob Richards),
+ fix attribute serialization in writer (Rob Richards), PHP4 DTD validation
+ crasher, parser safety patch (Ben Darnell), _private context propagation
+ when parsing entities (with Michael Day), fix entities behaviour when
+ using SAX, URI to file path fix (Mikhail Zabaluev), disapearing validity
+ context, arg error in SAX callback (Mike Hommey), fix mixed-content
+ autodetect when using --noblanks, fix xmlIOParseDTD error handling,
+ fix bug in xmlSplitQName on special Names, fix Relax-NG element content
+ validation bug, fix xmlReconciliateNs bug, fix potential attribute
+ XML parsing bug, fix line/column accounting in XML parser, chunking bug
+ in the HTML parser on script, try to detect obviously buggy HTML
+ meta encoding indications, bugs with encoding BOM and xmlSaveDoc,
+ HTML entities in attributes parsing, HTML minimized attribute values,
+ htmlReadDoc and htmlReadIO were broken, error handling bug in
+ xmlXPathEvalExpression (Olaf Walkowiak), fix a problem in
+ htmlCtxtUseOptions, xmlNewInputFromFile could leak (Marius Konitzer),
+ bug on misformed SSD regexps (Christopher Boumenot)
+ </li>
+ <li>documentation: warning about XML_PARSE_COMPACT (Kasimier Buchcik),
+ fix xmlXPathCastToString documentation, improve man pages for
+ xmllitn and xmlcatalog (Daniel Leidert), fixed comments of a few
+ functions</li>
+</ul><h3>2.6.26: Jun 6 2006</h3><ul><li>portability fixes: Python detection (Joseph Sacco), compilation
error(William Brack and Graham Bennett), LynxOS patch (Olli Savia)</li>
<li>bug fixes: encoding buffer problem, mix of code and data in
xmlIO.c(Kjartan Maraas), entities in XSD validation (Kasimier Buchcik),
diff --git a/doc/xml.html b/doc/xml.html
index da42009..a25b8d0 100644
--- a/doc/xml.html
+++ b/doc/xml.html
@@ -734,6 +734,59 @@
<p>There is the list of public releases:</p>
+<h3>2.6.27: Oct 25 2006</h3>
+<ul>
+ <li>Portability fixes: file names on windows (Roland Schwingel,
+ Emelyanov Alexey), windows compile fixup (Rob Richards),
+ AIX iconv() is apparently case sensitive</li>
+ <li>improvements: Python XPath types mapping (Nic Ferrier), XPath optimization
+ (Kasimier), add xmlXPathCompiledEvalToBoolean (Kasimier), Python node
+ equality and comparison (Andreas Pakulat), xmlXPathCollectAndTest
+ improvememt (Kasimier), expose if library was compiled with zlib
+ support (Andrew Nosenko), cache for xmlSchemaIDCMatcher structs
+ (Kasimier), xmlTextConcat should work with comments and PIs (Rob
+ Richards), export htmlNewParserCtxt needed by Michael Day, refactoring
+ of catalog entity loaders (Michael Day), add XPointer support to
+ python bindings (Ross Reedstrom, Brian West and Stefan Anca),
+ try to sort out most file path to URI conversions and xmlPathToUri,
+ add --html --memory case to xmllint</li>
+ <li>building fix: fix --with-minimum (Felipe Contreras), VMS fix,
+ const'ification of HTML parser structures (Matthias Clasen),
+ portability fix (Emelyanov Alexey), wget autodetection (Peter
+ Breitenlohner), remove the build path recorded in the python
+ shared module, separate library flags for shared and static builds
+ (Mikhail Zabaluev), fix --with-minimum --with-sax1 builds, fix
+ --with-minimum --with-schemas builds</li>
+ <li>bug fix: xmlGetNodePath fix (Kasimier), xmlDOMWrapAdoptNode and
+ attribute (Kasimier), crash when using the recover mode,
+ xmlXPathEvalExpr problem (Kasimier), xmlXPathCompExprAdd bug (Kasimier),
+ missing destry in xmlFreeRMutex (Andrew Nosenko), XML Schemas fixes
+ (Kasimier), warning on entities processing, XHTML script and style
+ serialization (Kasimier), python generator for long types, bug in
+ xmlSchemaClearValidCtxt (Bertrand Fritsch), xmlSchemaXPathEvaluate
+ allocation bug (Marton Illes), error message end of line (Rob Richards),
+ fix attribute serialization in writer (Rob Richards), PHP4 DTD validation
+ crasher, parser safety patch (Ben Darnell), _private context propagation
+ when parsing entities (with Michael Day), fix entities behaviour when
+ using SAX, URI to file path fix (Mikhail Zabaluev), disapearing validity
+ context, arg error in SAX callback (Mike Hommey), fix mixed-content
+ autodetect when using --noblanks, fix xmlIOParseDTD error handling,
+ fix bug in xmlSplitQName on special Names, fix Relax-NG element content
+ validation bug, fix xmlReconciliateNs bug, fix potential attribute
+ XML parsing bug, fix line/column accounting in XML parser, chunking bug
+ in the HTML parser on script, try to detect obviously buggy HTML
+ meta encoding indications, bugs with encoding BOM and xmlSaveDoc,
+ HTML entities in attributes parsing, HTML minimized attribute values,
+ htmlReadDoc and htmlReadIO were broken, error handling bug in
+ xmlXPathEvalExpression (Olaf Walkowiak), fix a problem in
+ htmlCtxtUseOptions, xmlNewInputFromFile could leak (Marius Konitzer),
+ bug on misformed SSD regexps (Christopher Boumenot)
+ </li>
+ <li>documentation: warning about XML_PARSE_COMPACT (Kasimier Buchcik),
+ fix xmlXPathCastToString documentation, improve man pages for
+ xmllitn and xmlcatalog (Daniel Leidert), fixed comments of a few
+ functions</li>
+</ul>
<h3>2.6.26: Jun 6 2006</h3>
<ul>
<li>portability fixes: Python detection (Joseph Sacco), compilation
diff --git a/include/libxml/tree.h b/include/libxml/tree.h
index 7eca714..321280e 100644
--- a/include/libxml/tree.h
+++ b/include/libxml/tree.h
@@ -918,7 +918,7 @@
xmlSearchNsByHref (xmlDocPtr doc,
xmlNodePtr node,
const xmlChar *href);
-#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED)
+#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
XMLPUBFUN xmlNsPtr * XMLCALL
xmlGetNsList (xmlDocPtr doc,
xmlNodePtr node);
diff --git a/testapi.c b/testapi.c
index ebc2bb4..01a4184 100644
--- a/testapi.c
+++ b/testapi.c
@@ -20010,7 +20010,7 @@
xmlNodePtr ret_val;
xmlDocPtr doc; /* the document */
int n_doc;
- xmlNodePtr root; /* the new document root element */
+ xmlNodePtr root; /* the new document root element, if root is NULL no action is taken, to remove a node from a document use xmlUnlinkNode(root) instead. */
int n_root;
for (n_doc = 0;n_doc < gen_nb_xmlDocPtr;n_doc++) {
@@ -23593,7 +23593,7 @@
test_xmlValidateNCName(void) {
int test_ret = 0;
-#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_DEBUG_ENABLED) || defined (LIBXML_HTML_ENABLED)
+#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_DEBUG_ENABLED) || defined (LIBXML_HTML_ENABLED) || defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED)
#ifdef LIBXML_TREE_ENABLED
int mem_base;
int ret_val;
@@ -32057,7 +32057,7 @@
return(test_ret);
}
-#if defined(LIBXML_READER_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
+#ifdef LIBXML_READER_ENABLED
#define gen_nb_xmlSchemaValidCtxtPtr 1
static xmlSchemaValidCtxtPtr gen_xmlSchemaValidCtxtPtr(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {