diff options
author | Rune Halvorsen <runefh@gmail.com> | 2009-07-22 23:44:29 +0200 |
---|---|---|
committer | Rune Halvorsen <runefh@gmail.com> | 2009-07-22 23:44:29 +0200 |
commit | 59816435ced9616abde1a41506007703df0f2fb2 (patch) | |
tree | 80544ab681ef1139831421871a6bf09de35c59c2 | |
parent | 717da58bd5b608817afcc3c5fd40294a4a54baa3 (diff) | |
download | anyjson-59816435ced9616abde1a41506007703df0f2fb2.tar.gz |
Moved stuff into the meta module, fixes #1
Added test_suite thingy to setup.py
-rw-r--r-- | anyjson/__init__.py | 37 | ||||
-rw-r--r-- | anyjson/metadata.py | 30 | ||||
-rw-r--r-- | setup.py | 13 |
3 files changed, 42 insertions, 38 deletions
diff --git a/anyjson/__init__.py b/anyjson/__init__.py index 7578c61..4f4fb48 100644 --- a/anyjson/__init__.py +++ b/anyjson/__init__.py @@ -1,35 +1,8 @@ -""" -Wraps the best available JSON implementation available in a common interface -""" - -__version__ = "0.2.1" -__author__ = "Rune Halvorsen <runefh@gmail.com>" -__homepage__ = "http://bitbucket.org/runeh/anyjson/" -__docformat__ = "restructuredtext" - -""" - -.. function:: serialize(obj) - - Serialize the object to JSON. - -.. function:: deserialize(str) - - Deserialize JSON-encoded object to a Python object. - -.. function:: force_implementation(name) - - Load a specific json module. This is useful for testing and not much else - -.. attribute:: implementation - - The json implementation object. This is probably not useful to you, - except to get the name of the implementation in use. The name is - available through `implementation.name`. -""" - +from metadata import * import sys +# explicitly pull in docstring from metadata. see comments there for why. +__doc__ = metadata.__doc__ implementation = None """ @@ -137,5 +110,5 @@ else: else: raise ImportError("No supported JSON module found") - serialize = lambda value: implementation.serialize(value) - deserialize = lambda value: implementation.deserialize(value) + serialize = lambda value: implementation.serialize(value) + deserialize = lambda value: implementation.deserialize(value) diff --git a/anyjson/metadata.py b/anyjson/metadata.py index e69de29..a23b135 100644 --- a/anyjson/metadata.py +++ b/anyjson/metadata.py @@ -0,0 +1,30 @@ +"""Wraps the best available JSON implementation available in a common +interface + +.. function:: serialize(obj) + + Serialize the object to JSON. + +.. function:: deserialize(str) + + Deserialize JSON-encoded object to a Python object. + +.. function:: force_implementation(name) + + Load a specific json module. This is useful for testing and not much else + +.. attribute:: implementation + + The json implementation object. This is probably not useful to you, + except to get the name of the implementation in use. The name is + available through `implementation.name`. +""" + +# Note: This module is neccessary so we can load the metadata in setup.py +# without risking that the module loading fails. It will fail if the user +# has no json module installed, causing ImportError when importing anyjson + +__version__ = "0.2.1" +__author__ = "Rune Halvorsen <runefh@gmail.com>" +__homepage__ = "http://bitbucket.org/runeh/anyjson/" +__docformat__ = "restructuredtext" @@ -1,11 +1,11 @@ -from setuptools import setup +from setuptools import setup, find_packages -import anyjson -author, email = anyjson.__author__[:-1].split(' <') +import anyjson.metadata as meta +author, email = meta.__author__[:-1].split(' <') setup(name='anyjson', - version=anyjson.__version__, - description=anyjson.__doc__, + version=meta.__version__, + description=meta.__doc__, long_description=open("README").read(), classifiers=[ 'License :: OSI Approved :: BSD License', @@ -17,7 +17,8 @@ setup(name='anyjson', author_email=email, url='http://bitbucket.org/runeh/anyjson', license='BSD', - py_modules=['anyjson'], + packages=find_packages(exclude=['ez_setup', 'examples', 'tests']), zip_safe=False, platforms=["any"], + test_suite = 'nose.collector', ) |