Backport #1331
Updated by jeremyevans0 (Jeremy Evans) over 5 years ago
=begin YAML misformats the dump of hashes where the key is a user-defined ruby object. For instance: class A; end YAML.dump({A.new => :a}) Produces: --- !ruby/object:A ? {} : :a Which cannot be reloaded as YAML because the question mark is in the wrong place. The correctly formatted YAML is: --- ? !ruby/object:A {} : :a I have attached a couple tests with a patch illustrating how to work around this problem using gsub. Obviously a string substitution is not a long term solution, but I hope it illustrates what needs to be fixed. =end