hgweb.cgi
author Bryan O'Sullivan <bryano@fb.com>
Mon, 08 Oct 2012 15:57:21 -0700
changeset 17734 619068c280fd
parent 15475 85cba926cb59
child 26421 4b0fc75f9403
permissions -rwxr-xr-x
contrib: add a commit synthesizer for reproducing scaling problems This adds two new commands: - analyze examines an existing repo and writes out a statistical description of its properties that contains no identifying information. - synthesize creates new commits based on the description generated by analyze. The intention is that a repo constructed using synthesize will have properties that are vaguely statistically similar to the originating repo, but entirely random content. This can be useful for forecasting performance as a repo grows, and for developers who want to find bottlenecks in proprietary repos to which they do not have access.

#!/usr/bin/env python
#
# An example hgweb CGI script, edit as necessary
# See also http://mercurial.selenic.com/wiki/PublishingRepositories

# Path to repo or hgweb config to serve (see 'hg help hgweb')
config = "/path/to/repo/or/config"

# Uncomment and adjust if Mercurial is not installed system-wide
# (consult "installed modules" path from 'hg debuginstall'):
#import sys; sys.path.insert(0, "/path/to/python/lib")

# Uncomment to send python tracebacks to the browser if an error occurs:
#import cgitb; cgitb.enable()

from mercurial import demandimport; demandimport.enable()
from mercurial.hgweb import hgweb, wsgicgi
application = hgweb(config)
wsgicgi.launch(application)