Feature #583

TmpdirとTempfile

Added by Yuki Sonoda over 6 years ago. Updated about 3 years ago.

[ruby-dev:36448]
Status:Rejected
Priority:Normal
Assignee:Yukihiro Matsumoto

Description

=begin
TempfileにTmpfileという別名を付けてTempfileは2.0では廃止する方向で。
=end

History

#1 Updated by Akinori MUSHA over 6 years ago

=begin
tmpdirの方が後にできたわけだし、TmpよりTempの方がいい省略形だと思うんですが、
Tmpdir→Tempdirは考慮外でしょうか。
=end

#2 Updated by Shyouhei Urabe over 6 years ago

=begin
なおPOSIXにあるのはtmpfile()です。
あとUnix系OSでは伝統的に環境変数TMPDIRがあることが多いでしょう。

したがって私としてはTmpfile, Tmpdirのほうが慣習にそった名前であると思います。
=end

#3 Updated by Yusuke Endoh over 6 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

#4 Updated by Akinori MUSHA over 6 years ago

=begin
SUSv3にはtmpfile(3)より新しいmkstemp(3)があって、Tempfileの機能はそちらに倣っています。
…というのは言ってみただけで、そもそも、揃えたい動機は何なのかがわかりません。

tempfileとtmpdirのインターフェースって、TempfileをTmpfileにしたところで

Tmpfile.open { |f| ..fはTmpfileオブジェクト.. }
Dir.mktmpdir { |d| ..dは文字列.. }

でぜんぜん揃いませんよね。なんで互換性を失ってまで名前だけ変えるんですか?
=end

#5 Updated by Shyouhei Urabe over 6 years ago

=begin
ん、当然そこのインターフェースも揃えるんだと思ってましたが。
今のTempfileって正直Delegatorの習作みたいな感じがしてあんまり好きじゃないです。

=end

#6 Updated by Akinori MUSHA over 6 years ago

=begin
インターフェースが好きじゃないから名前を変える?
何が当然なのかさっぱり読み取れないんですが。じゃあこのissueは何なの?

tmpfileというライブラリを作って将来的にtempfileは廃止しようってことなら、
はっきりそう提案してください。
=end

#7 Updated by Shyouhei Urabe over 6 years ago

=begin
なんなんでしょうね。俺に切れられても困りますが(First Post俺じゃないし)。
=end

#8 Updated by Shyouhei Urabe over 6 years ago

=begin
まあそれはそれとして自分の意見を書いておきますね。

1 tempfileとtmpdirは純粋に分かりづらすぎる。require "tmpfile"を書
いたことは思い出すだけでも片手では数え切れないくらい経験してい
る。したがって改名に賛成。

2 名前としてtempfileとtmpfileなら、tmpfileのほうが好き。POSIXから
の慣習に沿っている。

3 現在のtempfileの設計とか実装は好きじゃない。たとえば
* Tempfile.openにブロックつけて起動したらブロックの最後でunlink
してほしい。
* Process.daemonするとゴミファイルが残るのはどうにかしてほしい

4 名前を変えて再出発するなら、せっかくなので上記のような点もふく
めて再設計するのがいいと思う。
=end

#9 Updated by Akinori MUSHA over 6 years ago

=begin
このissue自体、文脈もなしにいきなり(リリースマネージャから)出てきたので面くらいました。
卜部さんの「当然〜と思ってました」には、このissueの何らかの経緯を共有しているにおいを
感じたんですが、違いましたか。

まあ、提案はいいんですが、オフトピックですよね。
ruby-devでもっと具体的な内容に落として議論した方がいいと思います。
=end

#10 Updated by Shyouhei Urabe over 6 years ago

=begin
そうですね。「当然〜」は誤解をまねく表現でした。ごめんなさい。
=end

#11 Updated by Yuki Sonoda over 6 years ago

  • Target version set to Next Major

=begin

=end

#12 Updated by Shyouhei Urabe about 6 years ago

  • Assignee set to Nobuyoshi Nakada

=begin

=end

#13 Updated by Yusuke Endoh almost 5 years ago

  • Target version set to Next Major

=begin

=end

#14 Updated by Shyouhei Urabe over 4 years ago

  • Status changed from Open to Assigned

=begin

=end

#15 Updated by Yui NARUSE over 3 years ago

  • Project changed from Ruby trunk to CommonRuby
  • Target version deleted (Next Major)

#16 Updated by Yui NARUSE over 3 years ago

  • Project changed from CommonRuby to Ruby trunk

#17 Updated by Yusuke Endoh about 3 years ago

  • Status changed from Assigned to Rejected
  • Assignee changed from Nobuyoshi Nakada to Yukihiro Matsumoto

長期間進展がみられないので閉じます。 を参照。

Yusuke Endoh mame@tsg.ne.jp

Also available in: Atom PDF