aboutsummaryrefslogtreecommitdiffstats
path: root/libbe/darcs.py
diff options
context:
space:
mode:
authorW. Trevor King <wking@drexel.edu>2009-10-06 06:37:21 -0400
committerW. Trevor King <wking@drexel.edu>2009-10-06 06:37:21 -0400
commit5323cc1ba94095938c54a2853a3827c14b420e66 (patch)
treed742c177113374ae90a3ba334c362c038794c08a /libbe/darcs.py
parentaa7546258e3f24bec3df2d8c4b203ed08e0acbce (diff)
downloadbugseverywhere-5323cc1ba94095938c54a2853a3827c14b420e66.tar.gz
Moved VCS detection from _vcs_help() to _vcs_version().
The version string is useful information to have around, while the help string is probably not. For example, we use it in darcs.Darcs._vcs_get_file_contents() to construct an incantation appropriate to the version we're dealing with.
Diffstat (limited to 'libbe/darcs.py')
-rw-r--r--libbe/darcs.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/libbe/darcs.py b/libbe/darcs.py
index 16005f2..a46403c 100644
--- a/libbe/darcs.py
+++ b/libbe/darcs.py
@@ -40,8 +40,10 @@ class Darcs(vcs.VCS):
name="darcs"
client="darcs"
versioned=True
- def _vcs_help(self):
- status,output,error = self._u_invoke_client("--help")
+ def _vcs_version(self):
+ status,output,error = self._u_invoke_client("--version")
+ num_part = output.split(" ")[0]
+ self.parsed_version = [int(i) for i in num_part.split(".")]
return output
def _vcs_detect(self, path):
if self._u_search_parent_directories(path, "_darcs") != None :
@@ -97,9 +99,9 @@ class Darcs(vcs.VCS):
return vcs.VCS._vcs_get_file_contents(self, path, revision,
binary=binary)
else:
- try:
+ if self.parsed_version[0] >= 2:
return self._u_invoke_client("show", "contents", "--patch", revision, path)
- except vcs.CommandError:
+ else:
# Darcs versions < 2.0.0pre2 lack the "show contents" command
status,output,error = self._u_invoke_client("diff", "--unified",