mirror of
https://github.com/kennethreitz/dive-into-python3.git
synced 2026-06-05 15:00:18 +00:00
finished #trove section
This commit is contained in:
+9
-20
@@ -182,38 +182,27 @@ chardet/
|
||||
|
||||
<p>The Python Package Index (“PyPI”) contains thousands of Python libraries. Proper classification metadata will allow people to find yours more easily.
|
||||
|
||||
<p>The PyPI classification system is based on <a href=http://sourceforge.net/softwaremap/>SourceForce’s software map</a>. Classifiers are strings, but they are <em>not</em> freeform.
|
||||
|
||||
<ul>
|
||||
<li><b>Development Status</b>. Is your software beta quality? Alpha quality? Pre-alpha?
|
||||
<li><b>Environment</b>. FIXME (optional, multiples allowed)
|
||||
<li><b>Framework</b>. Does your software rely on a larger Python framework like <a href=http://www.djangoproject.com/>Django</a> or <a href=http://www.zope.org/>Zope</a>? If not, you can omit this classifier.
|
||||
<li><b>Intended Audience</b>. Who would download your software? End users looking for desktop software? System administrators? Scientists? Other Python developers?
|
||||
<li><b>License</b>. FIXME (strongly recommended, probably just one unless your software is available under multiple licenses)
|
||||
<li><b>Natural Language</b>. FIXME (optional, multiples allowed)
|
||||
<li><b>Operating System</b>. FIXME (strongly recommended, multiples allowed)
|
||||
<li><b>Programming Language</b>. FIXME (strongly recommended, multiples allowed and encouraged)
|
||||
<li><b>Topic</b>. FIXME (recommended, multiples allowed and encouraged)
|
||||
</ul>
|
||||
<p>The <code>classifiers</code> parameter to the Distutils <code>setup()</code> function is a list of strings. These strings are <em>not</em> freeform. All of your classifier strings should come from <a href='http://pypi.python.org/pypi?:action=list_classifiers'>this master list on PyPI</a>.
|
||||
|
||||
<blockquote class=note>
|
||||
<p><span class=u>☞</span>All of your classifiers should come from <a href='http://pypi.python.org/pypi?:action=list_classifiers'>this master list on PyPI</a>.
|
||||
<p><span class=u>☞</span>The Python Package Index lets you <a href='http://pypi.python.org/pypi?:action=browse'>browse packages by classifier</a>. You can even select multiple classifiers to narrow your search. Classifiers are not invisible metadata that you can just ignore!
|
||||
</blockquote>
|
||||
|
||||
<p>You should <em>always</em> include at least these four classifiers:
|
||||
|
||||
<ul>
|
||||
<li><code>"Programming Language :: Python"</code> and <code>"Programming Language :: Python :: 3"</code>. If you do not include these, your package will not show up in <a href='http://pypi.python.org/pypi?:action=browse&c=533&show=all'>this list of Python 3-compatible libraries</a>, which linked from the sidebar of every single page of <code>pypi.python.org</code>.
|
||||
<li><code>"License :: <i>whatever</i>"</code>. This is <em>the absolute first thing I look for</em> when I’m evaluating third-party libraries. Don’t make me hunt for this vital information. Don’t include more than one license classifier unless your software is explicitly available under multiple licenses (and don’t release software under multiple licenses unless you’re forced to do so).
|
||||
<li><code>"Operating System :: <i>whatever</i>"</code>. If your software only runs on Windows (or Mac OS X, or Linux), I want to know sooner rather than later. If your software works anywhere without any platform-specific code, use the classifier <code>"Operating System :: OS Independent"</code>. Multiple classifiers are allowed.
|
||||
<li><b>Programming Language</b>. In particular, you should include both <code>"Programming Language :: Python"</code> and <code>"Programming Language :: Python :: 3"</code>. If you do not include these, your package will not show up in <a href='http://pypi.python.org/pypi?:action=browse&c=533&show=all'>this list of Python 3-compatible libraries</a>, which linked from the sidebar of every single page of <code>pypi.python.org</code>.
|
||||
<li><b>License</b>. This is <em>the absolute first thing I look for</em> when I’m evaluating third-party libraries. Don’t make me hunt for this vital information. Don’t include more than one license classifier unless your software is explicitly available under multiple licenses (and don’t release software under multiple licenses unless you’re forced to do so).
|
||||
<li><b>Operating System</b>. If your software only runs on Windows (or Mac OS X, or Linux), I want to know sooner rather than later. If your software runs anywhere without any platform-specific code, use the classifier <code>"Operating System :: OS Independent"</code>. Multiple <code>Operating System</code> classifiers are only necessary if your software requires specific support for each platform. (This is not common.)
|
||||
</ul>
|
||||
|
||||
<p>I <em>strongly</em> recommend that you also include the following classifications:
|
||||
|
||||
<ul>
|
||||
<li><code>"Development Status :: <i>whatever</i>"</code>. Pick one. Be honest.
|
||||
<li><code>"Intended Audience :: <i>whatever</i>"</code>. Pick one. The most common choices are <code>Developers</code>, <code>End Users/Desktop</code>, <code>Science/Research</code>, and <code>System Administrators</code>.
|
||||
<li><code>"Topic :: <i>whatever</i>"</code>. There are <a href='http://pypi.python.org/pypi?:action=list_classifiers'>a large number of topics available</a>. Choose all that apply.
|
||||
<li><b>Development Status</b>. Is your software beta quality? Alpha quality? Pre-alpha? Pick one. Be honest.
|
||||
<li><b>Framework</b>. Does your software rely on a larger Python framework like <a href=http://www.djangoproject.com/>Django</a> or <a href=http://www.zope.org/>Zope</a>? If not, you can omit this classifier.
|
||||
<li><b>Intended Audience</b>. Who would download your software? The most common choices are <code>Developers</code>, <code>End Users/Desktop</code>, <code>Science/Research</code>, and <code>System Administrators</code>. Pick one.
|
||||
<li><b>Topic</b>. There are <a href='http://pypi.python.org/pypi?:action=list_classifiers'>a large number of topics to choose from</a>; choose all that apply.
|
||||
</ul>
|
||||
|
||||
<h3 id=trove-examples>Examples of Good Package Classifiers</h3>
|
||||
|
||||
Reference in New Issue
Block a user