andrej@1561: import subprocess, os andrej@1561: andrej@1561: def GetAppRevision(): andrej@1561: rev = None andrej@1561: app_dir=os.path.dirname(os.path.realpath(__file__)) andrej@1561: try: andrej@1561: pipe = subprocess.Popen( andrej@1561: ["hg", "id", "-i"], andrej@1561: stdout = subprocess.PIPE, andrej@1561: cwd = app_dir andrej@1561: ) andrej@1561: rev = pipe.communicate()[0] andrej@1561: if pipe.returncode != 0: andrej@1561: rev = None andrej@1561: except: andrej@1561: pass andrej@1561: andrej@1561: # if this is not mercurial repository andrej@1561: # try to read revision from file andrej@1561: if rev is None: andrej@1561: try: andrej@1561: f = open(os.path.join(app_dir,"revision")) andrej@1561: rev = f.readline() andrej@1561: except: andrej@1561: pass andrej@1561: return rev andrej@1561: andrej@1561: app_version = "1.2" andrej@1561: rev = GetAppRevision() andrej@1561: if rev is not None: andrej@1561: app_version = app_version + "-" + rev.rstrip() andrej@1561: andrej@1561: andrej@1561: