# HG changeset patch # User Ludovic Chabant # Date 1387085362 28800 # Node ID 800a1f6815570dd979f492c38480ff8ce4d7648e # Parent d29e2f337b007412f3b9d6b340a07a4291143fbe Use absolute paths in the Mercurial source-control. diff -r d29e2f337b00 -r 800a1f681557 wikked/scm/mercurial.py --- a/wikked/scm/mercurial.py Thu Dec 12 21:54:04 2013 -0800 +++ b/wikked/scm/mercurial.py Sat Dec 14 21:29:22 2013 -0800 @@ -180,8 +180,7 @@ def getHistory(self, path=None, limit=10): if path is not None: - rel_path = os.path.relpath(path, self.root) - status = self.client.status(include=[rel_path]) + status = self.client.status(include=[path]) if len(status) > 0 and status[0] == '?': return [] @@ -209,8 +208,7 @@ return revisions def getState(self, path): - rel_path = os.path.relpath(path, self.root) - statuses = self.client.status(include=[rel_path]) + statuses = self.client.status(include=[path]) if len(statuses) == 0: return STATE_COMMITTED status = statuses[0] @@ -221,14 +219,12 @@ raise Exception("Unsupported status: %s" % status) def getRevision(self, path, rev): - rel_path = os.path.relpath(path, self.root) - return self.client.cat([rel_path], rev=rev) + return self.client.cat([path], rev=rev) def diff(self, path, rev1, rev2): - rel_path = os.path.relpath(path, self.root) if rev2 is None: - return self.client.diff(files=[rel_path], change=rev1, git=True) - return self.client.diff(files=[rel_path], revs=[rev1, rev2], git=True) + return self.client.diff(files=[path], change=rev1, git=True) + return self.client.diff(files=[path], revs=[rev1, rev2], git=True) def commit(self, paths, op_meta): if 'message' not in op_meta or not op_meta['message']: @@ -250,7 +246,7 @@ def revert(self, paths=None): if paths is not None: - rel_paths = [os.path.relpath(p, self.root) for p in paths] - self.client.revert(files=rel_paths, nobackup=True) + self.client.revert(files=paths, nobackup=True) else: self.client.revert(all=True, nobackup=True) +