hgweb.cgi
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
Wed, 26 Apr 2006 22:42:07 -0700
changeset 2138 f5046cab9e2e
parent 391 5f65a108a559
child 2506 d0db3462d568
permissions -rw-r--r--
Fix revlog-ng interaction with old-http. revlog.py wasn't trying to detect the version of a revlog file that doesn't exist on the filesystem (as is the case with old-http). Additionally, there was an off-by-one error in httprangereader.read (ranges in HTTP Range headers are inclusive), making it get more data than what was asked for. This made a struct.unpack complain that "unpack str size does not match format". Finally, with the two fixes above, test-static-http fails, since BaseHTTPServer doesn't understand ranges and returns too much data. Work around that by reading only the specified amount.

#!/usr/bin/env python
#
# An example CGI script to use hgweb, edit as necessary

import cgitb, os, sys
cgitb.enable()

# sys.path.insert(0, "/path/to/python/lib") # if not a system-wide install
from mercurial import hgweb

h = hgweb.hgweb("/path/to/repo", "repository name")
h.run()