/[thuban]/branches/WIP-pyshapelib-bramz/Thuban/version.py
ViewVC logotype

Diff of /branches/WIP-pyshapelib-bramz/Thuban/version.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1480 by bh, Thu Jul 24 17:52:48 2003 UTC revision 2684 by frank, Tue Jun 27 16:11:35 2006 UTC
# Line 1  Line 1 
1  # Copyright (C) 2002, 2003 by Intevation GmbH  # Copyright (C) 2002, 2003, 2004 by Intevation GmbH
2  # Authors:  # Authors:
3  # Thomas Koester <[email protected]>  # Thomas Koester <[email protected]>
4  # Frank Koormann <[email protected]>  # Frank Koormann <[email protected]>
# Line 15  __version__ = "$Revision$" Line 15  __version__ = "$Revision$"
15  # $Id$  # $Id$
16    
17    
18  version = 'cvs'  # Note that this file defines the version number of Thuban for the about
19  append_date = 1  # dialog.
20    
21    # The thuban version string is build from two values, thuban_branch and
22    # thuban_release.  If release is "cvs" the code is from a non-released
23    # cvs version and the version string is built from the branch, the
24    # release and an approximation of the date (e.g. the most recent date of
25    # the ChangeLog file or the most recent modification time of a source
26    # file).  Otherwise the string is build from the branch and the release.
27    # E.g. given
28    #
29    #  thuban_branch = "1.1"
30    #  thuban_release = "svn"
31    #
32    # the version string will be "Thuban 1.1 svn-20040224" (obviously the
33    # actual date might differ :) ).  OTOH, given
34    #
35    #  thuban_branch = "1.0"
36    #  thuban_release = "1"
37    #
38    # the version string will be "Thuban 1.0.1"
39    #
40    
41    thuban_branch = "1.1"
42    thuban_release = "svn"
43    
44    
45    
46  import sys, os, os.path  import sys, os, os.path
# Line 24  import time Line 48  import time
48  from string import split  from string import split
49    
50  from Thuban import  _  from Thuban import  _
51    from Thuban.Lib.version import make_tuple
52    
53  if __name__ == "__main__":  if __name__ == "__main__":
54      import sys      import sys
# Line 67  def get_changelog_date(): Line 91  def get_changelog_date():
91    
92  versions = {}  versions = {}
93    
94  if append_date:  if thuban_release == "svn":
95      version = '%s-%s' % (version, get_date('%Y%m%d'))      version = '%s %s-%s' % (thuban_branch, thuban_release, get_date('%Y%m%d'))
96  versions['thuban'] = version      longversion = '%s\n%s' % (version, get_changelog_date())
97    else:
98        version = thuban_branch + "." + thuban_release
99        longversion = 'Release Version ' + version
100    
101  #longversion = '%s\n%s' % (version, get_changelog_date())  versions['thuban'] = version
 longversion = 'Release Version 0.8.1'  
102  versions['thuban-long'] = longversion  versions['thuban-long'] = longversion
103    
 def make_tuple(s):  
     return tuple(map(int, split(s, ".")[:3]))  
   
104  # wxPython  # wxPython
105  from wxPython.wx import __version__ as wxPython_version  from wxPython.wx import __version__ as wxPython_version
106  versions['wxPython'] = wxPython_version  versions['wxPython'] = wxPython_version
# Line 88  versions['python'] = "%d.%d.%d" % sys.ve Line 111  versions['python'] = "%d.%d.%d" % sys.ve
111  versions['python-tuple'] = sys.version_info[:3]  versions['python-tuple'] = sys.version_info[:3]
112    
113  # PySQLite  # PySQLite
114  from sqlite import version as pysqlite_version  try:
115  versions['pysqlite'] = pysqlite_version      from pysqlite2 import dbapi2 as sqlite
116  versions['pysqlite-tuple'] = make_tuple(pysqlite_version)  except ImportError:
117        import sqlite
118    versions['pysqlite'] = sqlite.version
119    versions['pysqlite-tuple'] = make_tuple(sqlite.version)
120    
121  # SQLite  # SQLite
122  from _sqlite import sqlite_version  try:
123        from pysqlite2._sqlite import sqlite_version
124    except ImportError:
125        from _sqlite import sqlite_version
126  versions['sqlite'] = sqlite_version()  versions['sqlite'] = sqlite_version()
127  versions['sqlite-tuple'] = make_tuple(sqlite_version())  versions['sqlite-tuple'] = make_tuple(sqlite_version())
128    
# Line 104  if has_gdal_support(): Line 133  if has_gdal_support():
133      versions['gdal'] = get_gdal_version()      versions['gdal'] = get_gdal_version()
134      versions['gdal-tuple'] = make_tuple(get_gdal_version())      versions['gdal-tuple'] = make_tuple(get_gdal_version())
135    
136  from wxproj import get_proj_version, get_gtk_version  from wxproj import get_proj_version, get_gtk_version, get_wx_version
137    
138  # GTK  # GTK
139  gtk_ver = get_gtk_version()  gtk_ver = get_gtk_version()
# Line 118  if proj_ver: Line 147  if proj_ver:
147      versions['proj'] = ".".join(map(str, proj_ver))      versions['proj'] = ".".join(map(str, proj_ver))
148      versions['proj-tuple'] = proj_ver      versions['proj-tuple'] = proj_ver
149    
150    wxproj_wx_version = get_wx_version()
151    versions['wxproj-wx'] = ".".join(map(str, wxproj_wx_version))
152    versions['wxproj-wx-tuple'] = wxproj_wx_version
153    
154    
155    # psycopg/postgis
156    import Thuban.Model.postgisdb
157    if Thuban.Model.postgisdb.has_postgis_support():
158        v = Thuban.Model.postgisdb.psycopg_version()
159        versions['psycopg'] = v
160        versions['psycopg-tuple'] = make_tuple(v)
161    
162  def verify_versions():  def verify_versions():
163      """Verifies that the versions of the libraries Thuban requires      """Verify that Thuban is using the correct versions of libraries.
     are correct.  
164    
165      Returns a non-empty list of strings indicating which libraries      Returns a non-empty list of strings indicating which libraries
166      are wrong, or the empty list if everthing is ok.      are wrong, or the empty list if everthing is ok.
# Line 144  def verify_versions(): Line 184  def verify_versions():
184          tup = versions.get("%s-tuple" % name, None)          tup = versions.get("%s-tuple" % name, None)
185          if tup and tup < version:          if tup and tup < version:
186              errors.append(_("%s %s < %s") % \              errors.append(_("%s %s < %s") % \
187                  (title, versions[name], ".".join(map(str, version))))                            (title, versions[name], ".".join(map(str, version))))
188    
189        # Check whether the wxWindows version of wxPython and thuban's
190        # wxproj module match.  If they don't match, segfaults are likely.
191        if versions["wxproj-wx-tuple"] != versions["wxPython-tuple"][:3]:
192            errors.append(_("Thuban was compiled with wx %(wxproj-wx)s"
193                            " but wxPython is %(wxPython)s")
194                          % versions)
195    
196      return errors      return errors
197            
198  if __name__ == "__main__":  if __name__ == "__main__":
199      print longversion      print longversion
200    

Legend:
Removed from v.1480  
changed lines
  Added in v.2684

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26