22802-25603

22553-23341 subjects 22963-23362

[Oniguruma] Version 2.1.0
22802 [kkosako@so t] ftp.ruby-lang.orgに、onigd20040202.tar.gzを置きました。
22803 [kkosako@so t] make installに抜けているものがありました。

Forward: Net:HTTP conection type is always "close" (PR#1274)
22805 [matz@ru y- a] フォワードしておきます。

Re: [ruby-cvs] ruby: * backport proc equality patch
22812 [akira@ru y- ] すいません、書き方が悪かったです。

Re: [ruby-cvs] ruby, ruby/lib: * lib/pp.rb (PPInspectTest#test_to_s_with_iv): remove instance
22813 [akr@m1 n. rg] えぇと、これは
22814 [nakahiro@sa ] a = 1になってたときに問題だった(*1)ので手元で直していたのですが、

File.fnmatch  が  "*?"  のパターンを正しく処理しない?
22815 [ocean@m2 cc ] File.fnmatch で、* のあとに ? が続く場合のマッチが正しくないようなので、
22819 [ocean@m2 cc ] もうひとつ忘れてました。']'もエスケープ対象文字だと思うので、以下のように
+ 22820 [ocean@m2 cc ] バグの修正と同時に大量にスタイルを修正するのは、
| 22821 [ocean@m2 cc ] 山本です。補足します。
| 22822 [nobu.nakada@] というか、元々DOSISH以外では[ruby-dev:22819]の例はtrueになりま
| 22823 [ocean@m2 cc ] そうですか、良かった。
| 22824 [ocean@m2 cc ] と書きましたが、やっぱりやめました(汗)
| 22825 [matz@ru y- a] 明らかなバグの場合には私の許可は不要です。
| 22826 [ocean@m2 cc ] 了解しました。
| 22827 [nobu.nakada@] コミットログを置き換えるなら cvs adm -m ですが、ファイルから読
| 22828 [ocean@m2 cc ] そうか、ChangeLogを書かなきゃいけないのか。今からやります。
| + 22829 [nobu.nakada@] 日本時間です。たぶん、大体の人は書いた時刻にしてると思います。
| | 22831 [ocean@m2 cc ] すみません、行き違いました。
| + 22830 [ocean@m2 cc ] 直前のなかださんの時刻が日本時間のようだったので、真似してコミットしました。
+ 22840 [nobu.nakada@] どうやら、これは1.8にも必要そうです。
  22843 [ocean@m2 cc ] コミットしました。

YAML.load(time) on OpenBSD3.4
22816 [kawaji@ho pe] おそらくプラットフォーム依存な話だと思うのですが、OpenBSD3.4 での
22817 [akr@m1 n. rg] Tokyo だけじゃなくて UTC にも閏秒を設定したでしょうか?
22818 [kawaji@ho pe] 以下のようにすることによって、このマシンは「UTC にも閏秒を設定した」こと
22845 [akr@m1 n. rg] なっていない感じがします。
22847 [kawaji@ho pe] ありがとうございます。
22849 [akr@m1 n. rg] うぅ、間違えました。utc は破壊的なのでこれでは私の意図した検査にはなり
23117 [kawaji@ho pe] だいぶ以前の話で、しかももうほとんど ruby には関係ないですが。

Dir.glob("**/")  のバグ
22832 [ocean@m2 cc ] File.fnmatchの件とは別に、Dir.glob("**/") が動作しないというバグがありました。
22833 [ocean@m2 cc ] "" を含めないような修正もできたので、この部分は取り消します。
+ 22834 [nobu.nakada@] それはやっぱりヘンじゃないでしょうか。
| 22835 [ocean@m2 cc ] "" を含めない Rev1.98 以前の動作でコミットしました。
| 22836 [nobu.nakada@] File.stat("")はENOENTです。OSからして空の文字列を正しいファイル
| 22837 [ocean@m2 cc ] いや、もちろん仕様を優先しますけど、目の前にコードがあるせいか、
+ 22838 [matz@ru y- a] 「含めない」でお願いします。
  22839 [ocean@m2 cc ] Rev1.104としてコミットしました。

Process.detach
22841 [nobu.nakada@] 何故か思い出したんですが、Process.detachで作られたスレッドに対
22842 [matz@ru y- a] そうですね。ついでにwatcerをwatcherに直しておいてください。

warning about string =~ string and ~string
22851 [usa@ga ba ec] string.cをぼんやり眺めていて思い出したのですが、string =~ string
22852 [matz@ru y- a] コミットしてください。

Re: parse error in ruby-1.8.0 (PR#1221)
22858 [nobu.nakada@] こういうのが来たんですが、いっそ閉じカッコの前の改行は一律無視
+ 22860 [matz@ru y- a] 良さそうですね。コミットしてください。
+ 22878 [nobu.nakada@] うっかり入れてしまうところでしたが、この部分ってなんの話だった

Re: io/nonblock
22859 [nobu.nakada@] IO#nonblockというメソッドを、なぜかio/waitに入れてしまったんで
22861 [akr@m1 n. rg] nonblock って何に必要なんですかね。
22876 [nobu.nakada@] どうなんでしょうねぇ。たしかに、他のプロセスにも影響したりして、
22880 [akr@m1 n. rg] えぇ。他のプロセスへの影響は避けようがないので、一番大きな問題ですね。
22945 [akr@m1 n. rg] この考えについてもう少し書きます。

File.fnmatch  と  Dir.glob
22862 [ocean@m2 cc ] 少し疑問が出たので、質問させてください。
22863 [matz@ru y- a] 私には文法エラーと書いてあるようには読めませんでした。書いて
22864 [ocean@m2 cc ] すみません、リンクが間違ってました(汗)
+ 22865 [ocean@m2 cc ] 山本です。誤記がありました。
| 22866 [ocean@m2 cc ] [ruby-dev:22863] に関連して・・・
| 22867 [nobu.nakada@] シェルの話ですが、rm -f ext/{,*/}Makefile などとすることはよく
| 22868 [ocean@m2 cc ] なるほど。うーむ・・・。
| 22869 [ocean@m2 cc ] もう少し考えてみます。あと、これは別の質問なのですが、
| 22871 [matz@ru y- a] 意図された動作です。Rubyは基本的に自動的なパスの正規化を行い
+ 22873 [matz@ru y- a] ここには確かにそう書いてありますが、その実装であるglob(3)に
  22875 [ocean@m2 cc ] わかりました。
  22879 [ocean@m2 cc ] BeOS(bash) で dir hoge[/]hoge としたところ、hoge[/]hoge にはマッチしましたが、
  + 22881 [ocean@m2 cc ] わかりにくかったので、修正します。
  + 22882 [matz@ru y- a] 気になるのはfnmatchって/を特別扱いしない使い方もしたいのでは
    22887 [ocean@m2 cc ] [ruby-dev:16568] で **/ があれば FNM_PATHNAME はいらないんじゃないか、
    + 22889 [ocean@m2 cc ] ruby-talkも探してみたところ、[ruby-talk:84235]を発見しました。
    + 22901 [matz@ru y- a] うーん、「fnmatchはパターンマッチャ」であるという観点からは
      22905 [ocean@m2 cc ] そうですか、名案だと思ったんですが・・・
      22922 [ocean@m2 cc ] 少し頭の整理がつきました。まつもとさんの仰りたかった仕様は、
      + 22923 [ocean@m2 cc ] あと気になるのは、bash の "hoge[/]hoge" の解釈と [ruby-dev:22922] のfnmatch の解釈が
      + 22924 [matz@ru y- a] ああ、伝わった。ありがとうございます。
        22925 [ocean@m2 cc ] 納得できますか・・・私はやっぱりシンプルなほうが(以下略)
        22926 [matz@ru y- a] あ、私の言いたかったことは
        22927 [ocean@m2 cc ] なるほど。
        22942 [ocean@m2 cc ] 今、fnmatch の仕様を確認しています。それで質問なのですが、
        22943 [matz@ru y- a] fnmatchに合わせてはどうでしょう?
        22944 [ocean@m2 cc ] こんな感じでいいでしょうか。でも、よく見るとコメントがありますね。
        22946 [matz@ru y- a] (RubyのではなくPOSIXの)fnmatchの挙動に合わせてはどうでしょ
        + 22947 [ocean@m2 cc ] なるほど。BeOS に fnmatch があれば・・・
        + 22948 [matz@ru y- a] よく見るとマッチしてませんね。fnmatchは「失敗したら
          22949 [eban@os ri .] です。
          22950 [ocean@m2 cc ] ありがとうございます。登録して、閲覧中です。
          22952 [ocean@m2 cc ] を見た限りでは、FNM_PATHNAME があるときは [ruby-dev:22879] のように振る舞い、
          + 22953 [ocean@m2 cc ] 上のリンクと、
          | 22954 [ocean@m2 cc ] よく考えると、そうでもなかったかもしれません。
          | 22955 [ocean@m2 cc ] あ、すみません。上の結果は、FNM_PATHNAME がありませんでした。だからいいんですね。
          | 22960 [ocean@m2 cc ] File.fnmatch について質問があります。
          | 22962 [ocean@m2 cc ] この質問は取り下げます。とりあえず、何通りか組んでみることにします。
          | + 22969 [ocean@m2 cc ] とりあえず、POSIX.2 の FNM_PATHNAME ありに相当するものができましたので、置いておきます。
          | + 22970 [ocean@m2 cc ] 対象リビジョンは 1.107 です。
          |   22972 [ocean@m2 cc ] DOSISH 対応と、FNM_PATHNAME を実装してみました。これにはあまり自信がないので、
          |   22974 [ocean@m2 cc ] FNM_PATHNAME がないときに '/' がパス区切りにマッチしてなかったので、修正しました。
          |   22977 [matz@ru y- a] * fnmatchはDOSISHは考慮しない。
          |   22979 [ocean@m2 cc ] 私はこれでいいです。
          |   22983 [matz@ru y- a] うーん、FNM_PATHNAMEでどこまでサポートするかという問題ですよ
          |   22984 [ocean@m2 cc ] では、そのようにすることにします。
          |   22989 [ocean@m2 cc ] バグがあったので、修正しました。( '*' のパターンが、FNM_PATHNAME なしのときおかしかった)
          |   22990 [ocean@m2 cc ] DOSISH 対応のものも(機械的に作ったもので、あまり自信がないですが)参考のために追加しました。
          |   23000 [ocean@m2 cc ] 範囲表現が POSIX.2 の動作になっていなかったのを修正しました。
          |   23006 [ocean@m2 cc ] 次の二種類を用意しました。
          |   23007 [ocean@m2 cc ] 今まで迷いがありましたが、File.fnmatch は fnmatch なんだから、
          |   + 23008 [usa@ga ba ec] ぜんぜん中身と関係ない話で恐縮ですが、
          |   | 23010 [ocean@m2 cc ] つけてみました。
          |   + 23009 [matz@ru y- a] これは理解できます。
          |     23011 [ocean@m2 cc ] [ruby-dev:16555]の新井さんの意見に全面的に賛成です。
          |     23012 [matz@ru y- a] これはこれで理解できます。私が気にしたのはその意見が
          |     23013 [ocean@m2 cc ] パターン解釈は完全に SUSv3 に準拠すべきで、フラグは
          |     23014 [ocean@m2 cc ] 実装中に気づいたのですが、'test/.test/' が
          |     23015 [matz@ru y- a] ですねえ。globで展開する時にドットで始まるファイル名を除外す
          |     23016 [ocean@m2 cc ] 了解しました。
          |     23029 [ocean@m2 cc ] 質問なのですが、
          |     23030 [ocean@m2 cc ] ようやく実装が安定したようなので、上の両方にマッチしますが、とりあえず置いておきます。
          |     23031 [ocean@m2 cc ] ・FNM_SEPMATCHがないときの **/
          |     23113 [ocean@m2 cc ] [ruby-dev:23030] の fnmatch を、dir.c にマージしてみました。
          |     23115 [ocean@m2 cc ] fnmatch_helperを少しリファクタリングしました。(処理の読みやすさの向上と、マクロ RETURN() の括弧の追加)
          |     + 23116 [matz@ru y- a] dir.cに依存しないものは再コンパイルしないのが正しい動作だと
          |     | 23118 [ocean@m2 cc ] 一度 make した後、dir.c だけ変更して再度 make すると、
          |     | 23119 [ocean@m2 cc ] 山本です。補足します。
          |     | 23120 [ocean@m2 cc ] 山本です。たびたびすみません。
          |     | 23122 [ocean@m2 cc ] 山本です。BeOSでも同じ現象が見られました。BeOSについてはあまり自信が持てないのですが、
          |     + 23153 [ocean@m2 cc ] Dir.glob は、まつもとさんが仰っていたように、'[a/c]' 全体をエントリと比較することにしました。
          |       23159 [ocean@m2 cc ] cygwin をインストールして、fnmatch と glob を試せるようになりました。
          |       23160 [ocean@m2 cc ] cygwin の glob は腐っていました。"\\[a/c?" は [a/c] にマッチするのに、"\\[a/c\\]" はマッチしません。
          + 22961 [ocean@m2 cc ] よく見ると、
            22964 [vzw00011@ni ] こんにちは。
            22965 [ocean@m2 cc ] 情報ありがとうございます。安心しました。

path for RUBY
22870 [gotoyuzo@no ] mkmf.rbでMakefileを作ると、$(RUBY)にディレクトリ名が含まれな
+ 22872 [matz@ru y- a] 「pathが通ってないのがいけない」とか。
| 22874 [gotoyuzo@no ] (^^;;
| 22885 [eban@os ri .] たぶん大丈夫でしょう。だめならできるように直します。
+ 23062 [usata@so an ] ...
+ 25586 [usata@so an ] ...
  25603 [usa@ga ba ec] いずれの問題も、

Process.spawn & IO.popen w/o shell
22877 [nobu.nakada@] ように、パイプを使ってシェルを経由しない方法がありません。また、
+ 22883 [matz@ru y- a] いいんじゃないでしょうか。
| 22884 [nobu.nakada@] たしかに。
| 22886 [matz@ru y- a] う、さすがパッチモンスター。一家に一台。
| 22888 [nobu.nakada@] [ruby-dev:14195]だけだとやっぱり充分じゃなかったので、書き直し
| 22902 [matz@ru y- a] 例外が出た方が良いと思います、ってそういう意味じゃない?
| 22903 [nobu.nakada@] そういう意味です。
| 22904 [matz@ru y- a] ぜんぶコミットしてくださいな。よろしく。
| 22967 [nobu.nakada@] openやIO.foreachなど、"|command..."を受け付けるもの全部こうする
| + 22973 [nobu.nakada@] pnameがゴミになってました。
| + 22975 [matz@ru y- a] いや、やりすぎってことはないんじゃないでしょうか。むしろ一貫
|   22981 [nobu.nakada@] いや、例外を上げるようにするというだけじゃなくて、IO.popenなど
|   22982 [matz@ru y- a] あ、そういうことね。
|   22985 [nobu.nakada@] 一応[ruby-dev:22967]はそうしてます。配列という形式にそこまでの
|   22992 [matz@ru y- a] やっぱ、やめましょう。単なるopenでは配列とシェルを経由しない
|   22994 [nobu.nakada@] openはそれで異義はないんですが、IO.foreachあたりは二重にブロッ
|   22996 [matz@ru y- a] 「うっとうしい」には同意しないでもないですが、かといってひと
+ 22898 [taca@ba k- t] これは自前で fork + exec を行うのの簡易版ということでしょうか?
  22899 [nobu.nakada@] 簡易版かつportable版です。
  22938 [taca@ba k- t] あぁ、fork()がない世界を対象ということなのでしょうか。
  22968 [nobu.nakada@] そういう世界でも、非同期実行はできるものはありますから。
  22991 [taca@ba k- t] 納得です。
  22993 [nobu.nakada@] こんな感じですか。
  + 22995 [taca@ba k- t] あぁ、っとごめんなさい。上記で行っている内容はBSD系OSでは良いのですが、
  + 23001 [kjana@dm la ] 例えば webrick/server.rb の WEBrick::Daemon.start の様に?

rb_glob(i) & constness
22890 [ocean@m2 cc ] 先ほど 1.9 に rb_glob(char*, ... => rb_glob(const char*, ... の変更をしたんですが、
22891 [akr@m1 n. rg] コンパイルして気がついたのですが、
22892 [ocean@m2 cc ] すみません、constを余計につけてました。修正をコミットしました。
22893 [akr@m1 n. rg] まぁ、世の中には警告どころかエラーになってコンパイルできないのを
22894 [ocean@m2 cc ] bcc32 では警告非表示オプション -w- が CFLAG に付加されているので、気づきませんでした。
22897 [ocean@m2 cc ] 型の違うポインタの変換を警告するよう、bcc32/Makefile.sub と bcc32/setup.mak を変更しました。
22900 [ocean@m2 cc ] 入れてしまいました。

make realclean  で  lex.c  が削除される
22895 [ocean@m2 cc ] bcc32 で make realclean を実行すると lex.c が削除されますが、
22896 [ocean@m2 cc ] 前の投稿 [ruby-dev:22895] は取り消します。make distclean を使えばすむことでした。

bcc32  の  makefile
22906 [ocean@m2 cc ] bcc32の警告オプションを、mingwを参考に増やしてみたところ、
22907 [nobu.nakada@] hdrdirが使えるかも知れませんが、別ディレクトリで実行した場合に
22908 [ocean@m2 cc ] (2004/02/16 19:27)
22909 [ocean@m2 cc ] ruby_1_8 ブランチで、マクロの多重定義の警告が出ました。
22910 [nobu.nakada@] コマンドラインで -DHAVE_GETLOGIN しています。
22914 [ocean@m2 cc ] びびりました。これだけの変更をしても問題ないものか・・・
+ 22915 [nobu.nakada@] config.hは基本的に順序は関係ありませんから、重複を取り除いて
| 22917 [ocean@m2 cc ] またすれ違いましたね(汗)すみません。
| 22918 [nobu.nakada@] 追加/削除項目は以下の通りでした。
| 22919 [ocean@m2 cc ] なるほど、必要そうですね。
+ 22916 [ocean@m2 cc ] だいたい仕組みもわかって、問題なさそうなのでコミットしました。

core dump with /#{Thread.pass}/o
22911 [akr@m1 n. rg] ついに捕まえたのですが、次のようにすると core を吐きます。
22912 [nobu.nakada@] 一応、既知の問題です。
22913 [akr@m1 n. rg] おぉ。たしかにロックを行うのが正しい解ですね。
22920 [akr@m1 n. rg] たとえば、次のようにするとか。
22921 [matz@ru y- a] このパッチでakrさんとこの問題が回避できてるようでしたら、当

[BUG] make distclean  が失敗する
22928 [ocean@m2 cc ] MAIN の make distclean が失敗します。ruby_1_8 のほうは大丈夫です。
+ 22929 [ocean@m2 cc ] 補足します。Win2000 + C++Builder5SP1 (bcc32 ver5.5.1) で、
| 22930 [ocean@m2 cc ] さらに補足します。BeOS だと --prefix ではビルドできないので、
| + 22931 [ocean@m2 cc ] あ、BeOS では ext/socket がコンパイルできないので、ext/socket/MANIFEST を MANIFEST--
| + 22932 [usa@ga ba ec] DESTDIR と --prefix では意味が違いますから。
|   22933 [ocean@m2 cc ] こんにちは。
|   22934 [usa@ga ba ec] DESTDIR は単に構成物を一時的にどこかにインストールイメージの
|   22935 [ocean@m2 cc ] なるほど、よくわかりました。Windows で DESTDIR をインストール
|   22936 [ocean@m2 cc ] というわけで、BeOS 5 でのビルド手順は・・・(ruby1.8.1)
+ 22937 [ocean@m2 cc ] 直ってるのを確認しました。

polish sprintf.c
22939 [usa@ga ba ec] talkやlistで話題になったsprintf.cの"%08b"の話ですが、そもそも
22940 [matz@ru y- a] うむ、そのままコミットしてくださいませんか。

[Oniguruma] Re: /()*\1/ =~ ""
22941 [kkosako@so t] [ruby-dev:20224]

StringScanner context
22951 [nobu.nakada@] クラス定義の中でstrscanをrequireすると、トップレベルとは別の
22959 [aamine@lo er] ありがとうございます。

Dir#glob proposal
22956 [nobu.nakada@] 思い付きですが、Dir#globというメソッドはどうでしょうか。例えば、
+ 22957 [ocean@m2 cc ] すみません、今 File.fnmatch で頭がいっぱいなので、
+ 22958 [matz@ru y- a] * どういう風に使うものでしょう
  22971 [nobu.nakada@] 例えばcp_rとか二つのディレクトリに対して再帰処理をするような場
  + 22978 [ocean@m2 cc ] 確かに楽かも。私の場合、
  | + 22980 [ocean@m2 cc ] これじゃだめですね。path のポインタが各段階で変わるので、const char *sub じゃなくて、
  | + 22986 [ocean@m2 cc ] あれから考えて、
  |   22987 [ocean@m2 cc ] あ、でも二文字以上で一組のパターン(エスケープなど)が絡むとやっかいかもしれません・・・
  |   22988 [ocean@m2 cc ] 自分で実装しておきながら、パターンをリストに分割していたのを忘れてました。
  |   23003 [ocean@m2 cc ] Dir.glob('e:hoge', 'e:/base') # 'e:/base' を基準ディレクトリとみなす。File.extract_path と同様。
  + 23444 [ocean@m2 cc ] (2004/02/20 12:35)
    23445 [matz@ru y- a] Dir.chdirは基準ディレクトリを変更するメソッドではないかと。
    23446 [ocean@m2 cc ] (2004/04/27 19:31)
    23447 [matz@ru y- a] そりゃそうですけど。スレッド環境でchdirを使った時点で「負け」
    23448 [ocean@m2 cc ] (2004/04/27 21:51)
    23449 [matz@ru y- a] その方が良いとは思います。
    23457 [ocean@m2 cc ] (2004/04/27 22:43)
threads.html
top