Check Text-Xslate-2.0010 if you are using Data::Section::Simple with Xslate
Text::Xslate 2.0010 contains serious issue fix around 5.18 incompatibility.
Perl 5.18+ does not allows "Wide characters" as PerlIO::scalar's input string. It says Strings with code points over 0xFF may not be mapped into in-memory file handles
.
Older Text::Xslate using PerlIO::scalar for processing vpath. vpath is mostly using with Data::Section::Simple. And so, if you are using Data::Section::Simple + older Text::Xslate like following, you got an error:
#!perl -w
use strict;
use utf8; # <--------------- utf8!
use Text::Xslate;
use Data::Section::Simple;
my $tx = Text::Xslate->new(
path => [
Data::Section::Simple
->new()->get_data_section(),
],
);
print $tx->render('foo.tx');
__DATA__
@@ foo.tx
<html>
<body>
あいうえお
</body>
</html>
Of course, it's not Data::Section::Simple specific things. But vpath feature was introduced for D::S::S.
If you are using vpath feature, I suggest to upgrade Text::Xslate to latest.
Ref.