]> git.rkrishnan.org Git - tahoe-lafs/tahoe-lafs.git/blobdiff - setup.py
Merge branch '2329-2': fix "tahoe cp -r" exception
[tahoe-lafs/tahoe-lafs.git] / setup.py
index 83f8b75c03b69019c0ce135b5d60ede6afd8af54..d6fe60b9a41c34e7aa69e21b9183dbd441d72d44 100644 (file)
--- a/setup.py
+++ b/setup.py
@@ -262,9 +262,9 @@ __version__ = verstr
 '''
 
 def run_command(args, cwd=None):
+    use_shell = sys.platform == "win32"
     try:
-        # remember shell=False, so use git.cmd on windows, not just git
-        p = subprocess.Popen(args, stdout=subprocess.PIPE, cwd=cwd)
+        p = subprocess.Popen(args, stdout=subprocess.PIPE, cwd=cwd, shell=use_shell)
     except EnvironmentError as e:  # if this gives a SyntaxError, note that Tahoe-LAFS requires Python 2.6+
         print("Warning: unable to run %r." % (" ".join(args),))
         print(e)
@@ -303,10 +303,7 @@ def versions_from_git(tag_prefix):
         print("Warning: unable to find version because we could not obtain the source directory.")
         print(e)
         return {}
-    GIT = "git"
-    if sys.platform == "win32":
-        GIT = "git.cmd"
-    stdout = run_command([GIT, "describe", "--tags", "--dirty", "--always"],
+    stdout = run_command(["git", "describe", "--tags", "--dirty", "--always"],
                          cwd=source_dir)
     if stdout is None:
         # run_command already complained.
@@ -321,7 +318,7 @@ def versions_from_git(tag_prefix):
     else:
         normalized_version = "%s.post%s" % (pieces[0], pieces[1])
 
-    stdout = run_command([GIT, "rev-parse", "HEAD"], cwd=source_dir)
+    stdout = run_command(["git", "rev-parse", "HEAD"], cwd=source_dir)
     if stdout is None:
         # run_command already complained.
         return {}
@@ -331,7 +328,7 @@ def versions_from_git(tag_prefix):
         normalized_version += ".dev0"
 
     # Thanks to Jistanidiot at <http://stackoverflow.com/questions/6245570/get-current-branch-name>.
-    stdout = run_command([GIT, "rev-parse", "--abbrev-ref", "HEAD"], cwd=source_dir)
+    stdout = run_command(["git", "rev-parse", "--abbrev-ref", "HEAD"], cwd=source_dir)
     branch = (stdout or "unknown").strip()
 
     return {"version": version, "normalized": normalized_version, "full": full, "branch": branch}
@@ -366,7 +363,8 @@ Warning: no version information found. This may cause tests to fail.
 """)
 
     def try_from_git(self):
-        versions = versions_from_git("allmydata-tahoe-")
+        # If we change APPNAME, the release tag names should also change from then on.
+        versions = versions_from_git(APPNAME + '-')
         if versions:
             f = open(VERSION_PY_FILENAME, "wb")
             f.write(GIT_VERSION_BODY %