##// END OF EJS Templates
push: add a way to allow concurrent pushes on unrelated heads...
push: add a way to allow concurrent pushes on unrelated heads Client has a mechanism for the server to check that nothing changed server side since the client prepared a push. That check is wide and any head changed on the server will lead to an aborted push. We introduce a way for the client to send a less strict checking. That logic will check that no heads impacted by the push have been affected. If other unrelated heads (including named branches heads) have been affected, the push will proceed. This is very helpful for repositories with high developers traffic on different heads, a common setup. That behavior is currently controlled by an experimental option. The config should live in the "server" section but bike-shedding of the name will happen in the next changesets. Servers advertise this capability through a new bundle2 capability 'checkeads', using the value 'related'. The 'test-push-race.t' is updated to check that new capabilities on the documented cases.

File last commit:

r26421:4b0fc75f default
r32709:16ada4cb default
Show More
hgweb.wsgi
18 lines | 677 B | text/plain | TextLexer
Matt Mackall
hgweb: synchronize fcgi and wsgi scripts
r11002 # An example WSGI for use with mod_wsgi, edit as necessary
Matt Mackall
urls: bulk-change primary website URLs
r26421 # See https://mercurial-scm.org/wiki/modwsgi for more information
Matt Mackall
hgweb: synchronize fcgi and wsgi scripts
r11002
# Path to repo or hgweb config to serve (see 'hg help hgweb')
config = "/path/to/repo/or/config"
Matt Mackall
hgweb: add hint about finding library path with debuginstall
r15475 # Uncomment and adjust if Mercurial is not installed system-wide
# (consult "installed modules" path from 'hg debuginstall'):
Matt Mackall
hgweb: synchronize fcgi and wsgi scripts
r11002 #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()
# enable demandloading to reduce startup time
from mercurial import demandimport; demandimport.enable()
from mercurial.hgweb import hgweb
application = hgweb(config)