Join GitHub today
Properly represent all encodings in methods/constants/variables/symbols #4965
JRuby has had a limitation up through JRuby 9.1.x where some indentifiers which do not properly map to a Java charset are not possible beacuse internally we store all identifiers as Java Strings.
The solution to this is partially to move as much internally to using ByteList as we can. For things where this would not work out well we will still use java.lang.String but we will store those strings as an iso_8859_1 raw piece of data. Anything which accesses those String will need also to have their encoding and if they don't we will assume they are utf-8 data. This largely will allow things we could not do in the past to start working but things from the past which did work will still work since pretty much everything is utf-8.