use utf8;
$ENV{LANG} = 'ru_RU.UTF-8';
use open IO => ':locale'; # I tried ':utf8' instead but got warnings
| [reply] [d/l] [select] |
The bugs to which you linked are Encode's, not encoding. While they may effect use encoding, I was referring to use encoding's proper flaws. Now, I can't remember exactly what they were, but you can search the P5P mailing list for the conversation.
Depending on what you want to do,
# Use expected encoding for STDIN/OUT/ERR
use open ':std', ':locale';
# Use UTF-8 for STDIN/OUT/ERR
use open ':std', ':encoding(UTF-8)';
# Use UTF-8 for file IO
use open IO => ':encoding(UTF-8)';
:utf8 has a security vulnerability for input.
| [reply] [d/l] [select] |