Skip to content
[ABANDONED] A drop-in replacement for Builder::XmlMarkup which uses libxml for speed and security.
Ruby
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
lib
spec
CHANGELOG
MIT-LICENSE
README.markdown
Rakefile

README.markdown

FasterBuilder

Differences from Builder::XmlMarkup

  • Does not allow for unescaped text to be appended to element contents:

    xml.dip do
      xml << "<blorp>"
    end
    xml.target! #=> "<dip>&lt;blorp&gt;</dip>" instead of <dip><blorp></dip>
    

    This is a security/validity issue and isn't going to change.

  • Does not allow XML prologs to be inserted in the middle of the document:

    xml.dip do
      xml.instruct!
    end
    xml.target! #=> '<?xml version="1.0" encoding="UTF-8"?>\n<dip/>'
    

    This is a security/validity issue and isn't going to change.

  • Does not allow for unescaped symbol attribute values:

    xml.dingo(:name => :"SUPA<<FREAK")
    xml.target! #=> '<dingo name="SUPA&lt;&lt;FREAK"/>'
    

    This is a security/validity issue and isn't going to change.

  • Doesn't detect and avoid double-escaping. (I'm working on this.)

  • Doesn't generate declarations. (I'm working on this.)
  • Doesn't generate non-XML prologs. (I'm working on this.)
  • Doesn't generate standalone XML prologs. (I'm working on this.)
  • Doesn't support indentation options. (I'm working on this.)
Something went wrong with that request. Please try again.