perl5282delta - perl v5.28.2 での変更点
この文書は 5.28.1 リリースと 5.28.2 リリースの変更点を記述しています。
5.28.0 のような以前のリリースから更新する場合は、まず 5.28.0 と 5.28.1 の違いについて記述している perl5281delta を読んでください。
Common 用字にはいくつかの数字の集合があります。 [0-9]
は最も親しまれているものです。 しかし [\x{FF10}-\x{FF19}]
(FULLWIDTH DIGIT ZERO - FULLWIDTH DIGIT NINE) もあり、また MATHEMATICAL DOUBLE-STRUCK DIGIT のような 数学記法のためのいくつかの集合があります。 これらの集合のいずれも、たとえばギリシャ語の用字並びに現れることが出来ます。 しかし以前の設計は ASCII 数字 [0-9]
以外の全てを見落としており、 設計には欠陥がありました。 これは修正され、バグ修正と非互換性の両方をもちます。
ある並びの中の全ての数字は同じ集合の 10 の数字である必要があるのは そのままです。
Module::CoreList はバージョン 5.20181129_28 から 5.20190419 に更新されました。
PerlIO::scalar はバージョン 0.29 から 0.30 に更新されました。
Storable はバージョン 3.08 から 3.08_01 に更新されました。
初期の x64 コンパイラおよびツールを使った Windows Server 2003 SP1 プラットフォーム SDK ビルドは Perl 5.27.9 から 誤って壊れていました。 これは修正されました。
Perl の Mac OS X での -Duseshrplib
ビルドのビルドとテストの処理は Mac OS X システム整合性保護 (SIP) と互換性を持つようになりました。
SIP は /bin (およびその他のいくつかの場所) にあるバイナリに DYLD_LIBRARY_PATH
環境変数を渡すのを妨げます。 私たちの用途では、これは DYLD_LIBRARY_PATH
がシェルに渡されるのを妨げ、 この変数がテストやビルドの処理に渡されるのを妨げるので、 perl
を実行しても libperl.dylib を見つけられません。
これを回避するために、perl 実行ファイルの初期ビルドは ビルドディレクトリに libperl.dylib があることを想定し、 それからライブラリパスがインストール中にインストールされたライブラリを 示すように調整されます。
大域破壊中にまだその場編集が作業中で、($?
に保管されている) プロセス終了コードがゼロの場合、 perl はその場編集が成功したものとして扱い、 入力ファイルを出力されたファイルで置き換えるようになりました。
これにより次のようなコードは:
perl -i -ne 'print "Foo"; last'
入力ファイルを置き換える一方、次のようなコードは:
perl -i -ne 'print "Foo"; die'
置き換えません。 [perl #133659] で部分的に解決しました。
Perl 5.28 での退行により、次のコードは失敗していました:
close(STDIN); open(CHILD, "|wc -l")'
なぜなら子の標準入力は実行時に閉じられているからです。 これは修正されました。
pack "u", "invalid uuencoding"
は適切に NUL 終端された長さ 0 の SV を 生成するようになりました。
フォーマットのコンパイルに失敗するとコンパイルを中断するようになりました。 その他の部分パース中のエラーと同様、これはパーサをおかしな状態のままに することがあり、コンパイルを続行すると perl がクラッシュすることがありました。
"Any set of digits in the Common script are legal in a script run of another script" を参照してください。
Perl 5.28.2 は、Perl 5.28.1 以降、13 人の作者によって、 75 のファイルに約 2,500 行の変更を加えて、 約 4 ヶ月開発されてきました。
自動生成ファイル、文書、リリースツールを除くと、29 の .pm, .t, .c, .h ファイルに約 1,200 行の変更を加えました。
Perl は、活気のあるユーザーと開発者のコミュニティのおかげで 30 年を超えて 繁栄しています。 以下の人々が、Perl 5.28.2 になるための改良に貢献したことが分かっています:
Aaron Crane, Abigail, Andy Dougherty, David Mitchell, Karen Etheridge, Karl Williamson, Leon Timmermans, Nicolas R., Sawyer X, Steve Hay, Tina Müller, Tony Cook, Zak B. Elep.
これはバージョンコントロール履歴から自動的に生成しているので、ほぼ確実に 不完全です。 特に、Perl バグトラッカーに問題を報告をしてくれた (とてもありがたい)貢献者の 名前を含んでいません。
このバージョンに含まれている変更の多くは、Perl コアに含まれている CPAN モジュール由来のものです。 私たちは Perl の発展を助けている CPAN コミュニティ全体に感謝します。
全ての Perl の歴史的な貢献者のより完全な一覧については、どうか Perl ソース 配布に含まれている AUTHORS を参照してください。
もしバグと思われるものを見つけたら、 https://rt.perl.org/ にある perl バグ データベースを確認してください。 Perl ホームページ、http://www.perl.org/ にも情報があります。
もしまだ報告されていないバグだと確信したら、そのリリースに含まれている perlbug プログラムを実行してください。 バグの再現スクリプトを十分小さく、しかし有効なコードに切りつめることを 意識してください。 バグレポートは perl -V
の出力と一緒に perlbug@perl.org に送られ Perl porting チームによって解析されます。
報告しようとしているバグがセキュリティに関するもので、公開されている メーリングリストに送るのが不適切なものなら、バグの報告方法の詳細について "SECURITY VULNERABILITY CONTACT INFORMATION" in perlsec を参照してください。
もし Perl 5 でなされた作業について Perl 5 Porters に感謝したいと考えたなら、 perlthanks
プログラムを実行することでそうできます:
perlthanks
これは Perl 5 Porters メーリングリストにあなたの感謝の言葉をメールします。
変更点の完全な詳細を見る方法については Changes ファイル。
Perl のビルド方法については INSTALL ファイル。
一般的なことについては README ファイル。
著作権情報については Artistic 及び Copying ファイル。