34802-37073

34591-41665 subjects 35002-35918

SEGV by marshal_dump and callcc
34802 [akr@fs j. rg] 以下のようにすると SEGV します。

サーバメンテナンスのお知らせ
34803 [shugo@ru y- ] ruby-lang.orgのSVN以外のサービスは、サーバメンテナンスのため、日本時間の
34822 [shugo@ru y- ] 無事作業終了しました。

(1..5).step(SimpleDelegator.new(Rational(3,2))) {|x| p x }
34805 [akr@fs j. rg] Range#step で、引数に Rational(3,2) を与えた場合と

peephole_optimize ignores ADJUST
34806 [mame@ts .n .] 以下で SEGV します。

1.step(3, SimpleDelegator.new(Rational(1,2))
34807 [akr@fs j. rg] 1.step(3, Rational(1,2)) が例外にならないのに

SimpleDelegator.new(SystemCallError.new(0)) and ==
34808 [akr@fs j. rg] 以下のように == が対称でないのはよろしくないんじゃないでしょ
36933 [yugui@yu ui ] o = Object.new
36950 [matz@ru y- a] 対称性を維持しようとすればそうなるかもしれませんね。実際のと

-Wall
34810 [ko1@at ot ne]  最近,gcc の -Wall の存在を忘れていたところ,それをやっていれば気
+ 34814 [matz@ru y- a] -Wallは私のスタイル(条件式に代入を書く)に文句を付けるので気
| + 34815 [kbk@kt ri .o] if ((foo = bar)) {
| + 34816 [shiba@ma l2 ] "-Wno-parentheses"を付ける、という手があると思います。自分はいつも、
|   34827 [taca@ba k- t] 以下、ご参考までに。
+ 34994 [subscriber.j] pegacorn です。

Thread.new { Thread.stop }; Thread.stop
34811 [akr@fs j. rg] 以下のプログラムが終了しないのは 1.8 と異なります。

block_given? with send
34812 [ko1@at ot ne]  send を利用して実行した block_given? が 1.8 の実行結果のようになる
34818 [matz@ru y- a] p (block_given?{})

[BUG]の時のバージョン表示
34826 [zn@mb .n ft ] 1.8の[BUG]の時のバージョン表示にpatchlevelが入っていないのは

SEGV by "abc".gsub(/./).next
34828 [akr@fs j. rg] 以下のようにすると SEGV します。

return value of pp
34830 [mame@ts .n .] p が引数を返すようになったので、pp もそれにあわせると
+ 34831 [akr@fs j. rg] そうした場合、irb で pp を使ったときに、pp の表示結果に加え
| 34833 [mame@ts .n .] うーん、pretty_inspect が定義されているときは、irb の結果表示にも
+ 34832 [matz@ru y- a] 賛成します。コミットしてください。

warning: Float 0.0 out of range
34834 [akr@fs j. rg] 以下のようにすると warning: Float 0.0 out of range という警

Float("7.")
34835 [akr@fs j. rg] 現在、Float("7.") が 7.0 になります。

Dir.entriesのエンコーディング
34836 [naruse@ai em] ...

1.8 Marshal.load(open("/dev/null"))
34837 [akr@fs j. rg] rubyspec が落ちていたのでちょっとみてみたところ、以下で奇妙
34844 [knu@iD em ns] ありがとうございます。まつもとさんが修正したようです。

[0].pack("i4294967296") rescue nil;eval("0.0")
34839 [akr@fs j. rg] 同様に、以下で warning: Float 0.0 out of range となるのも変

1.8 `load': NoMethodError
34843 [akr@fs j. rg] 1.8 において以下で `load': NoMethodError という例外が出るの
34845 [knu@iD em ns] どうも。s_call の定義が壊れていたので修正しました。

Ruby 1.8.7-preview4 has been released
34846 [knu@iD em ns]  Ruby 1.8.7-preview4 をリリースしました。これがおそらくリリース前
34847 [nov@yo ri .o] bz2 のをダウンロードしてみると、サイズもチェックサムも一致しないです。
34849 [knu@iD em ns] すみません。アナウンス出し直します。

[fixed] Ruby 1.8.7-preview4 has been released
34848 [knu@iD em ns] [チェックサムが preview3 のままだったので改訂]

Do we need sizeof (char) ? (was: Re: Windows2000上でtrunkがビルドできない)
34851 [kimura.koich] ついでに見つけたことを報告するのを忘れていました。
34852 [matz@ru y- a] ま、表現的には無駄ですね。おそらくは最適化で定数畳み込みが行

emacs21でruby-mode.el
34853 [zn@mb .n ft ] emacs21でruby-mode.elが

interrupt while raising an exception terminates the program with no error print
34855 [mame@ts .n .] raise 実行中に SIGINT で割り込んだとき、高確率で何も言わずに
34858 [nobu@ru y- a] 対処してみました。

behavoir when a thread dies with the mutex locked
34856 [mame@ts .n .] mutex をロックしたままスレッドが死んだ場合の挙動について、

SEGV 2008-05-27 revision 16652
34859 [Tetsuya.WATA] ruby 1.9.0 (2008-05-27 revision 16652) [i686-linux]

1.8 def m() yield end; m {|&b| }
34863 [akr@fs j. rg] 1.8 で以下が ArgumentError になるのは 1.9 と異なります。
34873 [knu@iD em ns]  はい、前にご指摘いただいたまま直っていません。バグが顕在化

Invalid read may occur when raising an exception to a thread that waits for mutex
34874 [mame@ts .n .] 以下のようにするとハングすることがあります。
34885 [nobu@ru y- a] BLOCKING_REGIONに入るときにはcheckしても問題ないんじゃないでしょ
34888 [mame@ts .n .] そうですね。そっちの方がよさそうです。

[Bug:trunk] test issue for ruby-1.9
34875 [yugui@yu ui ] shugoさんやコミッタの皆様の協力を得まして、http://redmine.ruby-

[Bug:1.8] example issue for ruby-1.8
34876 [yugui@yu ui ] shugoさんやコミッタの皆様の協力を得まして、http://redmine.ruby-

[Ruby 1.9 - Bug #11] prelude.c compilation problem on mswin32
34877 [redmine@ru y] Issue #11 has been updated by Usaku NAKAMURA.
34886 [nobu@ru y- a] ifchangeを使うのを止めますか。
34894 [usa@ga ba ec] よくわかってないんですが、止めちゃって問題はないんでしょうか?
34895 [nobu@ru y- a] prelude.cも{enc,trans}db.hも、もうminirubyでは使わなくなってます
34897 [usa@ga ba ec] じゃあ、なぜか既にパッチもあることですし、お願いします。

[Redmine for Ruby - Feature #5] (Closed) Make repository synchronization background
34878 [redmine@ru y] Issue #5 has been updated by Yuki Sonoda.

xmalloc and xfree
34879 [ko1@at ot ne]  xmalloc で確保したメモリは,xfree で解放するべきかと思うのですが,
34880 [matz@ru y- a] お願いします。

[Ruby 1.9 - Bug #21] (Assigned) should terminate @receiver_thread of Net::IMAP safely
34881 [redmine@ru y] Issue #21 has been reported by Shugo Maeda.

Hpricotでエラー
34882 [rubikitch@ru] Ruby 1.8.7だと、外部ライブラリですがHpricotでエラーになります。

[#19002] RUBY_* constants
34883 [zn@mb .n ft ] のパッチです。
34884 [nobu@ru y- a] STRINGIZEはともかく、NO_STRING_LITERAL_CONCATENATIONの場合はどう
34887 [zn@mb .n ft ] 1.9の方は何もしていないようですが、1.8はそういう環境も対応している
34896 [nobu@ru y- a] 基本的はK&Rですから。stringizationは古いコンパイラでも代替手段が
34898 [zn@mb .n ft ] snprintfで生成するようにしてみました。

Ruby 1.8.7-preview4 test-all failed in OpenSSL::TestSSL
34889 [nov@yo ri .o] Ruby 1.8.7-preview4 ですが、test-all の途中でエラーになります。既出で
+ 34899 [knu@iD em ns]  わかる方いますか?OpenSSLに疎いので、結果がまずいのかテストが
| 34900 [zn@mb .n ft ] trunkの方でもtestrb-trunk test/openssl -vで以下のように5Fだったので、
+ 34903 [akira@ar ka ] 0.9.8c-4etch3なetch環境ではパスします。
  34941 [knu@iD em ns]  手元のUbuntu砂場を8.04に更新すると 0.9.8g-4ubuntu3.1 という
  34943 [akira@ar ka ] この話題についていろいろ試していて気付いたのですが
  34944 [akira@ar ka ] 以下のように変更を加えるとテストをパスするようです。
  34946 [knu@iD em ns]  ありがとうございます。どこでも動くようにするならこうでしょうか。
  34950 [akira@ar ka ] 手元では
  34952 [knu@iD em ns]  SSLSocketを渡した場合はそれが内包するsessionをinstantiateする

OpenSSL::Random.random_bytes(Object.new)
34890 [akr@fs j. rg] 以下のように、 OpenSSL::Random.random_bytes(Object.new) で
34891 [knu@iD em ns]  FIXNUM_P()でチェックせずにFIX2INT()しているのが問題でした。

Re: patch
34892 [knu@iD em ns] [ruby-core:16972] のパッチは取り込んでよいのでしょうか。
34893 [matz@ru y- a] ruby_1_8には同等のパッチを入れましたが、ちょっとだけ違うので

[1,2,3].delete_if
34901 [akr@fs j. rg] 以下のように [1,2,3].delete_if が [1,2,3] になるのは奇妙なん

Suggestion: Integer#hex
34902 [mame@ts .n .] Integer#hex と #oct を追加するのはどうでしょうか。
34904 [matz@ru y- a] 便利だとは思いますが、同じ名前で反対の動作をするのにはかなり
34906 [mame@ts .n .] hex というメソッド名なら、hex または hex のようなものが

Ruby 1.8.7 has been released
34905 [knu@iD em ns]  Ruby 1.8.7 をリリースしました。

ERB bug
34907 [knu@iD em ns]  [ruby-core:17028] での指摘の通り ruby_1_8 では r15794 の
34908 [m_seki@mv .b] 申し訳ありません。

Kernel#evalの第2引数
34909 [hiraku@sa po] RSpecを1.9.0-1で試して、Kernel#evalを使う箇所でエラーが発生する事に気づ
34915 [matz@ru y- a] Proc/Lambdaをbindingの代わりに使えるのは1.9では対応しなくて
34917 [ko1@at ot ne]  まぁしょうがないと言われて喜んで対応しなかった気がします.対応し
+ 34927 [akr@fs j. rg] htree で使っているので、消えてほしくないなぁ、とは思っています。
+ 34928 [shugo@ru y- ] 実装から消さなくても、Rubyの仕様としてはオプショナルということにすれば

about StringIO#ungetc
34910 [mame@ts .n .] StringIO#ungetc で先頭を越えて ungetc しようとしたときの挙動が

erb still treats $KCODE
34911 [mame@ts .n .] 1.9 の erb が未だにコマンドライン引数で $KCODE を指定できますが、
+ 34913 [m_seki@mv .b] 1.9を追えてないのでどうしてよいかわかりません。
| 34914 [matz@ru y- a] そうですね。-Eが良いでしょう。急ぎませんから、時間が取れた時
| 37048 [m_seki@mv .b] bin/erbの件です。
| 37049 [matz@ru y- a] えーと、default_externalは一度設定するともう変更できないよう
| 37054 [m_seki@mv .b] そうですか。
| 37055 [keiju@is it ] いやー. この議論を見ていてどうしようかなぁーと考えていたところです(^^;
| 37071 [m_seki@mv .b] lib/irb/init.rbを拝見したのですが、$KCODEの処理が削除さ
| 37073 [keiju@is it ] 確かに... というか, -Kを使えるようにした覚えもありませんが(^^;
+ 34918 [nagai@ai ky ] Ruby 1.9 の場合には $KCODE を参照している部分は通りません.
  34920 [nobu@ru y- a] M17N関係での分岐なら、RUBY_VERSIONよりもdefined?(::Encoding)あた
  34921 [nagai@ai ky ] RUBY_VERSION でチェックしているのは昔書いた部分なんですが,
  34922 [nobu@ru y- a] Encoding導入前というより、Encodingはあるけれどlocale_charmapや
  34925 [nagai@ai ky ] 単に「念のため」です.
  34926 [nobu@ru y- a] それなら、defined?(::Encoding.locale_charmap)とか
  34929 [nagai@ai ky ] ごもっともです.変更した方が良さそうですね.

Enumerable::Enumerator#with_memo
34912 [knu@iD em ns]  Enumerable::Enumerator#with_memo というのを追加してみました。
34916 [matz@ru y- a] こういうメソッドを追加することそのものは賛成です。ただ、なん
34919 [knu@iD em ns]  ありがとうございます。ruby-coreに投げてみました。

open() and encodings
34923 [naruse@ai em] ...
34924 [matz@ru y- a] 「ファイルシステムのエンコーディング」って変換して渡せるほど
34931 [naruse@ai em] ...
+ 34932 [taca@ba k- t] ちょっとだけ。
+ 34933 [akr@fs j. rg] ファイル名で一番重要なのは、ファイルを同定できるという性質で
| 34953 [naruse@ai em] 「読める」が誤解を招く表現だったようで申し訳ない。
| 34973 [akr@fs j. rg] なんで変換するんですか?
| 34975 [naruse@ai em] 最初に書いた時点での想定ですから。
| 34976 [akr@fs j. rg] 確認ですが、それは Dir 等によるファイル名の取得も含めての話
| 34984 [naruse@ai em] まず結論が出たのが、
+ 34934 [matz@ru y- a] ごめんなさい、おっしゃることがよくわかりませんでした。
| + 34935 [usa@ga ba ec] 後から勝手に固定(UTF-16orUTF-8)に変えようと思って見てました。
| | + 34936 [matz@ru y- a] なにも指定されない場合に、ファイルシステムのUTF-16LEから
| | | 34937 [usa@ga ba ec] あれ、ここではopenの話ですよね。
| | | + 34940 [matz@ru y- a] そうなんですか。Dirの話をしてました。
| | | | 34955 [naruse@ai em] ですね、Dir の話もしたいのですが、とりあえず今は open の引数のパスについてで。
| | | | 34956 [taca@ba k- t] Bootcampで作ったWindowsのFAT32なパーティション、USBメモリを挿したFAT32
| | | | 34960 [naruse@ai em] うーん、どうなんでしょう。
| | | | 34992 [taca@ba k- t] 試してみました。
| | | | 34993 [naruse@ai em] なるほど、UTF-8 決めうちで大丈夫そうですね。
| | | + 34949 [nagai@ai ky ] # 昔のこともあって怖いのであまり関わりたくはないのですが.(^_^)
| | |   34951 [usa@ga ba ec] つーか私も怖いんですがこの辺は。
| | |   34959 [nagai@ai ky ] まるっきり分かっていないので,
| | |   34965 [usa@ga ba ec] CIFSの仕様では、パケット中の文字列はASCIIまたはUnicodeです。
| | |   + 34966 [tietew@ti te] [[ruby-dev:34965] Re: open() and encodings]
| | |   | + 34969 [usa@ga ba ec] 情報ありがとうございます。
| | |   | | 34970 [kimura.koich] 列挙するときにこっそりvalidation しておいて、へんなのが検出されたら
| | |   | | 34971 [tietew@ti te] [[ruby-dev:34970] Re: open() and encodings]
| | |   | + 35030 [taca@ba k- t] それどころか、エクスプローラ自体が落ちることもあります。
| | |   + 35029 [taca@ba k- t] 今頃ですが、
| | |     35033 [usa@ga ba ec] ファイル名をやりとりするプロトコルにおいて、パケットの中にど
| | + 34954 [naruse@ai em] 今の Ruby1.9 ってまだ Windows では ANSI API ですよね?
| + 34962 [naruse@ai em] 確かにそうですね。
|   34995 [naruse@ai em] ...
+ 34945 [zn@mb .n ft ] 最近だとDebian系でもRedhat系のように/etc/default/localeというのがあります。
| 34947 [sugi@ne ui o] 確かにシステムグローバルな locale 設定が入るようになりましたが、それは
| 34957 [naruse@ai em] ふーむ、まだまだ一定レベルで信頼できるファイルシステムのエンコーディングが
+ 34948 [nagai@ai ky ] 昔,「救済できそうなものは救済してあげたい」と主張したら
  34961 [naruse@ai em] わたしも自動変換が『悪』承知していまして、できれば避けたいのですが、
  34963 [matz@ru y- a] Windowsでの自動変換がどのようなものか知らないので(無知でごめ
  34964 [usa@ga ba ec] Windowsの場合、既存のスクリプトはファイルシステムに渡す/から
  34967 [matz@ru y- a] うーむ、そうするとWindowsにおける「Unicodeでなければエラー」
  34968 [usa@ga ba ec] よいと思います。
  34977 [matz@ru y- a] あと、ASCII-8BITなパスだと互換性が維持できませんね。
  + 35025 [naruse@ai em] この方向でいいのですかね。
  | 35026 [matz@ru y- a] UTF-16はRuby的に使い勝手が悪いので、UTF-8がいいんじゃないで
  + 35032 [usa@ga ba ec] UTF-8でも互換性は保てないですよね。
  | 35100 [naruse@ai em] GetColsoleOutputCP()を見て変えるとかが理想な感じもするのですが、
  | 35109 [usa@ga ba ec] そもそも、rb_locale_charmapで、システムコードページではなく、
  | 35115 [tietew@ti te] [[ruby-dev:35109] Re: open() and encodings]
  | 35122 [usa@ga ba ec] IOの出力はユーザ(スクリプト作者)が指定できるので、今のところ、
  + 35036 [duerst@it ao] 極端なことを考えるとコードページで表せるものはコードページ、
    35037 [tietew@ti te] [[ruby-dev:35036] Re: open() and encodings]

[Ruby 1.9 - Bug #98] (Open) irb Classを抜けるとTypeError
34930 [redmine@ru y] Issue #98 has been reported by Anonymous.

Ruby1.8.7 で Rails2.0.2  が動かない
34938 [okkez000@gm ] Ruby1.8.7 で Rails 2.0.2 が動きません。
34939 [knu@iD em ns]  preview4後に適用した Marshal のバグ修正によって顕在化してしまった
34942 [okkez000@gm ] ありがとうございます。
34972 [ueda@ne fo e]  今更なんですが ruby 1.8.7 + Rails 1.2.6 でもこの問題が発生しました。で
34974 [knu@iD em ns]  いくつか懸案があった(まだある)ので内容の検討とスケジュールの

ARGF.each("") {|para| p para}
34958 [akr@fs j. rg] ARGF.each("") としたときには 1行単位じゃなくて段落単位に

[Ruby 1.9 - Feature #108] (Open) strftimeのusec対応
34978 [redmine@ru y] Issue #108 has been reported by Kazuhiro NISHIYAMA.

[Bug:ruby 1.9] cannot open file with big mode value
34979 [usa@ga ba ec] io.cの中で、open()に最終的に渡されるmodeをNUM2INTで生成してい
34980 [matz@ru y- a] コミットしてください。
34981 [usa@ga ba ec] どこにでもはないかもしれないので、configureでチェックして、な
34983 [naruse@ai em] 以前作った RUBY_DEFINT を使えば1行追加するだけだったりしませんかね。

config.guess is too old
34982 [usa@ga ba ec] 今のrubyに添付されているconfig.guessでサポートされていないプ

configure が生成する CFLAGS/cflags
34985 [subscriber.j] r16800 の変更で、configure が生成する CFLAGS/cflags が
34986 [nobu@ru y- a] 直したつもりです。
34987 [subscriber.j] /~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

[Bug:1.9] SEGV by File.foreach("keywords")
34988 [akr@fs j. rg] 以下のようにすると SEGV します。
35006 [nobu@ru y- a] 手元で再現できないと思ったら、修正してありました。つまり、Cで作

trunk: mswin32  版が nmake -f enc.mk でエラーになる
34989 [subscriber.j] r16754 の変更で、mswin32 版がビルドできなくなっています。

[Bug:1.9] Rational("355/113") clear $&
34990 [akr@fs j. rg] 以下のように、Rational("355/113") とすると $& が nil になり
35014 [tadf@do rb o] 内部で match をつかってるのが影響していると思いますが、どう対処したら
35081 [s.wanabe@gm ] 単純に backref を一時保存・復帰するのはどうでしょうか。
35083 [matz@ru y- a] 正規表現を使わない方法が良いのではないだろうかと考えていまし
35085 [usa@ga ba ec] あるそうですよ。
35087 [matz@ru y- a] おおっ、
35088 [ko1@at ot ne]  先日,yugui さんに [ruby-dev:xxxx] でも fix として扱ってもらうよう

[Bug:1.9] Complex("1i") clear $~
34991 [akr@fs j. rg] % ./ruby -e '

[Bug:1.8] /abc\A?/.match("")
34996 [akr@fs j. rg] 以下のように空文字列に対し /abc\A?/ はマッチしますが

Re: [ruby-changes:5517] Ruby:r17021 (trunk): * vm_insnhelper.c, vm.c, proc.c (proc_call): allow call method with
34997 [ko1@at ot ne]  考えてみたのですが,lfp[0] を書き換えてしまうのは色々とまずそうです.
+ 34998 [matz@ru y- a] 「真面目に対応するのはしんどい」のは分かりましたが、「だから
| 34999 [ko1@at ot ne]  上記の通り,
| 35000 [matz@ru y- a] エラーとして検出できればいいんじゃないでしょうか。多少不自然
| 35001 [ko1@at ot ne]  「エラーとして検出」というのはどういう意味でしょうか.
| 35003 [matz@ru y- a] うーん、そうなのですね。
| 35007 [mame@ts .n .] ええと、「誰も本気では使わない」はおいといて (笑)
| 35013 [matz@ru y- a] ふむ、なるほど。
| 35019 [mame@ts .n .] そういう意味です。
| 35021 [matz@ru y- a] コミットしてもらおうかなあ。
| 35022 [mame@ts .n .] ちょっとだけ変えてコミットしてみました (r17065) 。
| 35028 [ko1@at ot ne]  rb_block_t を渡すのはありえないので,渡すのなら Proc を作って渡す
| 35040 [ko1@at ot ne]  ちょっと整理しました.blockptr を消したものです.多分,このポイン
| 35041 [matz@ru y- a] rb_proc_call2ではなく、rb_proc_call_with_blockとかの方が良い
| 35042 [ko1@at ot ne]  〜2(...) という関数名は,
| 35043 [matz@ru y- a] えーと、〜2()シリーズには
| 35045 [ko1@at ot ne]  とりあえず,一番まともそうな _with_block でコミットしました.
+ 35004 [s.wanabe@gm ] 申し訳ありません。[ruby-dev:34334]以降否定もコミットもされなかったので
  35005 [ko1@at ot ne]  いや,忘れていたので,これからもどんどんコミットしてくださいませ.
threads.html
top