Hi,
REXML, the pure-Ruby XML parser, v3.0.8 is out.
The Ruby CVS HEAD is up to date with 3.0.8; I’m in the process of
porting it back to the stable CVS branch. REXML is also available as a
seperate download at the REXML website:
http://www.germane-software.com/software/rexml
Here’s a list of changes since 3.0.3:
- Fixes to transitive pretty-printing
- Attributes can now be non-Strings; they’ll be to_s()'ed when set.
- Text now works on frozen strings
- Fixed a bug where, in some cases, the parser would fail to read
enough characters from the input stream, and would consequently fail. - In reporting a parse exception on an input stream, in some cases the
code that calculated the position in the stream of the error would
raise an IO error, which wasn’t caught. - Fixed Text so that using Elements outside of a Document wouldn’t
cause errors. - US-ASCII encoding was incorrectly outputing 8-bit ASCII. (fix from
Stefan Scholl) - Mikko Tiihonen contributed encoding support for CP-1252 and
ISO-8859-15 - Fixed XPath bug where any string equaled zero (ruby converts all
non-numeric strings to 0, whereas XPath says they’re NaN) - Added a test for descendant-or-self ordering
- Added a test for deep cloning
- Added a getter for the source in BaseParser
- Replaced #inspect in both Element and Attribute. This should make
stack traces nicer. - Fixed a bug in ParseException. Line numbers in Ruby IO are a real
pain in the ass! - Functions::number is more correct
- Added Kou’s backward-compatability fix for DocTypes using a Source as
an argument to the constructor. This constructor has been deprecated;
there isn’t any reason
for it to exist, except for backwards compatability. I will probably
remove it in the future. - Fixed indentation with CDATA bug, #23
Ciao,
— SER