Release 2.1.1 of Builder is mainly a bug fix release.
Added reveal
capability to BlankSlate.
Fixed a bug in BlankSlate where including a module into Object could cause methods to leak into BlankSlate.
Fixed typo in XmlMarkup class docs (from Martin Fowler).
Fixed test on private methods to differentiate between targetted and untargetted private methods.
Removed legacy capture of @self in XmlBase (@self was used back when we used instance eval).
Added additional tests for global functions (both direct and included).
Several misc internal cleanups, including rearranging the source code tree.
NOTE: The escaping attribute values by default is different than in previous releases of Builder. This makes version 2.0.x somewhat incompatible with the 1.x series of Builder. If you use “&”, “<”, or “>” in attributes values, you may have to change your code. (Essentially you remove the manual escaping. The new way is easier, believe me).
Builder::XmlMarkup is a library that allows easy programmatic creation of XML markup. For example:
builder = Builder::XmlMarkup.new(:target=>STDOUT, :indent=>2) builder.person { |b| b.name("Jim"); b.phone("555-1234") }
will generate:
<person> <name>Jim</name> <phone>555-1234</phone> </person>
The easiest way to get and install builder is via RubyGems …
gem install builder (you may need root/admin privileges)
Martin Fowler for spotting some typos in the documentation.
– Jim Weirich