コンテンツへ移動

ruby-ML ななめ読む [ruby-dev:48108] / [ruby-core:62039-62053]

2014/4/16 22:41:07

[ruby-dev:48108] by Ken Takata:#8716
[ruby-core:62039] by Pranas Kiziela:#9744
[ruby-core:62040] by Charles Nutter:#9123
[ruby-core:62041] by Hiroshi SHIBATA:#9744
[ruby-core:62042] by Nobuyoshi Nakada:#9743
[ruby-core:62043] by Nobuyoshi Nakada:#9743
[ruby-core:62044] by Eric Loveland:#7822
[ruby-core:62045] by Usaku NAKAMURA:#7822
[ruby-core:62046] by Terence Lee:#9745
[ruby-core:62047] by Terence Lee:#9746
[ruby-core:62048] by Terence Lee:#9747
[ruby-core:62049] by Wei Hu:#9748
[ruby-core:62050] by B Kelly:#8543
[ruby-core:62051] by U.Nakamura
[ruby-core:62052] by B Kelly:#8543
[ruby-core:62053] by Eric Loveland:#7822

チケット無し


[ruby-core:62051]
by U.Nakamura

Ruby アソシエーションの「Ruby 安定版保守委託」で 2014/4 から 2015/3 まで 2.0.0 のメンテナになったよ、(前メンテナの)近永さんとメンテナンスポリシーは変わらず、基本的に Feature は入れずバグ修正だけ・可能な限り互換性保持・重大なセキュリティ修正はすぐ出す・特例がなければパッチレベルリリースはほぼ三ヶ月間隔で出す、とするよ、とのこと。
2.0.0 のバグは b.r-l.o に報告してね、他のバージョンに影響ないバグなら backport20 に、そうでなければ ruby-trunk にお願いするよ、ruby-trunk にチケットがあれば別チケットを作成する必要はなくてバックポート欄を活用すればいいよ、近永さんありがとう本当にお疲れ様でした!とのこと。

おおー。


#7822

Dir.mkdir で長めの Unicode パス (\\?\UNC\) が扱えない


[ruby-core:62044]
by Eric Loveland

リンク先(MSDN 文書)によれば各フォルダ名は 255 文字まで許されるらしく、実際 Dir.mkdir “\\\\?\\C:\\#{‘t’*255}\\#{‘t’*255}” は動作するよ、でも Win32 の \\\\?\\ みたいなパス名にはスラッシュは使えないよ、とのこと。

これは勉強になる。使う(使わざるを得ない)場面にはあまり遭遇したくないけど。


[ruby-core:62045]
by Usaku NAKAMURA

(Dir.mkdir “//?/C:/” + “test” * 100 ができない、というチケットの発端の現象を受けて)Windows では各ディレクトリ名は 255 文字までで UNC を使っても変わらないよ、([ruby-core:62044] を受けて)その通りだよ、”\\?\” を表すときには “/” は使えないからそのままバックスラッシュを使うしかないよ、とのこと。


[ruby-core:62053]
by Eric Loveland

このチケットはクローズするべきだけど、それはそれとして “\\?\” のサポート強化の Feature request のチケットはなさそうだよ、チケット書くのと外部 gem でどうにかするのとどっちがいいかな、とのこと。

submitting one を「チケット書く」と訳してしまったけどちょっと不安。


#8543

rb_iseq_load で SEGV


[ruby-core:62050]
by B Kelly

trunk の r45576 i386-mswin32_100 ではチケットのサンプルコードはうまく動いたよ、もっと複雑なプログラムでも試してみるつもりだよ、とのこと。


[ruby-core:62052]
by B Kelly

SEGV する例を見つけたから添付するよ、iseq_set_sequence() で case TS_CDHASH: のブロック中のハッシュ値 operands[j] がおかしいよ、iobj->insn_id は一貫して YARVINSN_opt_case_dispatch になってるよ、–disable-gems しても同じだったよ、提供できる(原因究明に必要になる)情報があったら言ってね、とのこと。

iobj->insn_id is consistently YARVINSN_opt_case_dispatch の意味が取れない。問題の現象を理解してないせいなので、現象がわかればたぶん意味も取れるはず。そうなったらここの訳直します。


#8716

正規表現でグループ32767個作ると SEGV


[ruby-dev:48108]
by Ken Takata

落ちる原因は修正済みの alloca のスタックオーバーフローの他に、グループ数を short で管理してるので 32768 以上で不正アクセスになるよ、ビット数を増やすかチェックを入れるかの検討が必要だよ、とのこと。


#9123

Numeric#nonzero? (true/false) と Numeric#zero? (self/nil) が一貫していない


[ruby-core:62040]
by Charles Nutter

言わせてもらえば、Ruby ユーザとしては真か偽かだけが重要だからどっちでもあまり気にしないよ、でも不要な情報まで露出することになるから真値として self を返すのは好きじゃないよ、変える方に一票だけど強くは言わないよ、API 互換が壊れてもいいリリースの時にやってほしいよ、とのこと。


#9743

openssl の ossl_pkey_verify でメモリリーク


[ruby-core:62042]
by Nobuyoshi Nakada

クローズコミット。


[ruby-core:62043]
by Nobuyoshi Nakada

チケット変更。Markdown 修正、1.9.3・2.0.0・2.1 すべてのバージョンをバックポート対象に。


#9744
(新規)
Net::HTTP での DNS タイムアウトを Ruby で解決したい


[ruby-core:62039]
by Pranas Kiziela

Net::HTTP のパッチ書いたよ、回線が貧弱で DNS 解決が失敗したときに、open_timeout を設定してるのに低レベルタイムアウトの 30 秒間待たないといけなかった(問題に関するパッチだ)よ、github にも pull request したよ、とのこと。

題がおかしい気がするし文意もとれてないかもだけど、Reject 済みで読む気がしないのでそのまま


[ruby-core:62041]
by Hiroshi SHIBATA

Reject。pull request についたコメント(require ‘resolv-replace’ するといい)を見てね、とのこと。


#9745
(新規)
r45595 (#9743) のバックポート(2.1)


[ruby-core:62046]
by Terence Lee

#9743 のメモリリーク修正をバックポートしてね、とのこと。


#9746
(新規)
r45595 (#9743) のバックポート(2.0.0)


[ruby-core:62047]
by Terence Lee

#9743 のメモリリーク修正をバックポートしてね、とのこと。


#9747
(新規)
r45595 (#9743) のバックポート(1.9.3)


[ruby-core:62048]
by Terence Lee

#9743 のメモリリーク修正をバックポートしてね、とのこと。


#9748
(新規)
preserve が偽の時にも FileUtils.cp がファイル権限をコピーする


[ruby-core:62049]
by Wei Hu

FileUtils.cp が :preserve=>false を渡したときもファイル権限をコピーしようとするよ、

(FileUtils::Entry_#copy_file で)File.open(dest, ‘wb’, s.stat.mode) としているのが原因だと思うよ、とのこと。

preserve: true でコピーしてくれないって話ならそれは困るけど、preserve: false でどうなるかは undocumented な気がする(いや読んでないけど)。実際に困るのってどんな時でしょうか。

広告
No comments yet

コメントを残す

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

WordPress.com ロゴ

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

Google+ フォト

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

Twitter 画像

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

Facebook の写真

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

%s と連携中

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