Syck.dump空哈希抛出IO异常

时间:2016-05-03 11:43:27

标签: ruby yaml ruby-1.9.3 syck

我正在忙于编写数据迁移,这将允许我们将yyler从Syck更改为Psych。为此,我需要迁移数据库中的一些列。我遇到了以下奇怪的边缘情况

 (rdb:1) Syck.dump({})
    *** NoMethodError Exception: undefined method `[]' for #<StringIO:0x007f9142eb7438>
/Users/donovanthomson/.rvm/rubies/ruby-1.9.3-p545/lib/ruby/1.9.1/psych/deprecated.rb:21:in `quick_emit'
/Users/donovanthomson/.rvm/rubies/ruby-1.9.3-p545/lib/ruby/1.9.1/syck/rubytypes.rb:16:in `to_yaml'
/Users/donovanthomson/.rvm/rubies/ruby-1.9.3-p545/lib/ruby/1.9.1/syck/rubytypes.rb:451:in `to_yaml'
/Users/donovanthomson/.rvm/rubies/ruby-1.9.3-p545/lib/ruby/1.9.1/syck.rb:119:in `dump'

所以显然空哈希不能使用Syck转储?

1 个答案:

答案 0 :(得分:0)

原来我做了一些非常愚蠢的事情,我在运行迁移之前已经在本地删除了Syck依赖项。