Issue #14863 has been updated by nobu (Nobuyoshi Nakada).


xsimov (Xavier Sim) wrote:
> My proposal to return the string in the locale encoding of the running ruby is so that the encoding returned by `#join` is consistent, since most of the times I see `#join` used it contains UTF-8 strings.

You seem confusing the locale encoding and the source code encoding, but they are different things.
The latter is UTF-8 by default now, but the former is not.

What problems are you trying solve by this proposal?



----------------------------------------
Bug #14863: Array#join with empty array returns empty string always in US-ASCII encoding
https://bugs.ruby-lang.org/issues/14863#change-72602

* Author: xsimov (Xavier Sim)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 2.4.2
* Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN
----------------------------------------
Calling
~~~
irb(main):001:0> [].join.encoding
=> #<Encoding:US-ASCII>
~~~ 
returns an empty string and that empty string is always in US-ASCII encoding.

The expected result is that the returned empty string would be in UTF-8 since it seems to be the default for Ruby strings since 2.0.





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

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>