Skip to content

Commit a6938ff

Browse files
Watson1978claude
andcommitted
レビュー対応: IO.* に Ruby 3.3 非推奨化の注記を追加し、例を体裁修正
IO.read/foreach/readlines/binread/write/binwrite の #@else(4.0未満)に #@SInCE 3.3 で「Ruby 3.3 から deprecated、4.0 で削除」の注記を追加(rurema#3234 と同じ形式)。実機 3.3/3.4 で該当の deprecation 警告を確認。あわせて IO.read の #@SInCE 4.0 の例を docs/SampleCodeGuideline.md に合わせ、例外は # ~> を使い p を付けない形にし、title="例" も除去した。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 9498a5b commit a6938ff

1 file changed

Lines changed: 21 additions & 3 deletions

File tree

manual/api/_builtin/IO.md

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -348,6 +348,9 @@ Ruby 3.x までは path の先頭が "|" のとき "|" に続くコマンドの
348348
この機能は Ruby 4.0 で削除され、"|" で始まる path も通常のファイル名として扱われます。
349349
#@else
350350
[m:Kernel?.open] と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
351+
#@since 3.3
352+
なお、この "|" によるコマンド起動は Ruby 3.3 から deprecated であり、Ruby 4.0 で削除されました。[m:IO.popen] を使用してください。
353+
#@end
351354
#@end
352355

353356
#@since 4.0
@@ -601,9 +604,9 @@ Ruby 3.x までは path の先頭が "|" のとき "|" に続くコマンドの
601604
現在は [m:IO.read]`File.read` のいずれでも、"|" で始まる path は通常のファイル名として
602605
扱われます(該当するファイルが無ければ [c:Errno::ENOENT] が発生します)。
603606

604-
```ruby title="例"
605-
p IO.read("|echo hello") # => Errno::ENOENT ("|echo hello" という名前のファイルを探そうとする)
606-
p File.read("|echo hello") # => Errno::ENOENT
607+
```ruby
608+
IO.read("|echo hello") # ~> Errno::ENOENT
609+
File.read("|echo hello") # ~> Errno::ENOENT
607610
```
608611
#@else
609612
[m:Kernel?.open] と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
@@ -615,6 +618,9 @@ path の先頭が "|" であっても普通のファイル名として扱われ
615618
p IO.read("|echo hello") # => "hello\n" (コマンドを実行する)
616619
p File.read("|echo hello") # => Errno::ENOENT ("|echo hello" という名前のファイルを探そうとする)
617620
```
621+
#@since 3.3
622+
なお、この "|" によるコマンド起動は Ruby 3.3 から deprecated であり、Ruby 4.0 で削除されました。[m:IO.popen] を使用してください。
623+
#@end
618624
#@end
619625

620626
#@since 4.0
@@ -675,6 +681,9 @@ Ruby 3.x までは path の先頭が "|" のとき "|" に続くコマンドの
675681
[m:Kernel?.open] と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
676682
[m:IO.read] と同様、この "|コマンド名" の特別扱いはレシーバが [c:IO] である
677683
場合のみ有効で、`File.binread` では単なるファイル名として扱われます。
684+
#@since 3.3
685+
なお、この "|" によるコマンド起動は Ruby 3.3 から deprecated であり、Ruby 4.0 で削除されました。[m:IO.popen] を使用してください。
686+
#@end
678687
#@end
679688

680689
length を省略するとファイルの末尾まで読み込みます。
@@ -701,6 +710,9 @@ Ruby 3.x までは path の先頭が "|" のとき "|" に続くコマンドの
701710
この機能は Ruby 4.0 で削除され、"|" で始まる path も通常のファイル名として扱われます。
702711
#@else
703712
[m:Kernel?.open] と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
713+
#@since 3.3
714+
なお、この "|" によるコマンド起動は Ruby 3.3 から deprecated であり、Ruby 4.0 で削除されました。[m:IO.popen] を使用してください。
715+
#@end
704716
#@end
705717

706718
テキスト読み込みメソッドとして動作します。
@@ -813,6 +825,9 @@ Ruby 3.x までは path の先頭が "|" のとき "|" に続くコマンドを
813825
この機能は Ruby 4.0 で削除され、"|" で始まる path も通常のファイル名として扱われます。
814826
#@else
815827
[m:Kernel?.open] と同様 path の先頭が "|" ならば、"|" に続くコマンドを実行し、コマンドの出力を標準出力に書き込みます。
828+
#@since 3.3
829+
なお、この "|" によるコマンド起動は Ruby 3.3 から deprecated であり、Ruby 4.0 で削除されました。[m:IO.popen] を使用してください。
830+
#@end
816831
#@end
817832

818833
offset を指定するとその位置までシークします。
@@ -860,6 +875,9 @@ Ruby 3.x までは path の先頭が "|" のとき "|" に続くコマンドを
860875
この機能は Ruby 4.0 で削除され、"|" で始まる path も通常のファイル名として扱われます。
861876
#@else
862877
[m:Kernel?.open] と同様 path の先頭が "|" ならば、"|" に続くコマンドを実行し、コマンドの出力を標準出力に書き込みます。
878+
#@since 3.3
879+
なお、この "|" によるコマンド起動は Ruby 3.3 から deprecated であり、Ruby 4.0 で削除されました。[m:IO.popen] を使用してください。
880+
#@end
863881
#@end
864882

865883
offset を指定するとその位置までシークします。

0 commit comments

Comments
 (0)