Mercurial > hg
annotate contrib/hgweb.wsgi @ 39318:c03c5f528e9b
perf: use storage API for resolving manifest node
lookup() isn't part of the storage API. And this code shouldn't
be accessing manifestlog._revlog directly for the modern code base.
So let's port it to the modern API.
Note that the previous code was busted for cases where we needed
to call lookup() because lookup() isn't exposed by manifestrevlog
any more.
This change is strictly BC breaking because we no longer support
resolving partial nodes. But it is a perf* command and I don't
think we should flag the change as such.
Differential Revision: https://phab.mercurial-scm.org/D4390
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Wed, 15 Aug 2018 19:45:39 +0000 |
parents | 4b0fc75f9403 |
children | d58a205d0672 |
rev | line source |
---|---|
11002
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7800
diff
changeset
|
1 # An example WSGI for use with mod_wsgi, edit as necessary |
26421
4b0fc75f9403
urls: bulk-change primary website URLs
Matt Mackall <mpm@selenic.com>
parents:
15475
diff
changeset
|
2 # See https://mercurial-scm.org/wiki/modwsgi for more information |
11002
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7800
diff
changeset
|
3 |
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7800
diff
changeset
|
4 # Path to repo or hgweb config to serve (see 'hg help hgweb') |
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7800
diff
changeset
|
5 config = "/path/to/repo/or/config" |
7800
58125c27ddbe
contrib: add hgwebdir.wsgi, to serve as a better example
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff
changeset
|
6 |
15475
85cba926cb59
hgweb: add hint about finding library path with debuginstall
Matt Mackall <mpm@selenic.com>
parents:
11502
diff
changeset
|
7 # 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:
11502
diff
changeset
|
8 # (consult "installed modules" path from 'hg debuginstall'): |
11002
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7800
diff
changeset
|
9 #import sys; sys.path.insert(0, "/path/to/python/lib") |
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7800
diff
changeset
|
10 |
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7800
diff
changeset
|
11 # Uncomment to send python tracebacks to the browser if an error occurs: |
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7800
diff
changeset
|
12 #import cgitb; cgitb.enable() |
7800
58125c27ddbe
contrib: add hgwebdir.wsgi, to serve as a better example
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff
changeset
|
13 |
58125c27ddbe
contrib: add hgwebdir.wsgi, to serve as a better example
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff
changeset
|
14 # enable demandloading to reduce startup time |
58125c27ddbe
contrib: add hgwebdir.wsgi, to serve as a better example
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff
changeset
|
15 from mercurial import demandimport; demandimport.enable() |
58125c27ddbe
contrib: add hgwebdir.wsgi, to serve as a better example
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff
changeset
|
16 |
11002
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7800
diff
changeset
|
17 from mercurial.hgweb import hgweb |
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7800
diff
changeset
|
18 application = hgweb(config) |