Hey guys,

I stumbled across what is a bug in the YAML library.  It does not
properly encode certain multi-line strings.  Fire up irb, and try the
following:

>> require 'yaml'
=> true
>> s3 = "\n  Do I work?\nNo indent"

=> "\n  Do I work?\nNo indent"
>> YAML.load(YAML.dump(s3))

ArgumentError: syntax error on line 3, col 0: `No indent'
        from /opt/ruby-enterprise-1.8.6-20080810/lib/ruby/1.8/yaml.rb:
133:in `load'
        from /opt/ruby-enterprise-1.8.6-20080810/lib/ruby/1.8/yaml.rb:
133:in `load'
        from (irb):3

I've confirmed it's broken in both 1.8.6.p111, and REE 1.8.6.p287.

I wrote up a pretty thorough exploration of this bug in a blog post
describing the problem and offering a (sub-optimal) patch:
http://blog.smartlogicsolutions.com/2008/09/04/ruby-patch-to-fix-broken-yamldump-for-multi-line-strings-stringto_yaml/

I'll be out of town most of this weekend, but will try to check back
in intermittently to carry on a conversation if anyone bites.

-John