hgweb.cgi
author Matt Mackall <mpm@selenic.com>
Tue, 13 Sep 2016 14:14:05 -0500
changeset 34457 7757cc48b766
parent 26421 4b0fc75f9403
child 43731 47ef023d0165
permissions -rwxr-xr-x
extdata: add extdatasource reader This adds basic support for extdata, a way to add external data sources for revsets and templates. An extdata data source is simply a list of lines of the form: <revision identifier>[<space><freeform text>]\n An extdata source is configured thusly: [extdata] name = <a url or path> urls of the form shell: are launch shell commands to generate data. This patch is slightly modified by Yuya Nishihara as follows: - fix typo - remove unused function - remove future expansion point for parameter (which can be added later as the extdata revset/template are experimental) You can see the original patch at https://www.mercurial-scm.org/pipermail/mercurial-devel/2016-September/088426.html

#!/usr/bin/env python
#
# An example hgweb CGI script, edit as necessary
# See also https://mercurial-scm.org/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)