Xerces-C++ 3.1.0 released

Boris Kolpackov boris at codesynthesis.com
Mon Feb 1 12:30:45 UTC 2010


Hi,

I am pleased to announce the release of Xerces-C++ 3.1.0. This version 
is interface-compatible (but not necessarily binary-compatible) with 
Xerces-C++ 3.0.x and contains the following major new features and
improvements:

 * Working multi-import support. The support for handling multiple import
   declarations with the same target namespaces has been improved and
   thoroughly tested. Furthermore, the same logic was extended to
   loadGrammar and the schemaLocation attributes so that you can load
   several schemas with the same namespace and/or "add" more declarations
   with the schemaLocation attributes. To enable this feature, set the
   XMLUni::fgXercesHandleMultipleImports feature/parameter to true.
   Starting with this release all the tests and examples have multi-import
   support enabled by default.

 * New property, XMLUni::fgXercesLowWaterMark, allows the configuration
   of the parser buffer low water mark. In particular, setting this value
   to 0 disables data caching in the parser which can be useful if you
   want the SAX events to be dispatched as soon as the data is available.

 * DOMLSParser::parseWithContext implementation. In particular, this 
   functionality allows one to parse a document fragment with missing
   namespace declarations as long as the context document provides them.

 * Improved performance and reduced memory footprint when validating with
   large maxOccurs values. If available, the SSE2 instructions are used to 
   further speedup this case.

 * Improved scalability of the XML Schema identity checking (key, keyref,
   and unique).

 * Multiple XML Schema conformance fixes.

 * More robust external library detection (libcurl and ICU). In particular,
   the build system no longer tries to inject any additional paths such as
   /usr or /usr/local. 

 * Compilation of the ICU message loader resources no longer depends on
   the ICU implementation details.
  
The following bugs and security vulnerabilities have been fixed in this
release compared to the previous release (3.0.1):

CVE-2009-1885, XERCESC-646, XERCESC-697, XERCESC-809, XERCESC-961,
XERCESC-1021, XERCESC-1051, XERCESC-1246, XERCESC-1249, XERCESC-1263,
XERCESC-1380, XERCESC-1480, XERCESC-1481, XERCESC-1507, XERCESC-1568,
XERCESC-1583, XERCESC-1607, XERCESC-1659, XERCESC-1703, XERCESC-1707,
XERCESC-1713, XERCESC-1716, XERCESC-1717, XERCESC-1747, XERCESC-1748,
XERCESC-1759, XERCESC-1808, XERCESC-1826, XERCESC-1831, XERCESC-1833,
XERCESC-1847, XERCESC-1852, XERCESC-1856, XERCESC-1858, XERCESC-1863,
XERCESC-1866, XERCESC-1867, XERCESC-1868, XERCESC-1869, XERCESC-1870,
XERCESC-1871, XERCESC-1872, XERCESC-1874, XERCESC-1878, XERCESC-1882,
XERCESC-1892, XERCESC-1893, XERCESC-1894, XERCESC-1896 XERCESC-1898

For the compete list of changes see:

http://xerces.apache.org/xerces-c/releases.html

This release is available in source code and as pre-compiled
libraries/examples for the following platforms and architectures:

32 bit:

   Windows - MSVC 7.1
   Windows - MSVC 8.0
   Windows - MSVC 9.0
   GNU/Linux - g++ 3.4.x
   AIX 5.3 - xlC 7
   Solaris 10 - Sun C++ 5.10, both SPARC and x86
   HP-UX 11i - aCC A.06.x, IA64
   Mac OS X - g++ 4.0, x86

64 bit:

   Windows - MSVC 8.0
   Windows - MSVC 9.0
   GNU/Linux - g++ 3.4.x
   AIX 5.3 - xlC 7
   Solaris 10 - Sun C++ 5.7, both SPARC and x86-64
   HP-UX 11i - aCC A.06.x, IA64

The source code archives and pre-compiled libraries are available
from the download page:

http://xerces.apache.org/xerces-c/download.cgi

Note that it takes up to 24 hours for the release to propagate to all 
the mirrors so use the master distribution directory if the files are 
not yet available on your favorite mirror. It is important that you 
verify the integrity of the files you download using either the PGP 
signatures or MD5 checksums as described on the download page.

Finally I would like to thank all who contributed source code, submitted
bug reports, and helped test the beta releases.

Enjoy,
	Boris

-- 
Boris Kolpackov, Code Synthesis        http://codesynthesis.com/~boris/blog
Open-source XML data binding for C++   http://codesynthesis.com/products/xsd
XML data binding for embedded systems  http://codesynthesis.com/products/xsde
Command line interface to C++ compiler http://codesynthesis.com/projects/cli



More information about the pkg-java-maintainers mailing list