5.8.8でテストが失敗しましたが、理由がわかりません。特に、より新しいバージョンで機能する場合(おそらくそれは単なるバグでした)(完全なコードへのリンクは次のとおりです)
use strict;
use warnings;
use Test::More;
my $fname = 'Fo';
my $content = do { local $/ ; <DATA> };
like $content, qr/^$fname $/xms, q[includes first name];
done_testing;
__DATA__
use strict;
use warnings;
use Test::More;
# generated by Dist::Zilla::Plugin::Test::PodSpelling bootstrapped version
eval "use Test::Spelling 0.12; use Pod::Wordlist::hanekomu; 1" or die $@;
add_stopwords(<DATA>);
all_pod_files_spelling_ok('bin', 'lib');
__DATA__
Fo
oer
bar
最近のすべてのバージョンのperlでは、これは正常に機能します。しかし、5.8.8ではテストは失敗します。^
とコードを削除することで、$
Perlの正規表現エンジンが無視しているように見えます/m
が、ドキュメントにはサポートされていると記載されています。
なぜこれが機能しないのですか?そしてそれを修正する最も正しい方法は何ですか?(注:テストでは、これらの要素が単独で一列に並んでいることを確認する必要があると思います)