Skip to main content

Add autometa keyword to setuptools.setup for automatic version, description and long_desctiption

Project description

To use it, pass module (without .py), or package name as autometa keyword argument for setup():

#! /usr/bin/env python
from setuptools import setup

setup(
    autometa='test',
    name='Test',
    packages=['test'],
    ...
)

For example following package’s __init__.py:

"""First line of docstring.

Many
more
lines
of
docstring.
"""
__version__ = '1.2.3.dev0'  # alternatively: (1, 2, 3, 'dev0')

Is equivalent to writing:

setup(
    version='1.2.3.dev0',
    description='First line of docstring',
    long_description='Many\nmore\nlines\nof\ndocstring.'
    ...
)

It will parse specified module file or package’s __init__.py and set version to its __version__ attribute, description to first line of its docstring, and long_description to the rest of the docstring. Additionally build_sphinx command’s version and release will be set.

NOTE: Please note, that version is parsed by running ast.literal_eval on the right side of assignment to __version__, so keep in mind that it can only be a string literal, or a list/tuple of string/integer literals.

NOTE: Setuptools-Autometa assumes PEP 0257 compliant docstrings, that is first line has to end with a period and be separated from description by a blank line.

Additionally you can whitelist which fields are to be parsed by using autometa_fields keyword argument and setting it to an iterable of field names (‘description’, ‘long_description’, ‘version’).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Setuptools-Autometa-0.1.1.post0.tar.gz (3.7 kB view hashes)

Uploaded Source

Built Distributions

Setuptools_Autometa-0.1.1.post0-py3-none-any.whl (6.8 kB view hashes)

Uploaded Python 3

Setuptools_Autometa-0.1.1.post0-py2-none-any.whl (6.8 kB view hashes)

Uploaded Python 2

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page