=encoding euc-jp =head1 NAME =begin original perl587delta - what is new for perl v5.8.7 =end original perl587delta - perl v5.8.7 での変更点 =head1 DESCRIPTION =begin original This document describes differences between the 5.8.6 release and the 5.8.7 release. =end original このドキュメントは 5.8.6 リリースと 5.8.7 リリースの変更点を記述しています。 =head1 Incompatible Changes (互換性のない変更) =begin original There are no changes incompatible with 5.8.6. =end original 5.8.6 と互換性のない変更はありません。 =head1 Core Enhancements (Core の拡張) =head2 Unicode Character Database 4.1.0 =begin original The copy of the Unicode Character Database included in Perl 5.8 has been updated to 4.1.0 from 4.0.1. See L for the notable changes. =end original Perl 5.8 に含まれる Unicode Character Database は 4.0.1 から 4.1.0 に 更新されました。 注目するべき変更点については L を 参照してください。 =head2 suidperl less insecure (suidperl がより安全に) =begin original A pair of exploits in C involving debugging code have been closed. =end original デバッグコードに関する C の 2 つの脆弱性が修正されました。 =begin original For new projects the core perl team strongly recommends that you use dedicated, single purpose security tools such as C in preference to C. =end original 新しいプロジェクトのためには、C よりむしろ、Cのような専用で 単一目的のセキュリティツールを使うことをコア perl チームは強く勧めます。 =head2 Optional site customization script =begin original The perl interpreter can be built to allow the use of a site customization script. By default this is not enabled, to be consistent with previous perl releases. To use this, add C<-Dusesitecustomize> to the command line flags when running the C script. See also L. =end original perl インタプリタはサイトカスタマイズスクリプトを使うように ビルドできるようになりました。 デフォルトでは、以前の perl と同様にこの機能は無効化されています。 これを使うためには、C を実行するときに C<-Dusesitecustomize> コマンドラインオプションを追加します。 L も参照してください。 =head2 C is now much smaller. (C がはるかに小さく) =begin original C is now about 3K rather than 32K, with the infrequently used code and C<%Config> values loaded on demand. This is transparent to the programmer, but means that most code will save parsing and loading 29K of script (for example, code that uses C). =end original C は、あまり使われないコードと C<%Config> の値を オンデマンドで読み込むことで、サイズがおよそ 32K から 3K になりました。 これはプログラマにとっては透過的ですが、ほとんどのコード (例えば、C を使うコード)で 29K のスクリプトを読み込み、 パースする必要がなくなることを意味します。 =head1 Modules and Pragmata (モジュールとプラグマ) =over 4 =item * =begin original B upgraded to version 1.09 =end original B はバージョン 1.09 に更新されました。 =item * =begin original base upgraded to version 2.07 =end original base はバージョン 2.07 に更新されました。 =item * =begin original bignum upgraded to version 0.17 =end original bignum はバージョン 0.17 に更新されました。 =item * =begin original bytes upgraded to version 1.02 =end original bytes はバージョン 1.02 に更新されました。 =item * =begin original Carp upgraded to version 1.04 =end original Carp はバージョン 1.04 に更新されました。 =item * =begin original CGI upgraded to version 3.10 =end original CGI はバージョン 3.10 に更新されました。 =item * =begin original Class::ISA upgraded to version 0.33 =end original Class::ISA はバージョン 0.33 に更新されました。 =item * =begin original Data::Dumper upgraded to version 2.121_02 =end original Data::Dumper はバージョン 2.121_02 に更新されました。 =item * =begin original DB_File upgraded to version 1.811 =end original DB_File はバージョン 1.811 に更新されました。 =item * =begin original Devel::PPPort upgraded to version 3.06 =end original Devel::PPPort はバージョン 3.06 に更新されました。 =item * =begin original Digest upgraded to version 1.10 =end original Digest はバージョン 1.10 に更新されました。 =item * =begin original Encode upgraded to version 2.10 =end original Encode はバージョン 2.10 に更新されました。 =item * =begin original FileCache upgraded to version 1.05 =end original FileCache はバージョン 1.05 に更新されました。 =item * =begin original File::Path upgraded to version 1.07 =end original File::Path はバージョン 1.07 に更新されました。 =item * =begin original File::Temp upgraded to version 0.16 =end original File::Temp はバージョン 0.16 に更新されました。 =item * =begin original IO::File upgraded to version 1.11 =end original IO::File はバージョン 1.11 に更新されました。 =item * =begin original IO::Socket upgraded to version 1.28 =end original IO::Socket はバージョン 1.28 に更新されました。 =item * =begin original Math::BigInt upgraded to version 1.77 =end original Math::BigInt はバージョン 1.77 に更新されました。 =item * =begin original Math::BigRat upgraded to version 0.15 =end original Math::BigRat はバージョン 0.15 に更新されました。 =item * =begin original overload upgraded to version 1.03 =end original overload はバージョン 1.03 に更新されました。 =item * =begin original PathTools upgraded to version 3.05 =end original PathTools はバージョン 3.05 に更新されました。 =item * =begin original Pod::HTML upgraded to version 1.0503 =end original Pod::HTML はバージョン 1.0503 に更新されました。 =item * =begin original Pod::Perldoc upgraded to version 3.14 =end original Pod::Perldoc はバージョン 3.14 に更新されました。 =item * =begin original Pod::LaTeX upgraded to version 0.58 =end original Pod::LaTeX はバージョン 0.58 に更新されました。 =item * =begin original Pod::Parser upgraded to version 1.30 =end original Pod::Parser はバージョン 1.30 に更新されました。 =item * =begin original Symbol upgraded to version 1.06 =end original Symbol はバージョン 1.06 に更新されました。 =item * =begin original Term::ANSIColor upgraded to version 1.09 =end original Term::ANSIColor はバージョン 1.09 に更新されました。 =item * =begin original Test::Harness upgraded to version 2.48 =end original Test::Harness はバージョン 2.48 に更新されました。 =item * =begin original Test::Simple upgraded to version 0.54 =end original Test::Simple はバージョン 0.54 に更新されました。 =item * =begin original Text::Wrap upgraded to version 2001.09293, to fix a bug when wrap() was called with a non-space separator. =end original Text::Wrap はバージョン 2001.09293 に更新され、 warp() が非スペースセパレータで呼ばれた場合のバグが修正されました。 =item * =begin original threads::shared upgraded to version 0.93 =end original threads::shared はバージョン 0.93 に更新されました。 =item * =begin original Time::HiRes upgraded to version 1.66 =end original Time::HiRes はバージョン 1.66 に更新されました。 =item * =begin original Time::Local upgraded to version 1.11 =end original Time::Local はバージョン 1.11 に更新されました。 =item * =begin original Unicode::Normalize upgraded to version 0.32 =end original Unicode::Normalize はバージョン 0.32 に更新されました。 =item * =begin original utf8 upgraded to version 1.05 =end original utf8 はバージョン 1.05 に更新されました。 =item * =begin original Win32 upgraded to version 0.24, which provides Win32::GetFileVersion =end original Win32 はバージョン 0.24 に更新され、Win32::GetFileVersion が追加されました。 =back =head1 Utility Changes (ツールの変更) =head2 find2perl enhancements (find2perl の拡張) =begin original C has new options C<-iname>, C<-path> and C<-ipath>. =end original C に C<-iname>, C<-path>, C<-ipath> オプションが追加されました。 =head1 Performance Enhancements (パフォーマンスの向上) =begin original The internal pointer mapping hash used during ithreads cloning now uses an arena for memory allocation. In tests this reduced ithreads cloning time by about 10%. =end original iスレッドの複製中に使用する内部ポインタマッピングハッシュがメモリ割り当ての アリーナを使うようになりました。 テストによればiスレッドの複製時間は 10% 減少しました。 =head1 Installation and Configuration Improvements (インストールと設定の改良) =over 4 =item * =begin original The Win32 "dmake" makefile.mk has been updated to make it compatible with the latest versions of dmake. =end original Win32 "dmake" の makefile.mk は最新版の dmake との互換性のために 更新されました。 =item * =begin original C, C, C and C should now work in Win32 makefiles. =end original C, C, C, C は Win32 makefile でも動作するようになったはずです。 =back =head1 Selected Bug Fixes (バグ修正の抜粋) =over 4 =item * =begin original The socket() function on Win32 has been fixed so that it is able to use transport providers which specify a protocol of 0 (meaning any protocol is allowed) once more. (This was broken in 5.8.6, and typically caused the use of ICMP sockets to fail.) =end original Win32 の socket() 関数は修正され、プロトコルに 0 を指定する (全てのプロトコルを許可することを意味します) 転送プロバイダが再び使えるようになりました。 (これは 5.8.6 で動かなくなっており、典型的には ICMP ソケットの使用に 失敗していました。) =item * =begin original Another obscure bug involving C and UTF-8 caused by bad internal offset caching has been identified and fixed. =end original 内部オフセットのキャッシュが正しくないことによる、 C と UTF-8 に関するもう一つの目立たないバグが発見され、 修正されました。 =item * =begin original A bug involving the loading of UTF-8 tables by the regexp engine has been fixed - code such as C<"\x{100}" =~ /[[:print:]]/> will no longer give corrupt results. =end original 正規表現エンジンによる UTF-8 テーブルの読み込みに関するバグが 修正されました - C<"\x{100}" =~ /[[:print:]]/> といったコードも 正しい結果を出すようになりました。 =item * =begin original Case conversion operations such as C on a long Unicode string could exhaust memory. This has been fixed. =end original 長い Unicode 文字列に対して、C のような大文字小文字変換を 行うとメモリを使い果たすことがありました。これは修正されました。 =item * =begin original C/C were buggy for some combinations of Unicode and non-Unicode data. This has been fixed. =end original C/C は Unicode と非 Unicode の組み合わせによっては バグっていました。これは修正されました。 =item * =begin original C (and presumably C) would expose the UTF-8 internals when reading from a byte oriented file handle into a UTF-8 scalar. This has been fixed. =end original C (とおそらくは C) はバイト指向ファイルハンドルから UTF-8 スカラに読み込むと、UTF-8 の内部を外にさらすことがありました。 これは修正されました。 =item * =begin original Several C/C bug fixes: =end original いくつかの C/C のバグが修正されました: =over 4 =item * =begin original Checksums with C or C formats were broken. =end original C や C フォーマットでのチェックサムが壊れていました。 =item * =begin original C checksums could overflow with the C format. =end original C フォーマットで C のチェックサムが オーバーフローすることがありました。 =item * =begin original C and C are now scoped to C<()> C sub-templates. =end original C と C は C<()> C サブテンプレートのスコープになりました。 =item * =begin original Counted length prefixes now don't change C/C mode. =end original 数えた長さの接頭辞は C/C モードを変更しなくなりました。 =item * =begin original C C used to destroy the preceding character. =end original C C がその前の文字を破壊していました。 =item * =begin original C

/C

C formats used to only recognise literal C =end original C

/C

C フォーマットがリテラルの C しか 認識していませんでした。 =back =item * =begin original Using closures with ithreads could cause perl to crash. This was due to failure to correctly lock internal OP structures, and has been fixed. =end original iスレッドでクロージャを使うと perl をクラッシュさせることがありました。 これは内部の OP 構造体を正しくロックするのに失敗していたのが 原因で、これは修正されました。 =item * =begin original The return value of C now correctly reflects any file errors that occur while flushing the handle's data, instead of just giving failure if the actual underlying file close operation failed. =end original C の返り値は対象のハンドルのデータをフラッシュするときに 発生した全てのエラーを正しく反映したものになりました。 今までは実際のファイルクローズ操作に失敗したときに 単に失敗したことを返すだけでした。 =item * =begin original C used to segfault. C now behaves like C, which was the pre 5.6.0 behaviour. =end original C が segfault を引き起こしていました。 C は C と同じ振る舞いをするようになりました。 これは 5.6.0 以前の振る舞いと同じです。 =item * =begin original C has various enhancements to cope with constructs in header files that used to result in incorrect or invalid output. =end original C の様々な拡張にはヘッダファイルの構造を処理しようとすると 間違っていたり不正な出力をするものがありました。 =back =head1 New or Changed Diagnostics (新しい、または変更された診断メッセージ) =begin original There is a new taint error, "%ENV is aliased to %s". This error is thrown when taint checks are enabled and when C<*ENV> has been aliased, so that C<%ENV> has no env-magic anymore and hence the environment cannot be verified as taint-free. =end original "%ENV is aliased to %s" という汚染エラーが追加されました。 このエラーは汚染チェックが有効になっていて、 C<*ENV> がエイリアスされているため、 C<%ENV> がもはや env-magic でなくなり、 従って環境変数が汚染されていないかどうかを確認できない場合に発生します。 =begin original The internals of C and C have been updated. All legitimate templates should work as before, but there may be some changes in the error reported for complex failure cases. Any behaviour changes for non-error cases are bugs, and should be reported. =end original C と C の内部が更新されました。全ての正当なテンプレートは 今までと同様に動作するはずですが、複雑な失敗の場合のエラー報告が いくつか変わっているかもしれません。 エラーでない場合に振る舞いが変わっているとしたらそれはバグですので、 報告してください。 =head1 Changed Internals (内部の変更) =begin original There has been a fair amount of refactoring of the C source code, partly to make it tidier and more maintainable. The resulting object code and the C binary may well be smaller than 5.8.6, and hopefully faster in some cases, but apart from this there should be no user-detectable changes. =end original C ソースコードに対してかなりの量のリファクタリングが行われ、 一部は整理され、保守性が向上しました。 この結果オブジェクトコードと C バイナリは 5.8.6 より 小さくなり、いくつかの場合には高速になるかもしれません。 しかしこれら以外にユーザーが気付くような変更はないはずです。 =begin original C<${^UTF8LOCALE}> has been added to give perl space access to C. =end original perl 空間 C へのアクセスを与えるために C<${^UTF8LOCALE}> が追加されました。 =begin original The size of the arenas used to allocate SV heads and most SV bodies can now be changed at compile time. The old size was 1008 bytes, the new default size is 4080 bytes. =end original SV head と、ほとんどの SV body が使用するアリーナのサイズは コンパイル時に変更できるようになりました。 以前のサイズは 1008 バイトで、現在のデフォルトサイズは 4080 バイトです。 =head1 Known Problems (既知の問題) =begin original Unicode strings returned from overloaded operators can be buggy. This is a long standing bug reported since 5.8.6 was released, but we do not yet have a suitable fix for it. =end original オーバーロードされた演算子から返された Unicode 文字列はバグって いるかもしれません。これは 5.8.6 がリリースされてから長い間 報告されているバグですが、私たちはまだこれを修正できていません。 =head1 Platform Specific Problems (プラットフォーム固有の問題) =begin original On UNICOS, lib/Math/BigInt/t/bigintc.t hangs burning CPU. ext/B/t/bytecode.t and ext/Socket/t/socketpair.t both fail tests. These are unlikely to be resolved, as our valiant UNICOS porter's last Cray is being decommissioned. =end original UNICOS では、lib/Math/BigInt/t/bigintc.t は CPU パワーを使い切って ハングします。 ext/B/t/bytecode.t と ext/Socket/t/socketpair.t のテストは失敗します。 私たちの様々な UNICOS 移殖者の最後の Cray が退役したため、 これらは解決する見込みがありません。 =head1 Reporting Bugs =begin original If you find what you think is a bug, you might check the articles recently posted to the comp.lang.perl.misc newsgroup and the perl bug database at http://bugs.perl.org. There may also be information at http://www.perl.org, the Perl Home Page. =end original もしバグと思われるものが見つかったら、 comp.lang.perl.misc ニュースグループに 最近投稿された記事や http://bugs.perl.org にある perl バグデータベースを 確認してください。 Perl ホームページ、http://www.perl.org にも情報があります。 =begin original If you believe you have an unreported bug, please run the B program included with your release. Be sure to trim your bug down to a tiny but sufficient test case. Your bug report, along with the output of C, will be sent off to perlbug@perl.org to be analysed by the Perl porting team. You can browse and search the Perl 5 bugs at http://bugs.perl.org/ =end original もしまだ報告されていないバグだと確信したら、そのリリースに含まれている perlbug プログラムをを実行してください。 バグの再現スクリプトを十分小さく、しかし有効なコードに切りつめることを 意識してください。バグレポートは perl -V の出力と一緒に perlbug@perl.org に送られ Perl porting チームによって解析されます。 Perl 5 のバグについては http://bugs.perl.org/ で閲覧及び 検索することができます。 =head1 SEE ALSO =begin original The F file for exhaustive details on what changed. =end original F ファイルに変更点の完全な詳細があります。 =begin original The F file for how to build Perl. =end original F ファイルに Perl のビルド方法があります。 =begin original The F file for general stuff. =end original F ファイルに一般的なことがあります。 =begin original The F and F files for copyright information. =end original F 及び F ファイルに著作権情報があります。 =begin meta Translate: Kentaro Shirakata =end meta =cut