Mercurial > hg
annotate hgweb.cgi @ 42126:ef0e3cc684b3
repoview: introduce a filter for serving hidden changesets
There are multiple usecase for being able to explicitly view or pull obsolete
from a server. We need to be able to do so without exposing the secret
changesets. We introduces a dedicated repository "view" to do so. Way to expose
this "view" to the user will come later.
To keep a behavior consistent with expected client/server behavior, the general
idea is for the obsolete access to be explicitly requested by the code
generating the request. In addition, the will be server side configuration to
restrict the access to this feature.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Mon, 21 May 2018 17:28:35 +0200 |
parents | 4b0fc75f9403 |
children | 47ef023d0165 |
rev | line source |
---|---|
202 | 1 #!/usr/bin/env python |
159 | 2 # |
11000
338167735124
hgweb: simplify hgweb.cgi, add help pointer
Matt Mackall <mpm@selenic.com>
parents:
6142
diff
changeset
|
3 # An example hgweb CGI script, edit as necessary |
26421
4b0fc75f9403
urls: bulk-change primary website URLs
Matt Mackall <mpm@selenic.com>
parents:
15475
diff
changeset
|
4 # See also https://mercurial-scm.org/wiki/PublishingRepositories |
159 | 5 |
11000
338167735124
hgweb: simplify hgweb.cgi, add help pointer
Matt Mackall <mpm@selenic.com>
parents:
6142
diff
changeset
|
6 # Path to repo or hgweb config to serve (see 'hg help hgweb') |
338167735124
hgweb: simplify hgweb.cgi, add help pointer
Matt Mackall <mpm@selenic.com>
parents:
6142
diff
changeset
|
7 config = "/path/to/repo/or/config" |
5244
79279b5583c6
cgi: sys.path.insert should be before importing mercurial
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
5197
diff
changeset
|
8 |
15475
85cba926cb59
hgweb: add hint about finding library path with debuginstall
Matt Mackall <mpm@selenic.com>
parents:
11503
diff
changeset
|
9 # Uncomment and adjust if Mercurial is not installed system-wide |
85cba926cb59
hgweb: add hint about finding library path with debuginstall
Matt Mackall <mpm@selenic.com>
parents:
11503
diff
changeset
|
10 # (consult "installed modules" path from 'hg debuginstall'): |
11000
338167735124
hgweb: simplify hgweb.cgi, add help pointer
Matt Mackall <mpm@selenic.com>
parents:
6142
diff
changeset
|
11 #import sys; sys.path.insert(0, "/path/to/python/lib") |
5197
55860a45bbf2
Enable demandimport only in scripts, not in importable modules (issue605)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3868
diff
changeset
|
12 |
6080
4baad19c4801
hgweb: disable cgitb by default
Maxim Dounin <mdounin@mdounin.ru>
parents:
5995
diff
changeset
|
13 # Uncomment to send python tracebacks to the browser if an error occurs: |
11000
338167735124
hgweb: simplify hgweb.cgi, add help pointer
Matt Mackall <mpm@selenic.com>
parents:
6142
diff
changeset
|
14 #import cgitb; cgitb.enable() |
391
5f65a108a559
hgweb: pull cgitb into CGI script example, where it can easily be disabled
mpm@selenic.com
parents:
202
diff
changeset
|
15 |
11000
338167735124
hgweb: simplify hgweb.cgi, add help pointer
Matt Mackall <mpm@selenic.com>
parents:
6142
diff
changeset
|
16 from mercurial import demandimport; demandimport.enable() |
338167735124
hgweb: simplify hgweb.cgi, add help pointer
Matt Mackall <mpm@selenic.com>
parents:
6142
diff
changeset
|
17 from mercurial.hgweb import hgweb, wsgicgi |
338167735124
hgweb: simplify hgweb.cgi, add help pointer
Matt Mackall <mpm@selenic.com>
parents:
6142
diff
changeset
|
18 application = hgweb(config) |
6141
90e5c82a3859
Backed out changeset b913d3aacddc (see issue971/msg5317)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5995
diff
changeset
|
19 wsgicgi.launch(application) |