Mercurial > kallithea
changeset 1083:9b2c21245198 beta
DAG fixes for vcs 0.2.0
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Fri, 25 Feb 2011 01:15:19 +0100 |
parents | c2440badab84 |
children | 17721a2dfadb |
files | rhodecode/controllers/changelog.py |
diffstat | 1 files changed, 10 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/rhodecode/controllers/changelog.py Fri Feb 25 01:14:18 2011 +0100 +++ b/rhodecode/controllers/changelog.py Fri Feb 25 01:15:19 2011 +0100 @@ -77,21 +77,23 @@ def _graph(self, repo, size, p): - revcount = size + """ + Generates a DAG graph for mercurial + + :param repo: repo instance + :param size: number of commits to show + :param p: page number + """ if not repo.revisions or repo.alias == 'git': c.jsdata = json.dumps([]) return - max_rev = repo.revisions[-1] - + revcount = min(repo.size, size) offset = 1 if p == 1 else ((p - 1) * revcount + 1) + rev_start = repo.revisions.index(repo.revisions[(-1 * offset)]) + rev_end = max(0, rev_start - revcount) - rev_start = repo.revisions[(-1 * offset)] - - revcount = min(max_rev, revcount) - rev_end = max(0, rev_start - revcount) dag = graph_rev(repo._repo, rev_start, rev_end) - c.dag = tree = list(colored(dag)) data = [] for (id, type, ctx, vtx, edges) in tree: