Python setuptools: project info

From wikinotes

Documentation

classifier docs https://pypi.python.org/pypi?:action=list_classifiers

Basics

All setuptools configuration is exposed in the setup function.

from   distutils.core import setup, Extension
import setuptools

setup(
    name         = 'my_package_name',
    version      = '0.0.0',
    author       = 'Will Pittman',
    author_email = 'willjpittman@gmail.com'
    url          = 'http://blah.com',        # project homepage
    licence      = 'BSD',
    keywords     = 'foo bar baz'             # search keywords
)

Versions

Versions must conform to PEP-440 .
Use of Semantic Versioning is encouraged, alternatively year.month may be used.

Classifiers

Setuptools helps validate that the install environment is suitable for your project using classifiers.

import setuptools

setuptools.setup(
    classifiers = [
        # Project Maturity
        'Development Status   :: 3 - Alpha',

        # License
        'License :: OSI Approved :: BSD License',

        # Restrict to certain versions of python
        'Programming Language :: Python',
        'Programming Language :: Python :: 2.7',
        'Programming Language :: Python :: 3',

        # Restrict to certain operating systems
        'Operating System :: Microsoft :: Windows',   
        'Operating System :: POSIX :: Linux',
        'Operating System :: POSIX :: BSD',
    ],
)