aboutsummaryrefslogtreecommitdiffhomepage
path: root/bindings/python
diff options
context:
space:
mode:
authorGravatar Sebastian Spaeth <Sebastian@SSpaeth.de>2011-08-24 09:13:34 +0200
committerGravatar Sebastian Spaeth <Sebastian@SSpaeth.de>2011-08-24 09:13:34 +0200
commit5dc189c82df35bafa54766fc8747ab46be8a9311 (patch)
treed9185d3ae09a48d2658046ba74dbf68d69afd3ee /bindings/python
parent2fceb738c7962d327d65908ad7077d5512f7384c (diff)
python: Have setup.py read the version number without importing
Importing the notmuch module in setup.py is a no-no, and we want to auto-generate the version number in the release process. Outsource __VERSION__ to the new version.py which contains nothing else and which can therefor easily be autogenerated. Have setup.py read in the file via execfile and test if importing the version number actually worked. This should make all happy. Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
Diffstat (limited to 'bindings/python')
-rw-r--r--bindings/python/notmuch/__init__.py2
-rw-r--r--bindings/python/notmuch/version.py2
-rw-r--r--bindings/python/setup.py17
3 files changed, 8 insertions, 13 deletions
diff --git a/bindings/python/notmuch/__init__.py b/bindings/python/notmuch/__init__.py
index cb64f3c3..a7b558fa 100644
--- a/bindings/python/notmuch/__init__.py
+++ b/bindings/python/notmuch/__init__.py
@@ -57,6 +57,6 @@ from notmuch.message import Messages, Message
from notmuch.thread import Threads, Thread
from notmuch.tag import Tags
from notmuch.globals import nmlib, STATUS, NotmuchError
+from notmuch.version import __VERSION__
__LICENSE__ = "GPL v3+"
-__VERSION__ = '0.6'
__AUTHOR__ = 'Sebastian Spaeth <Sebastian@SSpaeth.de>'
diff --git a/bindings/python/notmuch/version.py b/bindings/python/notmuch/version.py
new file mode 100644
index 00000000..7ad5a27b
--- /dev/null
+++ b/bindings/python/notmuch/version.py
@@ -0,0 +1,2 @@
+# This file is potentially auto-generated. Do not modify
+__VERSION__ = '0.6'
diff --git a/bindings/python/setup.py b/bindings/python/setup.py
index 16de76aa..286fd196 100644
--- a/bindings/python/setup.py
+++ b/bindings/python/setup.py
@@ -4,18 +4,11 @@ import os
import re
from distutils.core import setup
-def get_version():
- file = open('notmuch/__init__.py')
- try:
- for line in file:
- if re.match('__VERSION__\s*=\s*',line) != None:
- version = line.split('=', 1)[1]
- return eval(version, {}, {})
- finally:
- file.close()
- raise IOError('Unexpected end-of-file')
-
-__VERSION__=get_version()
+# get the notmuch version number without importing the notmuch module
+version_file = os.path.join(os.path.dirname(os.path.abspath(__file__)),
+ 'notmuch', 'version.py')
+execfile(version_file)
+assert __VERSION__, 'Failed to read the notmuch binding version number'
setup(name='notmuch',
version=__VERSION__,