23

Trove分類子のリストは次の場所にあります:http://pypi.python.org/pypi?:action = list_classifiers

PyPIパッケージを作成しているときに、プロジェクトに明らかに適用されるTrove分類子に「親」を含める必要があるかどうかわかりません。

たとえば、Windows XPでプロジェクトをテストした場合、次のうちどれを含める必要がありますか。

'Operating System :: Microsoft',
'Operating System :: Microsoft :: Windows',
'Operating System :: Microsoft :: Windows :: Windows NT/2000',

私は実際にWindows7、または時にはWindowsXPでのみテストしました。しかし、これらはどちらも分類子リストのオプションではないため、クローズマッチとして「NT / 2000」を選択し、「親」分類子を含めています。これは正しいことですか?

同様に、私のプロジェクトがPython 2.7でテストされている場合は、明らかに分類子を含めます。

'Programming Language :: Python :: 2.7',

以下も含める必要がありますか?

'Programming Language :: Python',
'Programming Language :: Python :: 2',

1つ目は、元の分類子の場合は厳密な「親」であるため、これを含めるかどうかは、上記の「Windows」の親を含めるかどうかとおそらく同じです。

ただし、「Python :: 2」は「2.7」分類子の親ではなく、兄弟であることに注意してください。これを含めることは、私のプロジェクトがいくつかの2.x Pythonリリースで機能することを示すことを意図している場合は意味がありますが、私のプロジェクトがすべての2.xリリースで機能することを意味することを意図している場合は意味がありません。

4

1 に答える 1

16

技術的には、親タグを含める必要はありません。たとえば、lxmlには次のタグがリストされます (ただし、親は含まれません)。

Topic :: Text Processing :: Markup :: HTML
Topic :: Text Processing :: Markup :: XML 

Topic :: Text Processing :: Markupに分類されたパッケージのリストを参照すると、lxml が含まれています。

親タグを含めることで、ユーザーにとってより明確になるかどうかはわかりません。

すべてのPython 2.x ではなく、いくつかのPython 2.x リリースProgramming Language :: Python :: 2を意味すると思います。多くのプロジェクトがこのように使用しているようです (例: lxmlも)。

オペレーティング システムに関しては、テストできる環境だけでなく、パッケージが動作すると予想されるものを定義するために使用します。したがって、Windows 分類子は、他のオペレーティング システムでは動作しない Windows 固有のツールにのみ使用します。サポート契約を構成するものではありません。

Windows と Windows NT/2000 のタグは、現在ではほぼ同等です。

于 2012-02-12T00:47:25.453 に答える