Menu

XeuMeuLeu / News: Recent posts

XeuMeuLeu 1.7.1 released

XeuMeuLeu is an open-source cross-platform C++ stream oriented interface on top of Apache Xerces for manipulating XML and Apache Xalan for applying XSL transformations.

This release fixes compilation with clang.

For more information see http://xeumeuleu.sourceforge.net

Posted by Mathieu Champlon 2017-08-06

XeuMeuLeu 1.7.0 released

XeuMeuLeu is an open-source cross-platform C++ stream oriented interface on top of Apache Xerces for manipulating XML and Apache Xalan for applying XSL transformations.

This release introduces a number of fixes and features.

The changes are:
. switched to C++11
. dropped support for Xerces 2
. added customization of std::stringstream context
. fixed name of element and attribute in error messages
. changed document name from '#document' to 'document' in error messages
. cleaned up error messages to all start with lower case
. reworked error handling to diagnose invalid schema syntax
. changed formatting of floating point numbers to output all significant digits
. added fallback support for attribute and content in xostream
. added xml::optional support to xml::xostream
. fixed double deletion issue in xsl::xtransform
. default initialized values in direct readers... read more

Posted by Mathieu Champlon 2017-05-27

XeuMeuLeu 1.6.0 released

XeuMeuLeu is an open-source cross-platform C++ stream oriented interface on top of Apache Xerces for manipulating XML and Apache Xalan for applying XSL transformations.

This long overdue release provides several bug fixes as well as generalized support for utf-8.

The changes are :
. added an xml::call manipulator to call a functor
. fixed typos in the name version of xml::list for 3 and 5 arguments
. fixed missing error context when data conversion failed
. changed text conversions from native code page to utf-8
. fixed type name demangling for gcc
. fixed encoding of file names when opening files
. added support for utf-8 stylesheet file path
. added support for utf-8 output file path in xsl
. added support for utf-8 parameter key and expression in xsl
. deprecated xml::xistream::error
. removed deprecated xml.h and xsl.h
. removed deprecated no-op operator() on xml::end and xml::optional
. removed deprecated xml::xisubstream based helpers... read more

Posted by Mathieu Champlon 2014-03-18

XeuMeuLeu 1.5.0 released

XeuMeuLeu is an open-source cross-platform C++ stream oriented interface on top of Apache Xerces for manipulating XML and Apache Xalan for applying XSL transformations.

This release includes several new features as well as a few bug fixes.

The changes are :
. removed the undocumented flush public method from xml::xofstream
. fixed a bug causing an xml::xofstream to be flushed twice to file
. added an xml::xostreamstream writing output to an std::ostream
. provided easy customisation for user types in attributes
. fixed a crash when retrieving the context of a buffer stream after a non existing optional
. fixed a bug causing the stream passed to the functor in xml::attributes not to be positioned on the attribute but on its parent node
. added XML namespaces support
. added a memory_grammar implementation for in-memory schema validation
. added xml::grammars a composite grammar to accumulate several grammars for validation
. fixed an issue with the base class xml::grammar being usable polymorphically by changing its constructor and destructor visibility to protected... read more

Posted by Mathieu Champlon 2010-11-23

XeuMeuLeu 1.4.2 released

XeuMeuLeu is an open-source cross-platform C++ stream oriented interface on top of Apache Xerces for manipulating XML and Apache Xalan for applying XSL transformations.

This release includes mainly refactoring and bug fixes.

The changes are :
. added support for document type definition (DTD)
. a non existing internal schema definition is ignored instead of producing an error unless xml::internal_grammar is used
. fixed a crash when creating an xml::xibufferstream from an empty xml::xobufferstream
. optimized streams creation and cloning
. reduced input streams memory footprint
. the optional state of a stream is now correctly transmitted to the sub streams or buffer streams created from it
. an xml::end after an xml::optional now resets the optional state instead of throwing an exception
. direct reading helpers have been replaced by methods on an xml::xistream... read more

Posted by Mathieu Champlon 2009-11-11

XeuMeuLeu 1.4.0 released

XeuMeuLeu is an open-source cross-platform C++ stream oriented interface on top of Apache Xerces for manipulating XML and Apache Xalan for applying XSL transformations.

This release follows a major refactoring of the code structure and organization, first step toward supporting several XML parsers (and parser versions as with Apache Xerces 2.x and 3.x).

The changes are :
. all libraries are now headers only
. added a XEUMEULEU_NO_DEPRECATED define to be declared if deprecated features should not be included
. an xml::xostringstream is now serialized when calling str()
. an xml::xofstream is now written to file when calling flush(), upon destruction or when the tree is complete
. xeuseuleu/xsl.h and xeumeuleu/xml.h are deprecated, use xeuseuleu/xsl.hpp and xeumeuleu/xml.hpp instead
. fixed a bug which prevented to (un)serialize a user type inheriting from another type itself (un)serializable
. enhanced xml::list and xml::attributes to accept a reference on an instance of a sub-type of the type with the method to call... read more

Posted by Mathieu Champlon 2009-06-07

XeuMeuLeu 1.3.2 released

XeuMeuLeu is an open-source cross-platform C++ stream oriented interface on top of Apache Xerces for manipulating XML and Apache Xalan for applying XSL transformations.

This release is mainly a maintenance and bug fixes release.

The changes are :
. xml::list and xml::attributes functors can be passed as references to be able to handle an internal state
. added support for long double
. xml::end and xml::optional can be used without parenthesis
. fixed the error context not being transmitted from an xml::xistream to an xml::xobufferstream
. added missing constructor with encoding for xml::xistreamstream
. added has_child, has_attribute and has_content accessors on xml::xistream
. removed const in return value of xostringstream::str() to allow constructions such as s.switch( xos.str() )... read more

Posted by Mathieu Champlon 2009-05-18

XeuMeuLeu 1.3.1 released

XeuMeuLeu is an open-source cross-platform C++ stream oriented interface on top of Apache Xerces for manipulating XML and Apache Xalan for applying XSL transformations.

This release is mainly a maintenance and bug fixes release.

The changes are :
. fixed a crash when cascading several xml::ximultistream wrappers
. added an exception when trying to move up from the root of an xml::xisubstream created on an optional non-existing branch
. fixed a crash when calling error on an xml::xisubstream created on an optional non-existing branch
. changed xml::xobufferstream to make it both an xml::xostream and an xml::xistream so that it can be used as a buffer
. fixed xml::cdata beautification
. fixed a bug that caused an xml::xosubstream not to write to output when created on the root level of an xml::xostream
. fixed thread safety when creating streams and transformations
. added xml::instruction to output processing instructions
. changed the exception message to a more meaningful one when failing to load an external grammar... read more

Posted by Mathieu Champlon 2008-10-24

XeuMeuLeu 1.3.0 released

XeuMeuLeu is an open-source cross-platform C++ stream oriented interface on top of Apache Xerces for manipulating XML and Apache Xalan for applying XSL transformations.

This release provides a new library based on Apache Xalan for applying XSL transformations.

Other changes are :
. added xml::ximultistream implementing a composite of input streams
. added xml::value helper to read directly from an xml::xistream
. fixed error context not being transmitted from an xml::xistream to an xml::xibufferstream
. added error context in xml::xistream exceptions thrown during read
. fixed a crash when creating a stream at namespace scope
. optimized floating point numbers output speed
. fixed byte-order-mark at beginning of output where missing
. added support for STL-style functors in xml::list and xml::attributes
. fixed const-correctness in various locations... read more

Posted by Mathieu Champlon 2008-04-24

XeuMeuLeu 1.2.2 released

XeuMeuLeu is an open-source cross-platform C++ stream oriented interface on top of Apache Xerces.

This release focuses on bug fixes and current features stabilization :
. fixed output indentation issues when serializing an xml::xistream directly into an xml::xostream
. added xml::list with node names parameter with 3 parameters
. added an operator to unserialize from an xml::xistream directly to an xml::xostream
. added support for long long and unsigned long long
. fixed a bug that caused an xibufferstream to become invalid when the xistream it had been created from was destroyed
. added a method to throw an exception within the current context of an xml::xistream
. added xml::attributes similar to xml::list but for attributes

For more information see http://xeumeuleu.sourceforge.net

Posted by Mathieu Champlon 2007-10-26

XeuMeuLeu 1.2.1 released

XeuMeuLeu is an open-source cross-platform C++ stream oriented interface on top of Apache Xerces.

This release contains the following modifications :
. added const to the xml::xobufferstream parameter serialized to an xml::xostream
. added CDATA support
. xml::list callbacks now accept parameters passed by value
. added xml::xibufferstream recursively cloning the current node of a given xml::xistream
. added xml::xistream serialization to an xml::xostream
. fixed msvc warnings when using xml::list with an instance of a class virtually inheriting from another
. added attribute and content direct reading helper functions ... read more

Posted by Mathieu Champlon 2007-07-28

XeuMeuLeu 1.2.0 released

XeuMeuLeu is an open-source cross-platform C++ stream oriented interface on top of Apache Xerces.

This release contains the following modifications :
. added support for short, unsigned short, unsigned int, long and unsigned long data types
. added a wrapper stream to create xml streams from standard input streams
. xml::grammar renamed to xml::external_grammar
. added support for INF, -INF and NaN

For more information see http://xeumeuleu.sourceforge.net

Posted by Mathieu Champlon 2007-02-16

XeuMeuLeu 1.1.0 released

XeuMeuLeu is an open-source cross-platform C++ stream oriented interface on top of Apache Xerces.

This release contains the following modifications :
. added 4 and 5 parameters xml::list support
. added xml::internal_grammar to use internal schema definition validation
. added xml::list with node names parameter (up to 2 parameters)
. fixed a typo in 3 parameters xml::list
. fixed a sub_output bug which triggered too many writes to ouput... read more

Posted by Mathieu Champlon 2006-10-05