Metadata-Version: 2.1
Name: about
Version: 5.2
Summary: Software Metadata for Humans
Home-page: https://github.com/boisgera/about
Author: Sébastien Boisgérault
Author-email: Sebastien.Boisgerault@gmail.com
License: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Software Development
License-File: LICENSE.txt
Requires-Dist: setuptools

About
=====

**Summary:** define the metadata of your project in a single place, then
make it available at setup-time and at runtime.

Let’s consider the ``about`` package as an example ; we add to our
project files, in the source tree, a file named ``about.py`` that
contains the metadata of the project:

::

   about
   |--- setup.py
   |--- README.md
   |...
   |--- about
   |    |--- __init__.py
   |    |...
   |    |--- about.py

This file contains the metadata (and a little boilerplate):

::

   # coding: utf-8

   metadata = dict(
     __name__        = "about",
     __version__     = "5.1.1",
     __license__     = "MIT License",  
     __author__      = u"Sébastien Boisgérault <Sebastien.Boisgerault@gmail.com>",
     __url__         = "https://warehouse.python.org/project/about",
     __summary__     = "Software Metadata for Humans",
     __keywords__    = "Python / 2.7, OS independent, software development"
   )

   globals().update(metadata)

   __all__ = metadata.keys()

**Setup.** To use this metadata, the ``setup.py`` file includes the
code:

::

   import about
   import about.about

   info = about.get_metadata(about.about)

   # add extra information (contents, requirements, etc.).
   info.update(...)

   if __name__ == "__main__":
       setuptools.setup(**info)

**Runtime.** The metadata is stored as a collection of attributes of the
``about.about`` module. If we include in the ``about/__init__.py`` file
the one-liner

::

   from .about import *

they become available in the top-level module:

::

   >>> import about
   >>> print about.__name__
   about
   >>> print about.__version__
   5.1.1
   >>> print about.__license__
   MIT License
