Issue #9300 has been updated by Eregon (Benoit Daloze). It should as well round-trip data across versions, which it seems it does in this case. Yet, I find it worrying quoting is changed in a minor version, should not the YAML spec be clear about this? ---------------------------------------- Bug #9300: YAML Regression Concerning Escaping of Strings https://bugs.ruby-lang.org/issues/9300#change-43908 Author: schneems (Richard Schneeman) Status: Open Priority: Normal Assignee: tenderlovemaking (Aaron Patterson) Category: Target version: current: 2.2.0 ruby -v: 2.1.0 Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN, 2.1: UNKNOWN =begin When you run this code against Ruby 2.1.0 and previous versions you get different results: require 'YAML' yaml1 = {"key" => %Q{<%= ENV["PATH"] %>} }.to_yaml puts yaml1 Ruby 2.1.0 incorrectly escapes the quote --- key: "<%= ENV[\"PATH\"] %>" While previous versions do not. Here is my original document for debugging this issue: https://gist.github.com/schneems/8127922 =end -- http://bugs.ruby-lang.org/