diff --git a/packaging.html b/packaging.html index de9618a..a9ce378 100644 --- a/packaging.html +++ b/packaging.html @@ -49,7 +49,7 @@ setup(name='httplib2', 'Programming Language :: Python', 'Programming Language :: Python :: 3', 'Topic :: Internet :: WWW/HTTP', - 'Topic :: Software Development :: Libraries', + 'Topic :: Software Development :: Libraries :: Python Modules', ], long_description=""" @@ -157,14 +157,14 @@ A comprehensive HTTP client library, ``httplib2`` supports many features left ou
...FIXME...required setup() parameters, optional but recommended setup() parameters, always use named parameters, etc. -
The Python Package Index (“PyPI”) contains thousands of Python libraries. Proper classification metadata will allow people to find yours more easily.
The PyPI classification system is based on SourceForce’s software map. Classifiers are strings, but they are not freeform.
You should always include at least these four classifiers:
"Programming Language :: Python"
-"Programming Language :: Python :: 3". If you do not include this, your package will not show up in this list of Python 3-compatible libraries, which linked from the sidebar of every single page of pypi.python.org.
-"License :: whatever". This is the absolute first thing I look for when I’m evaluating third-party libraries. Don’t make me hunt for this vital information.
-"Operating System :: whatever". If your software only runs on Windows, I want to know sooner rather than later. If it runs everywhere, use the classifier "Operating System :: OS Independent".
+"Programming Language :: Python" and "Programming Language :: Python :: 3". If you do not include these, your package will not show up in this list of Python 3-compatible libraries, which linked from the sidebar of every single page of pypi.python.org.
+"License :: whatever". This is the absolute first thing I look for 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).
+"Operating System :: whatever". 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 "Operating System :: OS Independent". Multiple classifiers are allowed.
I strongly recommend that you also include the following classifications:
"Development Status :: whatever". Be honest.
-"Intended Audience :: whatever".
+"Development Status :: whatever". Pick one. Be honest.
+"Intended Audience :: whatever". Pick one. The most common choices are Developers, End Users/Desktop, Science/Research, and System Administrators.
+"Topic :: whatever". There are a large number of topics available. Choose all that apply.
FIXME - look at several examples, including httplib2 +
By way of example, here are the classifiers for Django, a production-ready, cross-platform, BSD-licensed content management system that runs on your web server. (Django is not yet compatible with Python 3, so the Programming Language :: Python :: Python 3 classifier is not listed.)
+
+
Programming Language :: Python
+License :: OSI Approved :: BSD License
+Operating System :: OS Independent
+Development Status :: 5 - Production/Stable
+Environment :: Web Environment
+Framework :: Django
+Intended Audience :: Developers
+Topic :: Internet :: WWW/HTTP
+Topic :: Internet :: WWW/HTTP :: Dynamic Content
+Topic :: Internet :: WWW/HTTP :: WSGI
+Topic :: Software Development :: Libraries :: Python Modules
+
+Here are the classifiers for chardet, the character encoding detection library covered in Case Study: Porting chardet to Python 3. chardet is beta quality, cross-platform, Python 3-compatible, LGPL-licensed, and intended for developers to integrate into their own products.
+
+
Programming Language :: Python
+Programming Language :: Python :: Python 3
+License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)
+Operating System :: OS Independent
+Development Status :: 4 - Beta
+Environment :: Other Environment
+Intended Audience :: Developers
+Topic :: Text Processing :: Linguistic
+Topic :: Software Development :: Libraries :: Python Modules
+
+