Skip to content

ruby-ML ななめ読む [ruby-dev:48173-48176] / [ruby-core:62383-62416]

2014/5/6 23:42:55

[ruby-dev:48173] by Yukihiro Matsumoto
[ruby-dev:48174] by Akira Tanaka:#3348
[ruby-dev:48175] by Tomoyuki Chikanaga:#9685
[ruby-dev:48176] by Nobuyoshi Nakada:#3526
[ruby-core:62383] by Akira Tanaka:#9625
[ruby-core:62384] by Akira Tanaka:#9618
[ruby-core:62385] by Akira Tanaka:#9089
[ruby-core:62386] by _ wanabe:#9803
[ruby-core:62387] by Akira Tanaka:#7476
[ruby-core:62388] by Akira Tanaka:#7476
[ruby-core:62389] by Akira Tanaka:#9803
[ruby-core:62390] by Nobuyoshi Nakada:#9803
[ruby-core:62391] by Akira Tanaka:#5677
[ruby-core:62392] by Akira Tanaka:#5677
[ruby-core:62393] by Tomoyuki Chikanaga:#9796
[ruby-core:62394] by akr fsij.org:#6010
[ruby-core:62395] by _ wanabe:#9803
[ruby-core:62396] by Alexey Muranov:#9804
[ruby-core:62397] by Akira Tanaka:#5487
[ruby-core:62398] by Akira Tanaka:#5463
[ruby-core:62399] by Akira Tanaka:#8459
[ruby-core:62400] by Eric Wong :#9804
[ruby-core:62401] by Eric Wong:#9804
[ruby-core:62402] by Eric Wong
[ruby-core:62403] by Tsuyoshi Sawada:#9805
[ruby-core:62404] by Alexey Muranov:#9804
[ruby-core:62405] by Charles Leu:#9806
[ruby-core:62406] by SASADA Koichi
[ruby-core:62407] by Eric Wong
[ruby-core:62408] by Akira Tanaka:#9682
[ruby-core:62409] by Akira Tanaka:#9521
[ruby-core:62410] by Akira Tanaka:#9521
[ruby-core:62411] by Nobuyoshi Nakada:#9805
[ruby-core:62412] by Nobuyoshi Nakada:#6216
[ruby-core:62413] by Nobuyoshi Nakada:#6216
[ruby-core:62414] by Michael Kohl:#9807
[ruby-core:62415] by Matthew Kerwin :#9807
[ruby-core:62416] by Matthew Kerwin:#9807

チケット無し


[ruby-dev:48173]
by Yukihiro Matsumoto

(Kernel#test に ‘a’ を足したほうがいいのかどうなのか、という質問に)-a は deprecated らしいから削除の方法方向で考えるよ、とのこと。

指摘頂いたので修正。


[ruby-core:62402]
by Eric Wong

(r45760 がそれほど大きな変更ではなさそうだ、とのコメントを受けて)そうだね、問題はサーバーで走らせてた make check の test/ruby/test_string.rb 中の test_LSHIFT_neary_long_max だったみたいだよ、このテストで大量にメモリスワップしてたよ、とのこと。


[ruby-core:62406]
by SASADA Koichi

この(r45760 の)あとで(スワップの)問題が解決したの?それならこの変更はすごいね、とのこと。


[ruby-core:62407]
by Eric Wong

混乱させてごめん、パッチは正しいけど大きな修正じゃないよ、スワップで RSS が減ってたことに気がついたよ、glibc の malloc はメモリを掴んでカーネルに返さないので RSS はスワップで減る(ように見かけ上見える)よ、test_LSHIFT_neary_long_max は遅くて危険な環境があるかもしれないよ、よく古くて非力なマシンを使って性能問題を探すことがあるよ、とのこと。


#3348

Kernel.spawn で標準入力と標準エラーを同一の新規ファイルにリダイレクトさせたい


[ruby-dev:48174]
by Akira Tanaka

クローズコミット。


#3526

ヌルデバイスへのパスを示す IO::NULL の提案


[ruby-dev:48176]
by Nobuyoshi Nakada

Markdown 修正。


#5463

PTY か IO.select がタイミングによっておかしな挙動をする


[ruby-core:62398]
by Akira Tanaka

Reject。Ruby の問題じゃないと思うよ、とのこと。


#5487

popen3 と timeout の組み合わせで 1.9 以降でタイムアウトしない


[ruby-core:62397]
by Akira Tanaka

Reject。Timeout は無視してね、1.8 のようにハングしないとしても子プロセスに影響しないよ、Thread#join のタイムアウトを指定する引数が役に立つと思うよ、とのこと。

「Timeout のことは忘れてください」かもしれない。


#5677

IO C API


[ruby-core:62391]
by Akira Tanaka

今まで誰も実装しなかったので Reject することにするよ、実装なしで議論するのは難しすぎるよ、とのこと。


[ruby-core:62392]
by Akira Tanaka

Reject。


#6010

open-uri で IO がクローズされないことがある


[ruby-core:62394]
by akr fsij.org

クローズコミット。


#6216

SystemStackError のバックトレースを減らしてほしくない


[ruby-core:62412]
by Nobuyoshi Nakada

重複するチケットに #9805 を追加。


[ruby-core:62413]
by Nobuyoshi Nakada

github に pull request しておいたよ、とのこと。


#7476

IP_TRANSPARENT 定数がない


[ruby-core:62387]
by Akira Tanaka

クローズコミット。


[ruby-core:62388]
by Akira Tanaka

glibc-2.12 で IP_TRANSPARENT が提供されるみたいだから今なら使っても問題ないよ、とのこと。


#8459

Socket に慣用的なメソッド名を追加したい


[ruby-core:62399]
by Akira Tanaka

フィードバック待ち。否定的だよ、こういう(Socket.hostname でなく gethostname のような)慣習は新規メソッドの命名を難しくするよ、命名はただでさえ難しいんだからこれ以上難しくしたくないよ、とのこと。


#9089

rb_fix2uint が負数を渡しても RangeError を投げてくれない


[ruby-core:62385]
by Akira Tanaka

Reject。64-bit 環境で FIX2UINT だけ負数を無視するのは一貫しなさすぎて受け入れられないよ、ほかの NUM2Uxxx や FIX2Uxxx も変更するのは非互換すぎるよ、厳正な変換関数が欲しい人は自分で新しい関数を定義したほうがいいよ、rb_integer_pack() も数を変換しつつ桁溢れや符号のチェックするのに使えるよ、とのこと。


#9521

Time.parse のドキュメント修正


[ruby-core:62409]
by Akira Tanaka

クローズコミット。


[ruby-core:62410]
by Akira Tanaka

この部分の元々のドキュメントは gsinclair さんが GMT を使って書いたみたいだけど間違って JST を使って書き換えられちゃったみたいだよ、EST で書き換えるのに賛成だよ、ここは time.c の「この例はすべて GMT-5 の EST を使っています」という部分から受け継いでいるよ、タイムゾーンを複数含むときの Time.parse の挙動は考えてなかったよ、例を結果だけでなく Time.now についても EST を使うように変更して r45838 でコミットしたよ、とのこと。


#9618

Pathname#cleanpath を使うとパス区切りが混ざる


[ruby-core:62384]
by Akira Tanaka

クローズコミット。


#9625

パス追加用に `Pathname#/` が欲しい


[ruby-core:62383]
by Akira Tanaka

クローズコミット。


#9682

Time.parse のドキュメントの改訂


[ruby-core:62408]
by Akira Tanaka

クローズコミット。


#9685

psych-2.0.5 のバックポート(原文ママ)


[ruby-dev:48175]
by Tomoyuki Chikanaga

2.1 をバックポート済に。r45453 と r45455 と r45577 を r45812 で 2.1 にバックポートしたよ、#9798 も見てね、とのこと。


#9796

GC 修正の r45638 と r45760 のバックポート依頼(2.1)


[ruby-core:62393]
by Tomoyuki Chikanaga

クローズバックポート。


#9803
(新規)
C API の削除情報が NEWS にない


[ruby-core:62386]
by _ wanabe

rb_check_safe_str() が 2.1 と trunk にないのを見つけたよ、#9502 とその説明のページを見つけたけど、見た限り NEWS と NEWS-2.1.0 にはなかったよ、NEWS にも書くべきじゃないかな、とのこと。


[ruby-core:62389]
by Akira Tanaka

フィードバック待ち。どの NEWS を見たの、r44963 で書かれてるよ、とのこと。


[ruby-core:62390]
by Nobuyoshi Nakada

Markdown 修正。


[ruby-core:62395]
by _ wanabe

Reject。ごめん、2.1 ブランチを取り違えてたよ、とのこと。

勘違い甚だしい。


#9804
(新規)
File::CREATE を File::CREAT の別名として欲しい


[ruby-core:62396]
by Alexey Muranov

File::CREATE を File::CREAT の別名として欲しいよ、とのこと。


[ruby-core:62400]
by Eric Wong

少なくとも理由は欲しいな、役立つ意見かはわからないけどこれ以上別名をコアに足すのは反対だよ、学習コストを増やすし機械的なキャッシュのコストも増えるよ、新しい別名は古いバージョンのユーザが新しいドキュメントを参照した時にも混乱するよ、新機能 の RD に「これは Ruby X.Y.Z で追加されました」と付け加えることはできるかもね、とのこと。


[ruby-core:62401]
by Eric Wong

[ruby-core:62400] の重複。


[ruby-core:62404]
by Alexey Muranov

学習コストが増えるとは思わないよ、CREATE は CREAT と違って英単語だよ、コードに File::CREATE = File::CREAT と書かなくて良くなるよ、とのこと。


#9805
(新規)
SystemStackError のバックトレース


[ruby-core:62403]
by Tsuyoshi Sawada

def a; a end みたいに一行でメソッド定義したもので SystemStackError になると一行しかバックトレースに表示されないよ、デバックしにくいので設定で制限行数をセットできたらいいよ、#6216 と同じだと思うけど、元のコードが不必要に長くて複雑でわかりにくかったよ、とのこと。


[ruby-core:62411]
by Nobuyoshi Nakada

重複するチケットに #6216 を追加。


#9806
(新規)
URI#encode が ‘[‘ と ‘]’ をエンコードしてくれない


[ruby-core:62405]
by Charles Leu

題名のとおりだよ、とのこと。

“The subject says it all.” らしいのでありがたく省略。


#9807
(新規)
String.new をブロック付きで呼び出したい


[ruby-core:62414]
by Michael Kohl

自チーム内で議論して、String.new がブロックを受け付けて文字列ビルダとして動くといいんじゃないかと考えたよ、String.new(“foo”) do |s| s << "bar" end が "foobar" になるのはどうかな、Array#join とか tap を回避できるようになるよ、とのこと。


[ruby-core:62415]
by Matthew Kerwin

“foo”.tap{|s|s << "bar"} との違いがわからないよ、例示してくれるかな、とのこと。


[ruby-core:62416]
by Matthew Kerwin

[ruby-core:62415] の重複。

広告
No comments yet

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

w

%s と連携中

%d人のブロガーが「いいね」をつけました。