Actions
Bug #17556
closedruby 2.7.2 ::YAML.dump ArgumentError: invalid value for Integer(): "20210101_"
Description
再現方法
ruby '2.7.2'
'rails', '~> 6.0.3'
-
利用している ruby のバージョン(ruby -v)
2.7.2 -
再現スクリプト
$ bundle exec rails c [1] pry(main)> ::YAML.dump '20210101_' ArgumentError: invalid value for Integer(): "20210101_" from /Users/xxxx/.rbenv/versions/2.7.2/lib/ruby/2.7.0/psych/scalar_scanner.rb:104:in `Integer'
-
再現方法から得られた結果
'20210101_'や'2021__0101'は文字列ですので、elsif string.match?(INTEGER)分岐に入るのは良いかどうか不明ですが、
整数として処理する場合、「,」だけは足りないでしょう。def parse_int string Integer(string.gsub(/[,]/, '')) end
-
期待する結果とその理由
エラーにならないように。
Updated by byroot (Jean Boussier) almost 4 years ago
The fix was merged in https://github.com/ruby/psych/pull/438
Updated by jeremyevans0 (Jeremy Evans) almost 4 years ago
- Status changed from Open to Closed
Updated by kicktheken (Kenneth Chan) almost 4 years ago
Hello, when will this fix be available in the ruby 2.7 release branch?
Actions
Like0
Like0Like0Like0