ANN: REXML 2.4.5 and 2.5.3

Greetings, strangers.

New versions of REXML are out. These are bug fixes, for the most
part.

Here’s the blurb; the changelog(s) are below:

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
multiple parsing APIs, and a full XPath implementation. All of REXML’s
parsers pass 100% of the Oasis XML non-validating tests.

Parsing APIs provided:

  • Tree model parser
  • SAX2 streaming parser
  • Pull parser

Encodings supported (input and output):

  • ISO-8859-1
  • Shift-JIS
  • UTF-16
  • EUC-JP
  • US-ASCII
  • UNILE
  • (and of course) UTF-8

Notes on upgrading:
Releases within stable branches (even minor revisions) restrict
changes to bug fixes that don’t affect REXML’s API, and only affect
REXML’s behavior in ways that make it more conformant/correct. It
should be safe to upgrade within a stable branch without risk of
breaking your application.

Development branches (odd minor revisions) allow for arbitrary changes
of the API or changes in REXML’s parsing behavior. Do not upgrade
development versions blindly! Also, do not upgrade out of your
stable branch without checking the documentation vigorously.

Changelog for 2.5.3:

  • Improved parsing speed by a chunk
  • Bug #29: SAX2Parser was not processing XML declarations or
    processing instructions.
  • Bug #29: REXML pull parser and SAX2 parser both now report
    :processing_instruction, rather than :instruction. This is less
    consistent with REXML, which tends to be more minimal, but is more
    consistent with the SAX2 parser API. Let me know if you disagree with
    this decision before I go to 2.6.0.
  • Bug #30: In some cases, REXML would refuse to delete an attribute.
    This has been fixed.
  • Bug #31: Ignored element fix applied.
  • Fixed a whitespace parsing bug that resulted in some documents
    causing parse errors.

Changelog for 2.4.4:

  • Backported fix for \r errors. This also fixes some cases where
    whitespace-only nodes could cause a parse error.
  • Some of the changes reported for 2.4.4 didn’t actually make it into
    the repository before I released it; notably, the SAX2 fixes.
  • Parse speed improvement

Thanks to everybody who’s submitted bug reports, and especially to
Kou, who’s fixed a lot of the bugs he’s found himself in recent
releases.