コンテンツへ移動

ruby-ML ななめ読む [ruby-dev:無し] / [ruby-core:61924-61948]

2014/4/11 08:42:30

メールの数はそこまでではないですが、新規チケットの数が多いとつらい。
話題が把握できるまでに結構手間取ります。

[ruby-core:61924] by Kenta Murata:#9718
[ruby-core:61925] by Eric Wong :#9718
[ruby-core:61926] by Brian Martinez:#9719
[ruby-core:61927] by Eric Wong:#9718
[ruby-core:61928] by Mario Maia:#9716
[ruby-core:61929] by Tieg Zaharia:#9657
[ruby-core:61930] by Nobuyoshi Nakada:#9655
[ruby-core:61931] by Katelyn Perry:#9720
[ruby-core:61932] by Zachary Scott:#9720
[ruby-core:61933] by Nobuyoshi Nakada:#9716
[ruby-core:61934] by Nobuyoshi Nakada:#9716
[ruby-core:61935] by Nobuyoshi Nakada:#9718
[ruby-core:61936] by Wei Hu:#9721
[ruby-core:61937] by Nathan Zook:#9607
[ruby-core:61938] by Eric Wong :#9607
[ruby-core:61939] by Eric Wong:#9607
[ruby-core:61940] by Thomas Cioppettini:#9722
[ruby-core:61941] by Matthew Kerwin:#9722
[ruby-core:61942] by Zeke Fast:#9723
[ruby-core:61943] by Koichi Sasada:#9718
[ruby-core:61944] by Kenta Murata:#9718
[ruby-core:61945] by Tomoyuki Chikanaga:#9699
[ruby-core:61946] by Tomoyuki Chikanaga:#9718
[ruby-core:61947] by Marc-Andre Lafortune:#9723
[ruby-core:61948] by Robert A. Heiler:#9724


#9607

フル GC のタイミングを戦略的に変える


[ruby-core:61937]
by Nathan Zook

web アプリとかなら(GC 戦略を)ユーザに選ばせるんでもいいんじゃないの、レスポンス返すまで一時オブジェクトをほっとくのは有りだと思うけど GC 側からはタイミングわからないよね、一般にアプリはオブジェクト生成の「波」は把握できるわけで GC.no_promote があればそこの調整ができるよね、あとブロックなしで呼び出すと GC.allow_promote まで効果が持続するといいな、とのこと。


[ruby-core:61938]
by Eric Wong

GC.promote と allow_promote はうまくいくケースもあるかもだけど OobGC と同じような気持ち悪さがあるよ、ミスを誘発するしマルチスレッドだとひどいことになるよ、一時の利益のためにユーザに面倒なことをさせるぐらいなら、たとえオンラインプロファイルやエスケープ解析(という大仰な方法)を用いてでも実行時最適化する方を選ぶよ、とのこと。


[ruby-core:61939]
by Eric Wong

[ruby-core:61938] の重複。


#9655

Arch linux でビルドできない


[ruby-core:61930]
by Nobuyoshi Nakada

3rd 行き。


#9657

bigdecimal/util.rb の Float#to_d で SEGV


[ruby-core:61929]
by Tieg Zaharia

2.2 より前だとこの修正は動かないっぽいよ、2.1 で to_d するときには BigDecimal(1) * self みたいにして GC ガードのある BigDecimal_coerce を使えばいいよ、Float だと正確じゃないけどね、とのこと。

“the fix might not make it out until 2.2″ の根拠がわからんのよな。”the fix” とまで言及しているのでまさか「現状で直ってない」って話ではなかろうと思うのだけど。


#9699

Windows で Unicode パスの .so を読めない(パッチ有)


[ruby-core:61945]
by Tomoyuki Chikanaga

チケット操作。2.0.0 と 2.1 をバックポート対象に。バックポートメンテナに向けて、r45523 は r45521 で導入された関数に依存してるのと、テストスクリプトに r45551 で修正が入ってる点に注意してね、とのこと。


#9716

FileTest.exist? がパスを展開してくれない


[ruby-core:61928]
by Mario Maia

(FileTest のメソッドはパス展開しない、とのコメントを受けて)なんでだろう、FileTest はしないのはわかったけど Pathname#exist? もその動作って変じゃないかな、ちょっと説明してくれないかな、とのこと。


[ruby-core:61933]
by Nobuyoshi Nakada

‘~’ から始まるファイルを扱えなくなるでしょ、とのこと。


[ruby-core:61934]
by Nobuyoshi Nakada

File.exist?(path.sub(/\A~/, ‘./~’)) とかすればいけるけどそうしたいの、とのこと。


#9718

trunk と 2.1 で、キューとスレッドの組み合わせで SEGV


[ruby-core:61924]
by Kenta Murata

チケット操作。-v を ruby 2.1.2p80 (2014-03-01 revision 45231) [x86_64-darwin13.0] から ruby 2.2.0dev (2014-04-09 trunk 45543) [x86_64-darwin13] に。


[ruby-core:61925]
by Eric Wong

x86_64-linux では trunk r45543 だと再現して 2.0.0p451 だとしないよ、2.0.0 添付だったピュア Ruby の thread.rb でも SEGV するから thread.so のせいじゃないっぽいよ、valgrind で見て(結果が添付されています) GC の問題っぽいところまではわかったよ、とのこと。


[ruby-core:61927]
by Eric Wong

[ruby-core:61925] の重複。


[ruby-core:61935]
by Nobuyoshi Nakada

チケット操作。カテゴリを core に、担当者をささださんに。RGENGC_CHECK_MODE=4 すると verify_internal_consistency_reachable_i: WB miss 0x7fe65187f598 (T_ARRAY) -> 0x7fe65187f110 (proc) とか言われるね、とのこと。


[ruby-core:61943]
by Koichi Sasada

クローズコミット。

このコミットは後で読む。


[ruby-core:61944]
by Kenta Murata

r45553 を 2.1 に入れたら直ることを確認したよ、2.1 でバックポートしてね、とのこと。


[ruby-core:61946]
by Tomoyuki Chikanaga

チケット操作。バックポートを 2.0.0 で不要・2.1 で必要に。

「必要に」って直訳感がひどい。なんとしょう。


#9719
(新規)
longjmp causes uninitialized stack frame と出て落ちる


[ruby-core:61926]
by Brian Martinez

tiny_tds と mechanize を使って開発してるよ、6 つスレッドがあるんだけどたまに *** longjmp causes uninitialized stack frame *** と言われて落ちるよ、とのこと。
tiny_tds とスレッドの組み合わせで起きるっぽいよ、全部のスレッドが同一テーブルにトランザクションをコミットしようとしてレスキュー -> ロールバック -> リトライ、という流れだよ、とのこと。

“I don’t know if this happends when the control changes from one thread to another causing some weird context failure when the longjmp takes place.” をまるごと削ってしまったけど「いらないから」ではなくて「わからないから」なのでできれば再挑戦したい。


#9720
(新規)
Net::IMAP の RDoc の校正(パッチ有)


[ruby-core:61931]
by Katelyn Perry

矛盾してるところと文法を直したよ、とのこと。パッチ添付されています。


[ruby-core:61932]
by Zachary Scott

チケット操作。Bug へ移動、カテゴリを doc へ、状態を Assigned へ、対象を 2.2.0 へ、-v を 2.2.0dev へ。ありがとう、とのこと。


#9721
(新規)
2.1.1 で super: no superclass method と言われる


[ruby-core:61936]
by Wei Hu

1.9 では期待通りに動くけど仕様変更かバグかはわからないよ、とのこと。super を呼んでいるメソッドから作られた UnboundMethod があって、それを bind(self).call するようなメソッドで上書きするモジュール B があるとする、同名メソッドを持つ A を extend してから B も extend するとメソッドが呼べない(題のエラーがでる)よ、とのこと。

文でプログラムを説明するのは無理がある。どうするか。


#9722
(新規)
複数のキーワード引数が扱えない


[ruby-core:61940]
by Thomas Cioppettini

2.1.1p76 で def initialize name:, age: みたいなことをしたんだけど、new(name: “Tom”, age: 24) すると name が nil になり、new(name: “Tom”) すると ArgumentError のはずが age にも name にも “Tom” が入ってしまうよ、とのこと。


[ruby-core:61941]
by Matthew Kerwin

#9669と同じかな、とのこと。


#9723
(新規)
#size が lazy enumerator に作用してくれない


[ruby-core:61942]
by Zeke Fast

[1, 2, 3].lazy.select{ |e| e%2 == 1}.size が nil を返すよ、[1, 2, 3].lazy.size と同じように長さを返してほしいよ、とのこと。


[ruby-core:61947]
by Marc-Andre Lafortune

Reject。それは lazy じゃないから必要なときは #count を使ってね、とのこと。


#9724
(新規)
警告の有無をファイル単位で切り替えたい


[ruby-core:61948]
by Robert A. Heiler

セキュリティの観点から曖昧なコードを書かないようにいつも -w をつけて ruby を実行させてるよ、自分のコードだけならいいんだけど他人のコードを require するとたくさん警告が出るんで何とかしたいよ、とのこと。
$VERBOSE はグローバル変数でうまくないので、ファイルごとに切り替えたいよ、Kernel.no_warnings とか Kernel.be_silent みたいな方法ないかな、とのこと。

広告
No comments yet

コメントを残す

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

WordPress.com ロゴ

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

Google+ フォト

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

Twitter 画像

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

Facebook の写真

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

%s と連携中

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