Feature #583
closedTmpdirとTempfile
Added by yugui (Yuki Sonoda) about 16 years ago. Updated almost 13 years ago.
Description
=begin
TempfileにTmpfileという別名を付けてTempfileは2.0では廃止する方向で。
=end
Updated by knu (Akinori MUSHA) about 16 years ago
=begin
tmpdirの方が後にできたわけだし、TmpよりTempの方がいい省略形だと思うんですが、
Tmpdir→Tempdirは考慮外でしょうか。
=end
Updated by shyouhei (Shyouhei Urabe) about 16 years ago
=begin
なおPOSIXにあるのはtmpfile()です。
あとUnix系OSでは伝統的に環境変数TMPDIRがあることが多いでしょう。
したがって私としてはTmpfile, Tmpdirのほうが慣習にそった名前であると思います。
=end
Updated by mame (Yusuke Endoh) about 16 years ago
=begin
遠藤です。
2008/09/22 19:06 Shyouhei Urabe redmine@ruby-lang.org:
したがって私としてはTmpfile, Tmpdirのほうが慣習にそった名前であると思います。
慣習という話では、ruby ではもう tempfile/tmpdir という慣習があると
思います。
ちなみに Google のヒット数:
tempfile : 1,130,000
tmpfile : 523,000
tempdir : 401,000
tmpdir : 877,000
あとは、他の LL を見た感じ
Perl : tempfile/tempdir (File::Temp)
Python : tempfile/tempdir (module tempfile)
PHP : tmpfile/tmpdir
ですかね。適当に調べただけなので間違ってたらごめんなさい。
今更名前を変えるほどの理由があるようには思いません。
--
Yusuke ENDOH mame@tsg.ne.jp
=end
Updated by knu (Akinori MUSHA) about 16 years ago
=begin
SUSv3にはtmpfile(3)より新しいmkstemp(3)があって、Tempfileの機能はそちらに倣っています。
…というのは言ってみただけで、そもそも、揃えたい動機は何なのかがわかりません。
tempfileとtmpdirのインターフェースって、TempfileをTmpfileにしたところで
Tmpfile.open { |f| ..fはTmpfileオブジェクト.. }
Dir.mktmpdir { |d| ..dは文字列.. }
でぜんぜん揃いませんよね。なんで互換性を失ってまで名前だけ変えるんですか?
=end
Updated by shyouhei (Shyouhei Urabe) about 16 years ago
=begin
ん、当然そこのインターフェースも揃えるんだと思ってましたが。
今のTempfileって正直Delegatorの習作みたいな感じがしてあんまり好きじゃないです。
=end
Updated by knu (Akinori MUSHA) about 16 years ago
=begin
インターフェースが好きじゃないから名前を変える?
何が当然なのかさっぱり読み取れないんですが。じゃあこのissueは何なの?
tmpfileというライブラリを作って将来的にtempfileは廃止しようってことなら、
はっきりそう提案してください。
=end
Updated by shyouhei (Shyouhei Urabe) about 16 years ago
=begin
なんなんでしょうね。俺に切れられても困りますが(First Post俺じゃないし)。
=end
Updated by shyouhei (Shyouhei Urabe) about 16 years ago
=begin
まあそれはそれとして自分の意見を書いておきますね。
1 tempfileとtmpdirは純粋に分かりづらすぎる。require "tmpfile"を書
いたことは思い出すだけでも片手では数え切れないくらい経験してい
る。したがって改名に賛成。
2 名前としてtempfileとtmpfileなら、tmpfileのほうが好き。POSIXから
の慣習に沿っている。
3 現在のtempfileの設計とか実装は好きじゃない。たとえば
- Tempfile.openにブロックつけて起動したらブロックの最後でunlink
してほしい。 - Process.daemonするとゴミファイルが残るのはどうにかしてほしい
4 名前を変えて再出発するなら、せっかくなので上記のような点もふく
めて再設計するのがいいと思う。
=end
Updated by knu (Akinori MUSHA) about 16 years ago
=begin
このissue自体、文脈もなしにいきなり(リリースマネージャから)出てきたので面くらいました。
卜部さんの「当然〜と思ってました」には、このissueの何らかの経緯を共有しているにおいを
感じたんですが、違いましたか。
まあ、提案はいいんですが、オフトピックですよね。
ruby-devでもっと具体的な内容に落として議論した方がいいと思います。
=end
Updated by shyouhei (Shyouhei Urabe) about 16 years ago
=begin
そうですね。「当然〜」は誤解をまねく表現でした。ごめんなさい。
=end
Updated by shyouhei (Shyouhei Urabe) almost 16 years ago
- Assignee set to nobu (Nobuyoshi Nakada)
=begin
=end
Updated by shyouhei (Shyouhei Urabe) about 14 years ago
- Status changed from Open to Assigned
=begin
=end
Updated by naruse (Yui NARUSE) about 13 years ago
- Project changed from Ruby master to 14
- Target version deleted (
3.0)
Updated by naruse (Yui NARUSE) about 13 years ago
- Project changed from 14 to Ruby master
Updated by mame (Yusuke Endoh) almost 13 years ago
- Status changed from Assigned to Rejected
- Assignee changed from nobu (Nobuyoshi Nakada) to matz (Yukihiro Matsumoto)
長期間進展がみられないので閉じます。[ruby-core:42391] を参照。
--
Yusuke Endoh mame@tsg.ne.jp