Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CSV.foreach: ブロックが与えられていない場合の挙動を加筆 #2888

Merged
merged 1 commit into from
Jun 6, 2024

Conversation

tk0miya
Copy link
Contributor

@tk0miya tk0miya commented Jun 5, 2024

https://bugs.ruby-lang.org/issues/8929 の変更以降、ブロックなしの CSV.foreach は Enumerator を返します。

irb(main):001> require 'csv'
=> true
irb(main):002> CSV.foreach('test.csv').to_a
=> []

この挙動をドキュメントに追加しました。

https://bugs.ruby-lang.org/issues/8929 の変更以降、ブロックなしの CSV.foreach は Enumerator を返します。

```
irb(main):001> require 'csv'
=> true
irb(main):002> CSV.foreach('test.csv').to_a
=> []
```

この挙動をドキュメントに追加しました。
Copy link
Member

@znz znz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ありがとうございます。
対応バージョンでは、ずっと Enumerator なのを確認しました。

% time docker run --platform linux/amd64 --rm -it ghcr.io/ruby/all-ruby env LANG=C.UTF-8 ALL_RUBY_SINCE=ruby-1.8 ./all-ruby -r csv -e 'p CSV.foreach("/dev/null").class'
ruby-1.8.0            -e:1: undefined method `foreach' for CSV:Class (NoMethodError)
                  exit 1
ruby-1.8.1            -e:1: undefined method `foreach' for CSV:Class (NoMethodError)
                  exit 1
ruby-1.8.2-preview1   CSV::IOReader
...
ruby-1.8.7-p374       CSV::IOReader
ruby-1.9.0-0          NilClass
...
ruby-1.9.2-p330       NilClass
ruby-1.9.3-preview1   Enumerator
...
ruby-3.3.0-preview1   Enumerator
ruby-3.3.0-preview2   warning: csv which will be not part of the default gems since Ruby 3.4.0
                      Enumerator
ruby-3.3.0-preview3   Enumerator
...
ruby-3.4.0-preview1   Enumerator

@znz znz merged commit c0d22f3 into rurema:master Jun 6, 2024
8 checks passed
@tk0miya tk0miya deleted the patch-1 branch June 6, 2024 06:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants