Project

General

Profile

Actions

Bug #15718

closed

YAML raises error when dumping strings with UTF32 encoding

Added by marcandre (Marc-Andre Lafortune) about 5 years ago. Updated about 3 years ago.

Status:
Closed
Target version:
-
[ruby-core:91903]

Description

ruby -r yaml -e "p YAML.dump( ''.force_encoding('UTF-32LE') )"

Traceback (most recent call last):
	4: from -e:1:in `<main>'
	3: from /Users/work/.rvm/rubies/ruby-2.6.1/lib/ruby/2.6.0/psych.rb:513:in `dump'
	2: from /Users/work/.rvm/rubies/ruby-2.6.1/lib/ruby/2.6.0/psych/visitors/yaml_tree.rb:118:in `push'
	1: from /Users/work/.rvm/rubies/ruby-2.6.1/lib/ruby/2.6.0/psych/visitors/yaml_tree.rb:136:in `accept'
/Users/work/.rvm/rubies/ruby-2.6.1/lib/ruby/2.6.0/psych/visitors/yaml_tree.rb:298:in `visit_String': incompatible encoding regexp match (US-ASCII regexp with UTF-32LE string) (Encoding::CompatibilityError)

Surprisingly, this works in Ruby 2.4.x, but not in 2.2, 2.3, 2.5 nor 2.6!


Files

yamldumputf32encodingerror.patch (2.55 KB) yamldumputf32encodingerror.patch rubenochiavone (Ruben Chiavone), 03/21/2019 02:11 PM
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0Like0