YAML :: dump中的ArgumentError如果(看起来像a)日期无效

时间:2012-03-17 15:12:56

标签: ruby yaml

有没有办法让Psych变得有点笨拙?如果一个字符串匹配某个正则表达式,它会尝试将其转换为日期并失败。到目前为止,我已切换到Syck进行序列化,但它已不再维护,我正在寻找更好的解决方案。

这是一个正在发生的事情的例子:

s = "2222-33-44" # => "2222-33-44"} 
require 'yaml' # => true 
YAML::dump s # ArgumentError: invalid date
YAML::ENGINE.yamler = 'syck' # => "syck" 
YAML::dump s # => "--- \"2222-33-44\"\n"

1 个答案:

答案 0 :(得分:0)

我发现它是known bug。它已修复,但看起来version in RubyGems不包含修复程序。

同样,由于git repository没有合适的.gemspec,因此从repo安装起来并不容易。

您可以分叉回购并添加适当的.gemspec并使用Gemfile {{1}}。

另外,您可以请points to your fork repo发布修复程序。