32996-34774

32797-33118 subjects 33328-33934

binmode and ASCII-8BIT
32996 [zn@mb .n ft ] を見てちょっと調べてみたのですが、
32998 [matz@ru y- a] 順番に。
+ 33000 [sheepman@sh ] IO.pipe の第2引数に nil を指定した時に内部エンコーディングが
| 33001 [matz@ru y- a] バグですね。ありがとうございます。
+ 33002 [nobu@ru y- a] Stringでというのはforce_encodingでしょうか。
  33003 [matz@ru y- a] nilはASCII-8BITを指定したことになるようですね。許すことのメ

strings of UNKNOWN-8BIT (was Re: Binary String)
33057 [sheepman@sh ] 特に意見はなくて確認なんですが、エンコーディングが「未定義」の文字列が
33065 [nagai@ai ky ] Ruby の default_external が適当ではない状況であっても,
33073 [naruse@ai em] Ruby の default_external は基本的に locale から情報を取ってきているので
33074 [nagai@ai ky ] 基本的には locale ですが,locale での獲得には失敗しても
33075 [naruse@ai em] ここでの「それ」は Encoding.locale_charmap と同じものという理解で正しい
33103 [nagai@ai ky ] ごめんなさい.私にはわかりません.

Time.mktime
33058 [tadf@do rb o] 1.8 で Time.mktime(2001,2,3,24) はただ範囲外エラーですが、1.9 では違う
33081 [akr@fs j. rg] [ruby-core:14517] からのスレッドで mktime の結果を localtime
+ 33086 [matz@ru y- a] そんな気がします。なんか範囲外でも良きに計らってくれた方が
+ 33135 [tadf@do rb o] これ迄のように勝手に正規化すること自体は、良いか悪いか考えかた次第だと

time.rb
33059 [tadf@do rb o] time.rb は、Time を継承した際にうまく機能しないように思います。
33082 [akr@fs j. rg] なるほど。どうぞ。

Shellwords alias bug?
33060 [m-kawato@mw ] Ruby 1.9.0 のshellwordsライブラリにバグらしきものを見つけたので、報告します。

rational 1.18
33061 [tadf@do rb o] 原さんの rational 1.18 で、つぎのようなエラーになりました。
33132 [sinara@bl de] 対応遅れて申し訳ありません。quoの再定義に間違いがありました。

Re: [ruby-cvs:22244] Ruby:r15007 (trunk): * enc/make_encdb.rb: added. search enc/*.c and make encoding database.
33069 [matz@ru y- a] すみません、私から「コミットしてください」と言っといてなんで
33070 [matz@ru y- a] と、メールに書いたらやる気になりましたので、私がやりましょう。
33071 [naruse@ai em] おっと、気づきませんでした、お手数掛けます。
33099 [usa@ga ba ec] 何日か見てなかったので状況を追いきれていませんが、この「影響

Segmentation fault when File.open
33072 [mukai@jm k. ] ...

Encoding.compatible? and dummy encodings
33076 [sheepman@sh ] ISO-2022-JP な文字列と EUC-JP な文字列が compatible と
33077 [naruse@ai em] dummy encoding だからではなく、"\e$B4A;z\e(B" が 7bit ASCII の範囲に収
+ 33084 [matz@ru y- a] dummyはcompatibleじゃないとか。7bitの範囲にESCを含めないとか。
| + 33089 [nobu@ru y- a] 後者はESCで切替えが起こるものでないと効果がないので、EBCDICなど
| | 33092 [matz@ru y- a] EBCDICは当面考えなくてもよいと思います。どうかんがえても正規
| + 33090 [naruse@ai em] ISO-2022-JP でも、[\t\n\r !-~] のみなら ESC も出てこないので、これは
|   33094 [duerst@it ao] そもそも ISO-2022-JP も UTF-7 も内部処理のために作られてないし、
|   33096 [matz@ru y- a] うーん、おっしゃる通りです。とすると「dummyはcompatibleでな
|   33098 [naruse@ai em] encodings"
+ 33087 [sheepman@sh ] なるほど、了解しました。 ありがとうございます。

NEW REPLICA ENCODINGS AND ENCODING ALIASES
33078 [naruse@ai em] 手元の環境を眺めつつ、色々と replica や alias を設定してみました。現在指
+ 33085 [matz@ru y- a] いいんじゃないかと思います。
| 33091 [naruse@ai em] r15039 でコミットしました。
+ 33131 [duerst@it ao] 成瀬さん、こんにちは。
  33134 [naruse@ai em] あー、なるほど。

A patch for the manpage and ruby -h
33079 [yugui@yu ui ] ...

IO#gets with limit
33088 [sheepman@sh ] IO#gets に limit を付けて呼ぶと valid_encoding じゃない

Coerce via aliased methods
33095 [yugui@yu ui ] Fixnumのcoerceする演算は、エイリアス経由で使用すると例
33495 [matz@ru y- a] 考えてみましたが、元の名前を使うべきでしょうね。で、これをど

Re: [ruby-cvs:22286] Ruby:r15049 (trunk): * configure.in (setup): add -I$(EXTOUT)/$(arch) to MINIRUBY.
33097 [usa@ga ba ec] この変更を入れたいと思った目的はわからないですが、意図を察す
33100 [matz@ru y- a] その通りです。

String#valid_encoding? shoud be strict?
33101 [maki@ru yc l] 高橋征義です。1.9のエンコーディングとString#valid_encoding?について。
+ 33102 [akr@fs j. rg] そういう機能はあっていいだろうとは思いますが、とりあえずちょっ
| + 33105 [maki@ru yc l] # ひとつだけですか?
| | + 33106 [matz@ru y- a] それは高橋さんが日本人だから?
| | + 33112 [akr@fs j. rg] あぁ、そういえばもうひとつ疑問を思いつきました。
| + 33119 [duerst@it ao] 鬼車の文字属性テスト (\p{Hiragana}とか) をうまい具合組み合わせれば
|   33125 [naruse@ai em] Unicode Scripts は確かに有用なのですが、今回期待されている集合は JIS X
+ 33107 [naruse@ai em] そういったニーズはわかるのですが、そういった validation に必要なデータ量
+ 33137 [tommy@tm m. ] 〜〜

us_ascii.o: No such file or directory
33111 [duerst@it ao] 今朝 svn から更新したところで、miniruby を作ろうとするところで、
33113 [usa@ga ba ec] 理由が思いつかないんですが、autoconfから全部やり直したらうま
33114 [usa@ga ba ec] ああ、もう一つありました。

Thread#priority= does not work
33124 [mame@ts .n .] Thread#priority= による優先度の設定ができないようです。
34754 [ko1@at ot ne]  IRC で言われて気づいたんですが,この件をすっかり見逃してました.
34774 [mame@ts .n .] 私も忘れてました。

uninitialized constant Encoding::ASCII_8BIT (NameError)
33129 [akr@fs j. rg] 最近、test-all が動かないような気がします。

1.9.0 をコンパイルしてみた
33130 [sinara@bl de] 1.9.0.0 をコンパイルしてみました。
33133 [usa@ga ba ec] ということは、bladeが1.9対応に!
33146 [sinara@bl de] ははは。

enc_register_at should use strdup
33136 [sheepman@sh ] 次のようなコードでエラーになります。

Bignum#* might invoke GC parallelly?
33139 [mame@ts .n .] rb_big_mul や divrem は rb_thread_blocking_region の中で実行されますが、
+ 33141 [ko1@at ot ne]  問題ありです。
| 33143 [matz@ru y- a] 私は西山さんをOKした時に同時にOK出した認識でいます。で、その
| 33155 [mame@ts .n .] 私は OK を頂いた認識でいませんでした。
+ 33442 [akr@fs j. rg] 今日、以下のように rb_thread_blocking_region 中に GC が発生
  33471 [mame@ts .n .] すっかり忘れてました。ごめんなさい。
  33482 [matz@ru y- a] 判断はささだくんがするのがいいと思ってたんですけど、最近反応
  33486 [ko1@at ot ne]  今修論審査中です(審査するほうでもされるほうでも無いですが)。

eval(str.dump)==str
33142 [zn@mb .n ft ] 1.8 だと eval(str.dump) == str が true になりますが、
33144 [matz@ru y- a] このケースについてはバグっぽいです。evalはstring.encodingを見
33145 [zn@mb .n ft ] そういう仕様なら、dumpで返ってくる文字列がASCII-8BITに
33163 [matz@ru y- a] そうですね。昨日、空港で飛行機を待ってる時に気がつきました。

default script encoding and -K option
33156 [sheepman@sh ] [ruby-dev:33140] でなかむらさんが書かれていますが、
33167 [usa@ga ba ec] な、なんだってー(AAry
33168 [matz@ru y- a] ですね。
+ 33169 [usa@ga ba ec] 了解です。
| 33170 [matz@ru y- a] 同意します。
+ 33172 [nobu@ru y- a] こんな感じですか。
  33174 [matz@ru y- a] えーと、要するに普段rb_enc_associate()の対象にならないIOにむ
  33175 [nobu@ru y- a] 今度はlex_inputじゃなくてlex_lastlineから取ってます。
  33177 [matz@ru y- a] あ、なるほど。

the encoding of StringIO.new
33159 [sheepman@sh ] スクリプトで扱う文字列のエンコーディングは default_external を仮定することが

default encoding for Marshal.load
33164 [shugo@ru y- ] String#dumpの話を見てふと気になったのですが、1.8でMarshal.dumpしたデータを
33166 [matz@ru y- a] ええ、1.8では文字列は基本的にASCII-8BITですから。
33171 [shugo@ru y- ] そうかもしれません。
33256 [ruby-dev@ti ] [[ruby-dev:33171] Re: default encoding for Marshal.load]
+ 33268 [naruse@ai em] Marlshal.recursive_force_encoding とかいう「データ中の文字列をたどって
| 33271 [nobu@ru y- a] String限定なら、ここでrb_str_subseq()を使うだけでもできます。
+ 33269 [matz@ru y- a] Marshal.load()の第二引数にProcを指定して、文字列だったら
  33270 [naruse@ai em] その方法だと、Ruby 1.9 で作った、encoding の設定してある文字列にまで
  33272 [matz@ru y- a] いや、たぶん1.8のデータを1.9にアップグレードするスクリプトを

should initialize the group of threads
33173 [sheepman@sh ] 2ちゃんねるのスレで見かけたバグです。
33176 [sheepman@sh ] フリーズした ThreadGroup に所属するスレッドからは

コンパイルの問題 (r15218)
33185 [duerst@it ao] r15128 当たりで (実はもう少し前から) コンパイルできなくなりました。
33187 [vincent.isam] $PATHのrubyが1.9じゃなかったら問題ないですけど、直接に
33204 [naruse@ai em] 原因究明ありがとうございます。これだとRuby 1.8 でエラーが出るので -Ks を
33209 [duerst@it ao] Vincent, 成瀬さん、対策ありがとうございます。
33210 [naruse@ai em] insns.def ですね。英語のコメントと日本語 (Shift_JIS) のコメント両方ある

Ruby1.9 String バイト列へのインデックス アクセス
33186 [hkiryu@mr .b] 長文失礼します。
33192 [matz@ru y- a] 少なくとも[]で単一バイトを取り出すことはできませんね。実は
33195 [rubikitch@ru] るびきちです。
+ 33196 [matz@ru y- a] まあ、簡潔ですね。
| + 33197 [rubikitch@ru] そうなんですよ。
| | 33212 [hkiryu@mr .b] みなさま返答ありがとうございます。
| + 33443 [nobu@ru y- a] これはだいぶ前から考えているんですが、かなり難しいというか面倒そ
|   + 33445 [naruse@ai em] あぁ、作ろうかなぁと思っていたものがすでに、というわけで一票。
|   | 33448 [matz@ru y- a] そうなのか。
|   | 33472 [naruse@ai em] えぇ、
|   | 33480 [nagai@ai ky ] binary データの操作という観点で考えてみると,
|   + 33447 [matz@ru y- a] 知ってます。私も何度か挫折してますから。
+ 33199 [naruse@ai em] これ、今やろうとして、怒られたんですよね(ぉ
| + 33215 [duerst@it ao] Integer#chr だけではだめで、Integer#chr(encoding) になるかと思います。
| | 33216 [vincent.isam] もうできますよ。
| | + 33218 [hkiryu@mr .b] すみません。最初のメールが長すぎたので、
| | | + 33219 [vincent.isam] でもこのEnumeratorに[]を使うようになったらいいん
| | | | + 33220 [hkiryu@mr .b] すみません。
| | | | + 33222 [vincent.isam] 概念実証のため、作ってみました。
| | | + 33304 [duerst@it ao] 桐生さん、こんにちは。
| | + 33229 [naruse@ai em] あぁ、すでにあったんですね。
| + 33362 [rubikitch@ru] るびきちです。
|   33414 [naruse@ai em] [ruby-dev:33219] [ruby-dev:33222] に実証コードがありますね。
+ 33214 [duerst@it ao] Bytes クラスはそもそもほとんどもう既にある。Encoding が ASCII-8BIT

nonlinear performance of each_char
33189 [akr@fs j. rg] % ./ruby -v -e '
33206 [nobu@ru y- a] 毎回rb_str_substr()の中で先頭から探しているからですね。
33207 [akr@fs j. rg] 試してませんが、

Re: [ruby-cvs:22367] Ruby:r15130 (trunk): * enc/koi8_u.c: added.
33191 [akr@fs j. rg] これ以降、クリーンビルドすると以下のように警告が出るようです。
33200 [naruse@ai em] ascii.c で replica が定義されているのを削除し忘れていました。r15134で

each_char
33211 [akr@fs j. rg] 以下のように、each_char が "bc" とか 1文字でないものを yield
33213 [vincent.isam] 問題は前の字の長さが使われていた事です。
33217 [vincent.isam] この前のパッチはyieldの後に文字列の長さを改めて参考する

encoding of Iconv::Failure#success
33221 [akr@fs j. rg] 以下のように、Iconv::Failure#success の返り値の encoding が

printf "%0x"
33224 [akr@fs j. rg] printf の %0x に負の整数を与えると、値によって .. がついたり
33225 [nobu@ru y- a] それ以外にも、精度を指定すると妙な感じです。
+ 33347 [akr@fs j. rg] たしかにそんな気もします。
| 33351 [nobu@ru y- a] これはKernel#to_sを使えばいいんじゃないですかね。
+ 33350 [matz@ru y- a] コミットしてください。

[PATCH] warnings of enc/trans/utf_16_32.c
33226 [nobu@ru y- a] enc/trans/utf_16_32.cの警告を消すパッチです。自動生成ということ
33232 [duerst@it ao] 中田さん、こんにちは。
33233 [nobu@ru y- a] ポインタのキャストはできる限り避けたほうがよいと個人的には思いま
33249 [duerst@it ao] 気持ちは分かりますが、事実上 unsigned として扱われているものを

each_char yields extra NUL
33231 [akr@fs j. rg] 以下のようにすると、String#each_char が元の文字列には含まれ

SEGV by test/ruby/test_io_m17n.rb
33234 [akr@fs j. rg] % ./ruby test/runner.rb test/ruby/test_io_m17n.rb
33250 [duerst@it ao] 田中さん、こんにちは。

Re: [ruby-cvs:22386] Ruby:r15149 (trunk): * string.c (rb_str_each_char): move forward.
33239 [akr@fs j. rg] なんで rb_enc_left_char_head や rb_enc_right_char_head を使
33240 [nobu@ru y- a] 文字境界を調べるためです。ブロックの中で変わってしまっている可能
+ 33242 [akr@fs j. rg] うぅむ。たしかにブロックの中で変わるときに、broken でないの
| 33244 [nobu@ru y- a] それは考えたんですが、ネストできなくなっちゃうんですよね。
| 33246 [akr@fs j. rg] そっか。それはまずいですね。
+ 33243 [nobu@ru y- a] freezeしたコピーを作っておいて、変更の影響を受けないようにすると
  + 33245 [vincent.isam] 「i += len」の代わりに、「i += n」じゃないですかね。
  + 33254 [matz@ru y- a] んじゃ、この線でコミットしてください。
    + 33255 [matz@ru y- a] 他のyieldを呼ぶメソッド(each_lineとかgsubとか)もコピーを作っ
    | 33277 [nobu@ru y- a] こんなとこでしょうか。
    + 33308 [nobu@ru y- a] もうひとつ思い付きました。

requests to transcode
33247 [usa@ga ba ec] transcodeに関して、3点ほど要望があるのですが、それぞれ実現可
33251 [duerst@it ao] 中村さん、こんにちは。
+ 33252 [usa@ga ba ec] きっと成瀬さんがいろいろ助けてくれると思います。
| 33286 [naruse@ai em] stateful encoding を処理するは、ISO 2022 についてならば直前の escape
| 33287 [usa@ga ba ec] あんまりたくさんブロックに引数を渡すようにしても書き間違える
| 33295 [naruse@ai em] それだと converer 一つですかねぇ。
| 33298 [usa@ga ba ec] と、なると思います。
+ 33253 [naruse@ai em] Shift_JIS と EUC-JP の疑問ってマッピングの話ですか?それでしたら後ででも

Bignum#quo may cause infinite loop
33257 [mame@ts .n .] double に収まらない範囲の bignum に対して小さい値で quo すると
33260 [matz@ru y- a] 「(unsigned int)-n」の意味がよくわからないんですが(私って馬
33263 [mame@ts .n .] big_shift は int を受け取って、それが正の時は big_rshift を使って

exhaustive test for bignum.c
33258 [mame@ts .n .] test_bignum.rb にテストを追加して網羅性を上げてみました。
+ 33259 [matz@ru y- a] コミットしてください。
+ 33267 [akr@fs j. rg] rational を require した状態だとテストがふたつ失敗するようで、
  33274 [mame@ts .n .] make test-all で確認してませんでした。すみません。

Local variables in ChangeLog
33261 [zn@mb .n ft ] EmacsのC-x 4 aで「火  1月 22 ...」のように曜日と月が
33262 [matz@ru y- a] どうぞ。コミットしてください。

Marshal.load fails on LANG=ja_JP.EUC-JP
33264 [akr@fs j. rg] 以下のように、56225 を Marshal.dump したものを

backported GC.stress for 1.8
33265 [shiba@ma l2 ] GC.stressを1.8ブランチに合うよう、パッチを作りました。
33266 [shiba@ma l2 ] すみません、先程のものには凡ミスがありました。無視して下さい。

Re: [ruby-cvs:22404] Ruby:r15167 (trunk): * configure.in (MINIRUBY): remove -I$(EXTOUT)/$(arch) from
33273 [akr@fs j. rg] test/ruby/test_m17n_comb.rb でのテスト失敗が増えているようで

comment about sprintf %u
33275 [mame@ts .n .] r12809 から sprintf の %u が %d と同じ意味になったようですが、
33294 [matz@ru y- a] コミットしてください。

comment about Math#asin
33276 [mame@ts .n .] Math#asin はコメントによると 0..PI の値を返すことになっていますが
+ 33293 [matz@ru y- a] いえいえ、助かります。コミットしていただけませんか?
+ 33297 [knu@iD em ns]  ruby_1_8 ブランチについてもお願いします。

ASCII-8BIT regexp
33279 [sheepman@sh ] エンコーディングが ASCII-8BIT である正規表現オブジェクトに
33301 [akr@fs j. rg] ASCII-8BIT であることにたいした意味はありませんが、それはそ
33311 [naruse@ai em] US-ASCII か ASCII-8BIT かあたりは議論になりそうですが、

exhaustive tests for struct.c, sprintf.c and math.c
33280 [mame@ts .n .] test_struct.rb と test_sprintf.rb と test_math.rb にもテストを追加
33296 [matz@ru y- a] そうですね。その他のテストも遠慮なく追加してください。ただ、

fronzen string cannot unpack("p")
33282 [nobu@ru y- a] 1.9で、pack("p")してできたStringをfreezeすると、unpackできなくな
33291 [matz@ru y- a] 副作用がありそうな修正ですが、どう問題があるのか確信がないの

Time#strftimeのエンコーディング
33303 [rubikitch@ru] Time#strftimeのエンコーディングが ASCII-8BIT になってしまいます。
33305 [matz@ru y- a] なるほど。見落としてました。ところで、strftimeの返すエンコー
+ 33310 [nobu@ru y- a] とりあえずformat.encodingを無視するのはまずかろうと思われるので、
| 33316 [zn@mb .n ft ] strftime(format.encode(locale)).encode(format.encoding)
| 33317 [nobu@ru y- a] こんなとこですか。
| + 33319 [nobu@ru y- a] ちなみに、Windows-31J(CP932)の変換は未対応ですが、日本語版
| | 33320 [usa@ga ba ec] 実はそれなりに困っているので、workaroundとして入れておいて欲
| + 33325 [akr@fs j. rg] うぅむ。変換しますか。
|   33341 [nobu@ru y- a] まぁ、おそらくほとんどの場合は変換なしでも問題ないでしょう。ダメ
|   33342 [akr@fs j. rg] いまのところ変換しないほうが自然なんじゃないかと思います。
+ 33312 [akr@fs j. rg] 常に missing/strftime.c を使って、locale 非依存にするとか?
  33314 [matz@ru y- a] それはそれでうれしくない人もいそうです。実際にruby-talkで
  33315 [akr@fs j. rg] locale 依存なのは別メソッドにわけたほうがいいんじゃないです
threads.html
top