--- a/mercurial/templates/json/map Fri Jun 03 11:28:22 2016 +0200
+++ b/mercurial/templates/json/map Fri Jun 03 12:32:42 2016 +0200
@@ -1,5 +1,20 @@
mimetype = 'application/json'
-filerevision = '"not yet implemented"'
+filerevision = '\{
+ "node": {node|json},
+ "path": {file|json},
+ "date": {date|json},
+ "desc": {desc|utf8|json},
+ "branch": {if(branch, branch%changesetbranch, "default"|json)},
+ "bookmarks": [{join(bookmarks%changelistentryname, ", ")}],
+ "tags": [{join(tags%changelistentryname, ", ")}],
+ "user": {author|utf8|json},
+ "parents": [{join(parent%changesetparent, ", ")}],
+ "phase": {phase|json},
+ "lines": [{join(text%lineentry, ", ")}]
+ }'
+lineentry = '\{
+ "line": {line|json}
+ }'
search = '"not yet implemented"'
# changelog and shortlog are the same web API but with different
# number of entries.
--- a/tests/test-hgweb-json.t Fri Jun 03 11:28:22 2016 +0200
+++ b/tests/test-hgweb-json.t Fri Jun 03 12:32:42 2016 +0200
@@ -111,10 +111,33 @@
file/{revision}/{path} shows file revision
- $ request json-file/06e557f3edf6/foo
+ $ request json-file/78896eb0e102/foo-new
200 Script output follows
- "not yet implemented"
+ {
+ "bookmarks": [],
+ "branch": "default",
+ "date": [
+ 0.0,
+ 0
+ ],
+ "desc": "move foo",
+ "lines": [
+ {
+ "line": "bar\n"
+ }
+ ],
+ "node": "78896eb0e102174ce9278438a95e12543e4367a7",
+ "parents": [
+ "f8bbb9024b10f93cdbb8d940337398291d40dea8"
+ ],
+ "path": "foo-new",
+ "phase": "public",
+ "tags": [
+ "tag1"
+ ],
+ "user": "test"
+ }
file/{revision} shows root directory info