質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.90%

PyPIに公開する予定のパッケージ名について良い案がほしい

解決済

回答 3

投稿 編集

  • 評価
  • クリップ 1
  • VIEW 1,053

YouheiSakurai

score 5645

今、以下の特徴があるパッケージを作成してPyPIで公開しようと思っているのですが、良い名前が思いつかず迷ってます。

  • Windows専用、ctypes経由でWin32 APIを使っている。
  • threading.Threadterminate()機能を追加、TerminatableThread等の子クラスを作る予定。
  • 最終的にはThreadベースのタイムアウト機能(@threaded(timeout=0.0)みたいなデコレータ形式?)まで含めるかもしれない。

PEP 423で「迷ったら聞け」と書いてあったので自分的に聞きやすいここで聞くことにしました。投稿時点まで思いついた候補はtermthreadterminatablethreadですが、なんかダサいしわかりにくいししっくりこないと思っています。投稿後思いついたものはwinthread.terminatableです。

名前の候補を色々とあげてもらえないでしょうか。よろしくお願いいたします。

補足情報

  • Gistに置いてあるコードを元ネタにしますが、TerminatableThreadというクラス名もしっくりきてません。
  • 「既にあるよ」等々の回答もWelcomeです。ただコード自身の深い話はGistでやるほうが良いと思います。
  • PyPIにあげる目的はrequirements.txtに記述してクローズドプロジェクトから参照することです。クローズドPyPIサーバは諸事情あって検討できません。
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 3

checkベストアンサー

+2

同じような名前のクラス名があるパッケージ(もうメンテはされてなさそうですが)は winappdbg という感じの名前でした。 

http://nullege.com/codes/search/win32.TerminateThread
https://pypi.python.org/pypi/winappdbg

私も適切な名前な中々思いつかないのですが、以下のようなことを考えました。

- terminate 以外の機能も追加する可能性があるなら、 terminateをパッケージ名に含めない方がよさそう
- Windows限定であれば、 win32やwinなどがパッケージ名に入っているとわかりやすそう。 
- 他のパッケージ名と混同されないようなものが良い。

ということを考えると winthread-utils とか win32threading とかいう感じのパッケージ名が無難なのかなとは思いました。

Sphinx とか jinja2 とか babel とか Pyramid とか、割とインパクトが強めのパッケージ名も世の中には沢山あるので、他のパッケージと混同されないような、自分好みのユニークな名前をつけて見るというのもありかもしれません。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/05/14 21:54 編集

    自己回答を書いている最中に投稿されているとは思いもよりませんでした。ありがとうございます。またTerminateThreadというWin32関数名で色々と既存のパッケージを検索してみる方法も思いつきませんでした。ありがとうございます。win32threadingを名乗るほど高級ではないので最終的にはユニークな名前という方向に落ち付けようと思います。後は回答を拝見して、パッケージ自体は単機能に留めるべきだとも思いました。考え方のプロセスも拝見できてよかったです。重ねて申しますがありがとうございました。

    キャンセル

  • 2017/05/14 21:59

    コメントありがとうございます。多少なりとも参考になりましたら幸いです。

    キャンセル

+2

T800.winthreadにします。ありがとうございました。

  • T800は某殺戮マシーンの型番と同じ無意味な記号の羅列だがterminationとの連想は容易い
  • T800はPyPIやGithubで見る限りメジャーな名前と競合しなさそう
  • winthreadはpthread向けとの区別のためにも必要
  • winthreadを前に持ってくると大風呂敷すぎるのでT800を先にした
  • ‘termination`も一般すぎる単語なので採用は見送った。
  • よく分からないパッケージ名でも、ちゃんとした説明をdescriptionですれば良いと考えた。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/05/17 21:02

    後日談:公開しました。やっぱり公開するとなると、名付けや言葉選びに特に迷うので、ここで聞いてから公開してよかったです。

    https://pypi.python.org/pypi/T800.winthread

    キャンセル

  • 2017/05/19 02:59

    後日談2: ctypes.pythonapi.PyThreadState_SetAsyncExcでも良かったかもorz...

    https://gist.github.com/sirkonst/5bfd26f7f07c692441be76dc6c973cb4

    キャンセル

0

ネーミングセンスには自信がないので命名は辞退しますが、コミュニティへの貢献を目的としていないのなら、PyPIには公開せず Git リポジトリから直接インストールする方法も検討してみてはいかがでしょうか?

pip install git+https://github.com/foo/bar.git

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/05/12 13:55

    ありがとうございます。なるほど、それでもrequirements.txtに書けますね。私以外の需要がゼロのコードであればPyPIへ公開する意味はないと理解しました。でも、Stack Overflow等でも類似の質問はあったのでニッチな需要があるんじゃないかと思ってます。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.90%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る