remove call to 'git describe'
authorForrest Voight <forrest@forre.st>
Tue, 26 Jul 2011 17:13:58 +0000 (13:13 -0400)
committerForrest Voight <forrest@forre.st>
Tue, 26 Jul 2011 17:13:58 +0000 (13:13 -0400)
p2pool/__init__.py

index d52d625..a1a736a 100644 (file)
@@ -1,13 +1,19 @@
 import os
 import sys
-import subprocess
 
-prev = os.getcwd()
-os.chdir(os.path.abspath(os.path.dirname(sys.argv[0])))
-try:
-    __version__ = subprocess.Popen(['git', 'describe', '--always'], stdout=subprocess.PIPE).stdout.read().strip()
-except:
-    __version__ = 'unknown'
-os.chdir(prev)
+def _get_version():
+    try:
+        git_dir = os.path.join(os.path.abspath(os.path.dirname(sys.argv[0])), '.git')
+        head = open(os.path.join(git_dir, 'HEAD')).read().strip()
+        prefix = 'ref: '
+        if head.startswith(prefix):
+            path = head[len(prefix):].split('/')
+            return open(os.path.join(git_dir, *path)).read().strip()
+        else:
+            return head
+    except Exception, e:
+        return 'unknown (%s)' % (str(e),)
+
+__version__ = _get_version()
 
 DEBUG = False