D8978: hgweb: compatibility of hgweb.cgi template with Python 3

haraldkl (Harald Klimach) phabricator at mercurial-scm.org
Wed Sep 2 13:16:59 UTC 2020


haraldkl created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REVISION SUMMARY
  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.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D8978

AFFECTED FILES
  contrib/hgweb.fcgi
  contrib/hgweb.wsgi
  hgweb.cgi

CHANGE DETAILS

diff --git a/hgweb.cgi b/hgweb.cgi
--- a/hgweb.cgi
+++ b/hgweb.cgi
@@ -4,7 +4,7 @@
 # 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"
+config = b"/path/to/repo/or/config"
 
 # Uncomment and adjust if Mercurial is not installed system-wide
 # (consult "installed modules" path from 'hg debuginstall'):
diff --git a/contrib/hgweb.wsgi b/contrib/hgweb.wsgi
--- a/contrib/hgweb.wsgi
+++ b/contrib/hgweb.wsgi
@@ -2,7 +2,7 @@
 # See https://mercurial-scm.org/wiki/modwsgi for more information
 
 # Path to repo or hgweb config to serve (see 'hg help hgweb')
-config = "/path/to/repo/or/config"
+config = b"/path/to/repo/or/config"
 
 # Uncomment and adjust if Mercurial is not installed system-wide
 # (consult "installed modules" path from 'hg debuginstall'):
diff --git a/contrib/hgweb.fcgi b/contrib/hgweb.fcgi
--- a/contrib/hgweb.fcgi
+++ b/contrib/hgweb.fcgi
@@ -3,7 +3,7 @@
 # An example FastCGI script for use with flup, edit as necessary
 
 # Path to repo or hgweb config to serve (see 'hg help hgweb')
-config = "/path/to/repo/or/config"
+config = b"/path/to/repo/or/config"
 
 # Uncomment and adjust if Mercurial is not installed system-wide
 # (consult "installed modules" path from 'hg debuginstall'):



To: haraldkl, #hg-reviewers
Cc: mercurial-patches, mercurial-devel


More information about the Mercurial-devel mailing list