Нету слов.

Работаю над проблемой "обновить perl в проекте"
наткнулся на то что в Encode был такой код

sub decode_utf8($;$) {
    my ( $octets, $check ) = @_;
    return $octets if is_utf8($octets);
    return undef unless defined $octets;
    $octets .= '' if ref $octets;
    $check   ||= 0;
    $utf8enc ||= find_encoding('utf8');
    my $string = $utf8enc->decode( $octets, $check );
    $_[0] = $octets if $check and !ref $check and !( $check & LEAVE_SRC() );
    return $string;
}


А теперь вот такой:

sub decode_utf8($;$) {
    my ( $octets, $check ) = @_;
    return undef unless defined $octets;
    $octets .= '';
    $check   ||= 0;
    $utf8enc ||= find_encoding('utf8');
    my $string = $utf8enc->decode( $octets, $check );
    $_[0] = $octets if $check and !ref $check and !( $check & LEAVE_SRC() );
    return $string;
}


То есть если раньше код работал нормально:

use utf8;
use Encode qw(decode_utf8);
$bla = decode_utf8('привет, медвед')


То на свежем Perl валится.
Поглядел я в заголовки модуля, автор некто - danko gay.

И вот собственно скажите, можно ли к геям относиться нормально? они же
вредители все поголовно!

PS: в Mojolicious тоже гомики: запретили использовать utf8 в
тестах.

use utf8;
use open qw(:std :utf8);
use Test::More;
use Test::Mojo;

print "А теперь потестим\n";
ok 1, 'тест Test::More пройден';
Test::Mojo->new('MyApp')->get_ok('/', 'тест пройден');

теперь не работает

куды мир катится?
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org

Ответить