aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Sunshine <sunshine@sunshineco.com>2015-01-14 08:46:33 +0100
committerAlberto Bertogli <albertito@blitiri.com.ar>2015-01-17 14:11:39 +0100
commit37e731fc2ebe5d249ea9caa85e15491654450238 (patch)
tree1426065dfd53cf26169eb9ad695ebbcae1e45d91
parente6099cf2729fc446f7cba2dab5da2d6b0646b567 (diff)
downloadgit-arr-fork-37e731fc2ebe5d249ea9caa85e15491654450238.zip
blob: pass branch name to view explicitly
Passing the branch name into the view indirectly via Repo.new_in_branch() increases cognitive burden, thus outweighing whatever minor convenience (if any) is gained by doing so. The code is easier to reason about when the branch name is passed to the view directly. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Alberto Bertogli <albertito@blitiri.com.ar>
-rwxr-xr-xgit-arr7
-rw-r--r--views/blob.html8
2 files changed, 7 insertions, 8 deletions
diff --git a/git-arr b/git-arr
index ce8ef30..15dbf14 100755
--- a/git-arr
+++ b/git-arr
@@ -231,8 +231,6 @@ def commit(repo, cid):
@bottle.view('blob')
@with_utils
def blob(repo, bname, fname, dirname = ''):
- r = repo.new_in_branch(bname)
-
if dirname and not dirname.endswith('/'):
dirname = dirname + '/'
@@ -240,11 +238,12 @@ def blob(repo, bname, fname, dirname = ''):
fname = git.smstr.from_url(fname)
path = dirname.raw + fname.raw
- content = r.blob(path)
+ content = repo.blob(path, bname)
if content is None:
bottle.abort(404, "File %r not found in branch %s" % (path, bname))
- return dict(repo = r, dirname = dirname, fname = fname, blob = content)
+ return dict(repo = repo, branch = bname, dirname = dirname, fname = fname,
+ blob = content)
@bottle.route('/r/<repo:repo>/b/<bname:path>/t/')
@bottle.route('/r/<repo:repo>/b/<bname:path>/t/<dirname:path>/')
diff --git a/views/blob.html b/views/blob.html
index ef20328..c937b37 100644
--- a/views/blob.html
+++ b/views/blob.html
@@ -8,10 +8,10 @@
% else:
% reltree = '../' * (len(dirname.split('/')) - 1)
% end
-% relroot = reltree + '../' * (len(repo.branch.split('/')) - 1)
+% relroot = reltree + '../' * (len(branch.split('/')) - 1)
<title>git &raquo; {{repo.name}} &raquo;
- {{repo.branch}} &raquo; {{dirname.unicode}}/{{fname.unicode}}</title>
+ {{branch}} &raquo; {{dirname.unicode}}/{{fname.unicode}}</title>
<link rel="stylesheet" type="text/css"
href="{{relroot}}../../../../../static/git-arr.css"/>
<link rel="stylesheet" type="text/css"
@@ -22,12 +22,12 @@
<body class="tree">
<h1><a href="{{relroot}}../../../../../">git</a> &raquo;
<a href="{{relroot}}../../../">{{repo.name}}</a> &raquo;
- <a href="{{reltree}}../">{{repo.branch}}</a> &raquo;
+ <a href="{{reltree}}../">{{branch}}</a> &raquo;
<a href="{{reltree}}">tree</a>
</h1>
<h3>
- <a href="{{reltree}}">[{{repo.branch}}]</a> /
+ <a href="{{reltree}}">[{{branch}}]</a> /
% base = smstr(reltree)
% for c in dirname.split('/'):
% if not c.raw: