diff options
author | Ask Solem <ask@rabbitmq.com> | 2011-12-06 11:31:34 +0000 |
---|---|---|
committer | Ask Solem <ask@rabbitmq.com> | 2011-12-06 11:31:34 +0000 |
commit | 8953b3ced8f3e7d7ed0b0dd73a95fa0cce770200 (patch) | |
tree | 7937206f22c4f8e713a36cdbe973b98ceebd5c59 | |
parent | c407a756b008344a8ae5df31de3a6e869b3dca78 (diff) | |
download | anyjson-8953b3ced8f3e7d7ed0b0dd73a95fa0cce770200.tar.gz |
Doc regex didn't handle newlines
-rw-r--r-- | anyjson/__init__.py | 2 | ||||
-rw-r--r-- | setup.py | 13 |
2 files changed, 10 insertions, 5 deletions
diff --git a/anyjson/__init__.py b/anyjson/__init__.py index 1cab2c5..053f1ed 100644 --- a/anyjson/__init__.py +++ b/anyjson/__init__.py @@ -6,7 +6,7 @@ import sys VERSION = (0, 3, 1) __version__ = ".".join(map(str, VERSION[0:3])) + "".join(VERSION[3:]) __author__ = "Rune Halvorsen" -__contact__ "runefh@gmail.com" +__contact__ = "runefh@gmail.com" __homepage__ = "http://bitbucket.org/runeh/anyjson/" __docformat__ = "restructuredtext" @@ -1,3 +1,4 @@ +import os import sys extra = {} @@ -13,7 +14,7 @@ except ImportError: import re re_meta = re.compile(r'__(\w+?)__\s*=\s*(.*)') re_vers = re.compile(r'VERSION\s*=\s*\((.*?)\)') -re_doc = re.compile(r'^"""(.+?)"""') +re_doc = re.compile(r'^"""(.+?)"""', re.M|re.S) rq = lambda s: s.strip("\"'") def add_default(m): @@ -27,22 +28,26 @@ def add_version(m): def add_doc(m): - return (("doc", m.groups()[0]), ) + return (("doc", m.groups()[0].replace("\n", " ")), ) pats = {re_meta: add_default, - re_vers: add_version, - re_doc: add_doc} + re_vers: add_version} here = os.path.abspath(os.path.dirname(__file__)) meta_fh = open(os.path.join(here, "anyjson/__init__.py")) try: meta = {} + acc = [] for line in meta_fh: if line.strip() == '# -eof meta-': break + acc.append(line) for pattern, handler in pats.items(): m = pattern.match(line.strip()) if m: meta.update(handler(m)) + m = re_doc.match("".join(acc).strip()) + if m: + meta.update(add_doc(m)) finally: meta_fh.close() |