Mercurial > hg
view hgweb.cgi @ 45398:d58a205d0672 stable
hgweb: compatibility of hgweb.cgi template with Python 3
When running Mercurial on Python 3 hgweb expects the config variable to be a
bytestring.
The solution proposed by Anton Shestakov is to use a byteprefix to the literal
string defined cgi script as provided in this patch for hgweb.cgi,
contrib/hgweb.fcgi and contrib/hgweb.wsgi.
I am not sure whether this covers all relevant templates, but I couldn't find
others.
Differential Revision: https://phab.mercurial-scm.org/D8978
author | Harald Klimach <harald@klimachs.de> |
---|---|
date | Wed, 02 Sep 2020 12:31:37 +0200 |
parents | 47ef023d0165 |
children | c102b704edb5 |
line wrap: on
line source
#!/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 = b"/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)