[#46930] [ruby-trunk - Bug #6825][Open] forking and pthread_cond_timedwait: Invalid argument (EINVAL) on OS X / 1.9.3-p194 — "xentronium (Mark A)" <markizko@...>

29 messages 2012/08/02

[#46974] [ruby-trunk - Bug #6830][Assigned] test failure test_constants(OpenSSL::TestConfig) [/ruby/test/openssl/test_config.rb:27] on Mac + homebrew — "kosaki (Motohiro KOSAKI)" <kosaki.motohiro@...>

17 messages 2012/08/04

[#46975] [ruby-trunk - Bug #6831][Assigned] test_getpwuid() on Mountain Lion — "kosaki (Motohiro KOSAKI)" <kosaki.motohiro@...>

12 messages 2012/08/04

[#46996] [ruby-trunk - Bug #6836][Assigned] Improve File.expand_path performance in Windows — "luislavena (Luis Lavena)" <luislavena@...>

15 messages 2012/08/04

[#47036] [ruby-trunk - Feature #6841][Open] Shorthand for Assigning Return Value of Method to Self — "wardrop (Tom Wardrop)" <tom@...>

18 messages 2012/08/07

[#47108] [ruby-trunk - Feature #6852][Open] [].transpose should behave specially — "boris_stitnicky (Boris Stitnicky)" <boris@...>

13 messages 2012/08/10

[#47138] [ruby-trunk - Bug #6861][Open] ERB::Util.escape_html is not escaping single quotes — "spastorino (Santiago Pastorino)" <santiago@...>

14 messages 2012/08/12

[#47163] [ruby-trunk - Bug #6865][Open] GC::Profiler.report might create a huge String and invoke a few GC cycles — "Eregon (Benoit Daloze)" <redmine@...>

9 messages 2012/08/13

[#47189] [ruby-trunk - Feature #6868][Open] Make `do` in block syntax optional when the block is the last argument of a method and is not an optional argument — "alexeymuranov (Alexey Muranov)" <redmine@...>

8 messages 2012/08/14

[#47243] [ruby-trunk - Feature #6895][Open] TracePoint API — "ko1 (Koichi Sasada)" <redmine@...>

27 messages 2012/08/20

[#47267] [ruby-trunk - Bug #6903][Open] [[Ruby 1.9:]] --enable-load-relative broken on systems with /lib64 — "mpapis (Michal Papis)" <mpapis@...>

11 messages 2012/08/22

[#47309] [ruby-trunk - Bug #6929][Open] Documentation for Ripper — "zzak (Zachary Scott)" <zachary@...>

16 messages 2012/08/25

[#47345] [ruby-trunk - Feature #6946][Open] FIPS support? — "vo.x (Vit Ondruch)" <v.ondruch@...>

35 messages 2012/08/28

[ruby-core:47293] Re: [ruby-trunk - Feature #6910][Assigned] Loading syck's broken yaml with psych

From: Aaron Patterson <tenderlove@...>
Date: 2012-08-23 04:09:26 UTC
List: ruby-core #47293
On Thu, Aug 23, 2012 at 11:04:22AM +0900, naruse (Yui NARUSE) wrote:
> 
> Issue #6910 has been reported by naruse (Yui NARUSE).
> 
> ----------------------------------------
> Feature #6910: Loading syck's broken yaml with psych
> https://bugs.ruby-lang.org/issues/6910
> 
> Author: naruse (Yui NARUSE)
> Status: Assigned
> Priority: Normal
> Assignee: tenderlovemaking (Aaron Patterson)
> Category: ext
> Target version: 2.0.0
> 
> 
> You know, syck outputs wrong yaml.
> For example, syck works as following:
> 
> ruby-1.9.2 > ["\u3042",Time.at(0).to_s].to_yaml
> => "--- \n- \"\\xE3\\x81\\x82\"\n- 1970-01-01 09:00:00 +09:00\n"
> 
> It should be
> 
> ruby-1.9.3 > ["\u3042",Time.at(0).to_s].to_yaml
> => "---\n- あ\n- '1970-01-01 09:00:00 +0900'\n"
> 
> syck's dump of Unicode string is interpreted as "\u00E3\u0081\u0082".
> syck's dump of Time like string is interpreted as Time.
> It is hard to migrate old data to new and correct data, so it is useful if psych has a such compatibility option.

It's possible to have both syck and psych loaded in 1.9.3 (also 1.9.2 I
think):

    require 'syck'
    require 'yaml'
    require 'psych'
    
    def convert legacy
      Psych.dump YAML.load legacy
    end
    
    legacy = YAML.dump ["\u3042",Time.at(0).to_s]
    
    puts convert legacy

I'm pushing syck to a gem so people can do this even further in the
future.

-- 
Aaron Patterson
http://tenderlovemaking.com/

In This Thread