Centralize version information
authorVivien Maisonneuve <v.maisonneuve@gmail.com>
Wed, 20 Aug 2014 10:02:36 +0000 (12:02 +0200)
committerVivien Maisonneuve <v.maisonneuve@gmail.com>
Wed, 20 Aug 2014 10:02:36 +0000 (12:02 +0200)
doc/conf.py
linpy/__init__.py
linpy/_version.py [new file with mode: 0644]
setup.py

index b06c693..da25c6c 100644 (file)
@@ -52,9 +52,11 @@ copyright = '2014, MINES ParisTech'
 # built documents.
 #
 # The short X.Y version.
 # built documents.
 #
 # The short X.Y version.
-version = '1.0'
+with open('../linpy/_version.py') as file:
+    exec(file.read())
+version = __version__
 # The full version, including alpha/beta/rc tags.
 # The full version, including alpha/beta/rc tags.
-release = '1.0a'
+release = __version__
 
 # The language for content autogenerated by Sphinx. Refer to documentation
 # for a list of supported languages.
 
 # The language for content autogenerated by Sphinx. Refer to documentation
 # for a list of supported languages.
index bc97a7c..bbe5693 100644 (file)
@@ -23,6 +23,7 @@ from .geometry import GeometricObject, Point, Vector
 from .linexprs import LinExpr, Symbol, symbols, Dummy, Rational
 from .polyhedra import Polyhedron, Lt, Le, Eq, Ne, Ge, Gt, Ne, Empty, Universe
 from .domains import Domain, And, Or, Not
 from .linexprs import LinExpr, Symbol, symbols, Dummy, Rational
 from .polyhedra import Polyhedron, Lt, Le, Eq, Ne, Ge, Gt, Ne, Empty, Universe
 from .domains import Domain, And, Or, Not
+from ._version import __version__
 
 
 __all__ = [
 
 
 __all__ = [
@@ -30,4 +31,5 @@ __all__ = [
     'GeometricObject', 'Point', 'Vector',
     'Polyhedron', 'Lt', 'Le', 'Eq', 'Ne', 'Ge', 'Gt', 'Empty', 'Universe',
     'Domain', 'And', 'Or', 'Not',
     'GeometricObject', 'Point', 'Vector',
     'Polyhedron', 'Lt', 'Le', 'Eq', 'Ne', 'Ge', 'Gt', 'Empty', 'Universe',
     'Domain', 'And', 'Or', 'Not',
+    '__version__',
 ]
 ]
diff --git a/linpy/_version.py b/linpy/_version.py
new file mode 100644 (file)
index 0000000..0d597bf
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright 2014 MINES ParisTech
+#
+# This file is part of LinPy.
+#
+# LinPy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# LinPy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LinPy.  If not, see <http://www.gnu.org/licenses/>.
+
+__version__ = '1.0a'
index e380cb9..609b2b9 100755 (executable)
--- a/setup.py
+++ b/setup.py
 
 from distutils.core import setup, Extension
 
 
 from distutils.core import setup, Extension
 
+with open('linpy/_version.py') as file:
+    exec(file.read())
+
 setup(
     name='LinPy',
 setup(
     name='LinPy',
+    version=__version__,
     description='A polyhedral library based on isl',
     author='MINES ParisTech',
     url='https://scm.cri.mines-paristech.fr/git/linpy.git',
     description='A polyhedral library based on isl',
     author='MINES ParisTech',
     url='https://scm.cri.mines-paristech.fr/git/linpy.git',