perl5301delta - perl v5.30.1 での変更点
この文書は 5.30.0 リリースと 5.30.1 リリースの変更点を記述しています。
5.29.0 のような以前のリリースから更新する場合は、まず 5.29.0 と 5.30.0 の違いについて記述している perl5300delta を読んでください。
故意に、5.30.1 から互換性がなくなるようにした変更はありません。 もし 5.30.1 との互換性がなければ、それはバグですので、報告をお願いします。 以下の "Reporting Bugs" を参照してください。
Module::CoreList はバージョン 5.20190522 から 5.20191110 に更新されました。
私たちはこの文書で挙げられた変更を反映するように文書を更新しようとしています。 もし抜けている物を発見したら、 perlbug@perl.org にメールしてください。
さらに、GitHub を新しい中央リポジトリとして参照することと、新しい GitHub プルリクエストワークフローを記述するために更新しています。
ECHO
マクロが定義されました。 これは、もともと FreeBSD のために変更する dtrace
規則で使われていて、 FreeBSD の make は事前定義しているようです。 Solaris の make は ECHO
は事前定義していないので、Solaris では この規則が壊れていました。 [perl #17057]
このリリースのその他の追加と変更を反映するようにテストを追加および 変更しました。
ロケールのテストは Windows のバグのために、およびロケール名が現在の コードページで正当にエンコードされていない場合に CRT が例外を投げるために、 Win32 でクラッシュすることがありました。
二番目に対応するため、ロケール名を自分自身でデコードするように、そして UTF-8 としてデコードするようになりました。
$)
を設定するとき、適切な権限がある場合は補助グループ ID を 適切に設定するようになりました。 [perl #17031]
readline @foo
はスカラコンテキストで @foo
を評価するようになりました。 以前は、これはリストコンテキストで評価され、 readline() はスタックから一つしか引数をポップしないので、 スタックがアンダーフローしたり、想定しない値を残したりすることがありました。 [perl #16929]
ターゲットの SV がシグナルハンドラによって変更された場合、 sv_gets() はよりよく回復するようになりました。 [perl #16960]
非 SVf_UTF8
文字列を Unicode リテラルを含む正規表現でマッチングすると、 マッチングする毎に SV をリークすることがありました。 [perl #17140]
sprintf("%.*a", -10000, $x)
は、負の精度値の扱いを間違っていたために バッファオーバーフローを引き起こしていました。 [perl #16942]
リファレンスに対する scalar()
はコンパイル中に間違ったアサーション失敗を 引き起こすことがありました。 [perl #16969]
Perl 5.30.1 は、Perl 5.30.0 以降、14 人の作者によって、 67 のファイルに約 4,700 行の変更を加えて、 約 6 ヶ月開発されてきました。
自動生成ファイル、文書、リリースツールを除くと、20 の .pm, .t, .c, .h ファイルに約 910 行の変更を加えました。
Perl は、活気のあるユーザーと開発者のコミュニティのおかげで 30 年を超えて 繁栄しています。 以下の人々が、Perl 5.30.1 になるための改良に貢献したことが分かっています:
Chris 'BinGOs' Williams, Dan Book, David Mitchell, Hugo van der Sanden, James E Keenan, Karen Etheridge, Karl Williamson, Manuel Mausz, Max Maischein, Nicolas R., Sawyer X, Steve Hay, Tom Hukins, Tony Cook.
これはバージョンコントロール履歴から自動的に生成しているので、ほぼ確実に 不完全です。 特に、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 ファイル。