Ann: rexml 2.5.8

Greetings!

REXML 2.5.8 is out, and includes mostly bug fixes, although there are
some behavior changes and two minor (probably seldom used) API
changes. 2.4.8 will follow, probably on 4/22 or 4/23, and includes
most of the bug fixes.

Here’s the URL:

http://www.germane-software.com/software/rexml

and here’s the obligatory blurb:

REXML is an XML 1.0 compliant, reasonably fast, non-validating XML
parser that supports multiple encodings. It has an API that is
designed to be intuitive, straightforward, and terse. REXML includes a
tree model parser, a SAX2 streaming parser, and a pull parser. It
also includes a full XPath implementation. All of REXML’s parsers
pass 100% of the Oasis XML non-validating tests.

Changelog (since 2.5.7):

  • Forward-ported some unit tests from the 2.4 branch.
  • Made write() send to $stdout by default; this means that the first
    argument is no longer required.
  • Some documentation fixes
  • When a child was added to a parent, the parent wasn’t making sure
    that the child was removed from any previous parent. This has been
    fixed.
  • Applied patch that escapes “-” in character ranges in regular
    expressions to keep Ruby 1.8 from complaining (Tom Payne)
  • Applied patch that allows entities to contain upper case characters
    (Shin-ichi Hirata)
  • Fixed a bug in moving child nodes between parents
  • Fixed an XPath bug in predicate evaluation
  • Applied a patch that fixes != equality checks in XPath (Kou)
  • Fixed Function::string() behavior, so elements evaluate to the
    correct string value in XPaths.
  • Fixed text() evaluation in XPath predicates
  • Added more () to method calls, which Ruby 1.8 seems to prefer
  • Fixed a recently introduced bug in Comment that caused
    Comment::write to fail.
  • WARNING: API CHANGE ##### Attlist events have been improved;

this affects StreamListeners, so check attlistdecl()

  • WARNING: API CHANGE ##### @element in AttlistDecl is now

@element_name

  • Many READMEs were really file lists, and have been renamed to FILES
  • There’s a nacent INSTALL in the root directory now, on user request.