[ruby-core:63025] [Backport200 - Backport #9915] Encoding error when inspecting an array containing Pathname with UTF-8 characters

From: usa@...
Date: 2014-06-09 17:16:08 UTC
List: ruby-core #63025
Issue #9915 has been updated by Usaku NAKAMURA.

Tracker changed from Bug to Backport
Project changed from ruby-trunk to Backport200

----------------------------------------
Backport #9915: Encoding error when inspecting an array containing Pathname=
 with UTF-8 characters
https://bugs.ruby-lang.org/issues/9915#change-47111

* Author: Jack Nagel
* Status: Open
* Priority: Normal
* Assignee:=20
----------------------------------------
Given:

```
$ locale
LANG=3D"en_US.UTF-8"
LC_COLLATE=3D"en_US.UTF-8"
LC_CTYPE=3D"en_US.UTF-8"
LC_MESSAGES=3D"en_US.UTF-8"
LC_MONETARY=3D"en_US.UTF-8"
LC_NUMERIC=3D"en_US.UTF-8"
LC_TIME=3D"en_US.UTF-8"
LC_ALL=3D"en_US.UTF-8"
$ cat t.rb
# encoding: UTF-8
require "pathname"
puts [Pathname.new("QQ=E9=9F=B3=E4=B9=90.app")].inspect
```

this script produces the following on Ruby 1.9.3:

```
[#<Pathname:QQ=E9=9F=B3=E4=B9=90.app>]
```

on Ruby 2.0.0:

```
t.rb:3:in `inspect': inspected result must be ASCII only or use the same en=
coding with default external (Encoding::CompatibilityError)
	from t.rb:3:in `<main>'
```

and on Ruby 2.1.1:

```
[#<Pathname:QQ=E9=9F=B3=E4=B9=90.app>]
```

I believe Ruby 2.0.0 should produce the same result as 1.9.3 and 2.1.1.



--=20
https://bugs.ruby-lang.org/

In This Thread

Prev Next