The many changes in this release include
consolidation of the parsing code and a rewrite of
the XPath evaluator. Since Ruby 1.8, REXML is
distributed with Ruby.
Empty tags now print with extra whitespace, oarsing speed was improved, Shift_JIS encoding was added, and the unit tests now use the new test/unit API. SAX2Parser now processes XML declarations and instructions, and the REXML pull parser and SAX2 parser now both report :processing_instruction instead of :instruction. There was also fixes for attribute deletion, ignored elements, and whitespace parsing. Corrections were made to the tutorial, and a non-conformance bug in XPath involving whitespace in predicates was fixed.
Fixes were made for bugs in the encoding code,
entity replacement, the new
"ignore_whitespace_nodes", XPath's
substring-before() and substring-after(), and the
rare and mysterious "hangs". A change was made to
stream handling, which improves performance. The
pattern for matching elements was improved so that
more malformed XML is caught. Performance
enhancements were made.