Skip to content

ruby-ML ななめ読む [ruby-dev:48124-48129] / [ruby-core:62146-62162]

2014/4/26 11:31:42

十二時間近くも遅刻したら、それはもう一回休みと同義なんじゃないかなーって。

[ruby-dev:48124] by Motohiro KOSAKI:#9772
[ruby-dev:48125] by Akira Tanaka:#9772
[ruby-dev:48126] by Naohisa Goto:#9571
[ruby-dev:48127] by Naohisa Goto:#9571
[ruby-dev:48128] by KOSAKI Motohiro :#9772
[ruby-dev:48129] by Motohiro KOSAKI:#9772
[ruby-core:62146] by Doug Alcorn:#9774
[ruby-core:62147] by Akira Tanaka:#9770
[ruby-core:62148] by Daniel Berger:#9770
[ruby-core:62149] by Daniel Berger:#9770
[ruby-core:62150] by NARUSE Yui
[ruby-core:62151] by Yui NARUSE:#9586
[ruby-core:62152] by Yui NARUSE:#9586
[ruby-core:62153] by Nobuyoshi Nakada:#9665
[ruby-core:62154] by Nobuyoshi Nakada:#9665
[ruby-core:62155] by Nobuyoshi Nakada:#7842
[ruby-core:62156] by Nobuyoshi Nakada:#9626
[ruby-core:62157] by Shugo Maeda:#9768
[ruby-core:62158] by Shugo Maeda:#9704
[ruby-core:62159] by Gregory Shilin:#9775
[ruby-core:62160] by Thomas Sawyer:#9704
[ruby-core:62161] by Jesse Sielaff:#9776
[ruby-core:62162] by Jesse Sielaff:#9776

チケット無し


[ruby-core:62150]
by NARUSE Yui

(なんで statvfs/fstatvfs でなく statfs/fstatfs なのかという質問を受けて)f_type を見るために追加したわけで、statvfs には f_type がない(から元々の目的に使えない)よ、とのこと。


#7842

prepend したメソッドのエイリアスからの super() で prepend 前のメソッドが呼ばれない


[ruby-core:62155]
by Nobuyoshi Nakada

Markdown 修正。


#9571

Solaris で Error: TestFileUtils#test_rmdir: Errno::EEXIST: File exists @ dir_s_rmdir – data というエラーが出る


[ruby-dev:48126]
by Naohisa Goto

Issue #9571 has been updated by Naohisa Goto.

SUSv3 の仕様で EEXIST を返すのは合法なので、Solaris 以外でもエラーになる OS があるかもだよ、とのこと。


[ruby-dev:48127]
by Naohisa Goto

クローズコミット。


#9586

Ruby 2.1.1 が NetBSD でビルドできない


[ruby-core:62151]
by Yui NARUSE

クローズコミット。


[ruby-core:62152]
by Yui NARUSE

1.9.3, 2.0.0 をバックポート対象から除外、2.1 をバックポート対象に。


#9626

alias と prepend と super の組み合わせで SystemStackError


[ruby-core:62156]
by Nobuyoshi Nakada

Reject。#7842 とは違って C#foo を上書きしてるよ、C#orig_foo は M#foo のエイリアスであって C#foo のではないよ、とのこと。


#9665

2.1.1 が __builtin_unreachable のせいで PowerPC darwin でビルドできない


[ruby-core:62153]
by Nobuyoshi Nakada

Markdown 修正、対象バージョンを 2.2.0 に、2.0.0, 2.1 をバックポート対象に。MacPorts の apple-gcc42 だと __builtin_unreachable はちゃんと no になるみたいだよ、とのこと。


[ruby-core:62154]
by Nobuyoshi Nakada

クローズコミット。


#9704

ファイル単位で using する refinement


[ruby-core:62158]
by Shugo Maeda

モンキーパッチには super 出来ないっていう問題もあるよ、グローバルもローカルも同じやり方でクラス拡張できるといいな、refinements をグローバルにも適用できるようなオプションを作るのはどうかな、Module#refine は(内部的な)モジュールを作るから、これを対象モジュールに prepend したらいいんじゃないかな、とのこと。

ついに refinements 家元が登場。


[ruby-core:62160]
by Thomas Sawyer

おお、そんなアプローチもありか、素晴らしいアイディアだね、とのこと。


#9768

メソッドの可視性をモジュール(クラス含む)内部に限定したい


[ruby-core:62157]
by Shugo Maeda

担当者をまつもとさんに。Refinements の最初の提案にはそういうのもあったけど削除されたよ、#4085 を見てね、まつもとさん曰く「refinement は明示されたレキシカルスコープの中だけで有効化されるべきだよ、暗黙的に refine されちゃうとユーザが混乱するよ」らしいよ、とのこと。

しまった今のスタイルは話者が入れ子になると非常にわかりにくい。


#9770

Etc.uname(原文ママ)


[ruby-core:62147]
by Akira Tanaka

(Windows でエミュレーションするべき?との質問を受けて)現行では環境依存のテストの分岐に使っているので、Windows でのエミュレーションはそれ以外の環境にとって重要じゃないと思うよ、Windows のバージョンをチェックしたいケースがあるならエミュレーションは有効かもね、とのこと。

後半のオレオレ意訳っぷりがひどい。が、If someone ?を自然な日本語に出来る気がしません。


[ruby-core:62148]
by Daniel Berger

sys-uname っていう gem があるよ、Windows では WMI を使っていろいろ情報を返してくれるよ、とのこと。


[ruby-core:62149]
by Daniel Berger

WMI がいやなら GetVersionEx と GetSystemInfo のセットで同じような情報が取れるよ、とのこと。

いやまあそれはそうですが。Ruby レベル・ユーザレベルの話と C レベル・コア開発レベルの話が混ざっているような気がする。


#9772

IO#statfs と File::Statfs


[ruby-dev:48124]
by Motohiro KOSAKI

一番欲しい情報である fs type は POSIX の仕様ではオプショナル扱いなので、statvfs はそぐわないと思うよ、statfs で有益な情報が取れる OS の範囲が焦点になると思うよ、とのこと。


[ruby-dev:48125]
by Akira Tanaka

GNU coreutils のコメントを見ると、「ファイルシステムのタイプは statfvs.f_basetype で取れる環境(AIX と HP-UX と Solaris)と statvfs.f_fstypename で取れる環境(NetBSD 3.0)と statfs.f_fstypename で取れる環境(NetBSD 1.5.2)と、f_type を使ってやらないといけない環境(GNU/Linux)があるよ」と書いてあるよ、NetBSD はどうなのかなあ、とのこと。


[ruby-dev:48128]
by KOSAKI Motohiro

statvfs にメンバ追加するほうが主流なんだね、主張は取り下げるよ、とのこと。


[ruby-dev:48129]
by Motohiro KOSAKI

[ruby-dev:48128] の重複。


#9774
(新規)
Net::HTTP で証明書認証ができない


[ruby-core:62146]
by Doug Alcorn

担当者成瀬さんで起票。
オレオレ証明書なホストに HTTPS 接続しようとして証明書をダウンロードしておいたよ、openssl のツールでは検証できたけど Net::HTTP で接続しようとすると certificate verify failed (OpenSSL::SSL::SSLError) と例外が発生するよ、とのこと。

なんで成瀬さん?と思ったら lib/net/http(s?).rb は成瀬さんがメンテナなんですね。知らなかった。前田さんあたりだと勝手に思い込んでました。で、チケットについて。どっか書き方がまずいんじゃないかなーオレオレ証明書で認証なんてよくやることだからさすがにそんなバグはないんじゃないかなーと。どこがまずいのかはわかりませんが。


#9775
(新規)
Rails on thin と debugger で SEGV


[ruby-core:62159]
by Gregory Shilin

Rais 4 on thin を debugger と一緒に動かした時に SEGV したよ、バックトレースを添付するよ、とのこと。debugger からの rb_method_boundp() 呼び出しのどこかで SEGV しているようです。

どこかっていうかですね、2.1.1-p76 の vm_method.c 847行目って関数の終わりの中括弧なんですよ。スタックが破壊されてるならトレースだってちゃんと取れないはずだと思うので、なんなんでしょうねこれ。debugger の issue の可能性も濃厚な気配。


#9776
(新規)
** がハッシュを破壊する


[ruby-core:62161]
by Jesse Sielaff

担当者まつもとさん、カテゴリ「構文」で起票。** が Ruby 2.1.1 でおかしな動きをするよ、h = { b: 2 }; { **h, c: 3 } とかすると h == { b: 2, c: 3 } になるよ、配列の * ならそんなことはないよ、とのこと。

考察についてはカット(よくわかっていないので)。元チケットをどうぞ。


[ruby-core:62162]
by Jesse Sielaff

発端の stackoverflow の記事のリンクを置いておくよ、とのこと。

広告
No comments yet

コメントを残す

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

WordPress.com ロゴ

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

Google+ フォト

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

Twitter 画像

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

Facebook の写真

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

w

%s と連携中

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