##// END OF EJS Templates
httprepo: long arguments support (issue2126)...
httprepo: long arguments support (issue2126) Send the command arguments in the HTTP headers. The command is still part of the URL. If the server does not have the 'httpheader' capability, the client will send the command arguments in the URL as it did previously. Web servers typically allow more data to be placed within the headers than in the URL, so this approach will: - Avoid HTTP errors due to using a URL that is too large. - Allow Mercurial to implement a more efficient wire protocol. An alternate approach is to send the arguments as part of the request body. This approach has been rejected because it requires the use of POST requests, so it would break any existing configuration that relies on the request type for authentication or caching. Extensibility: - The header size is provided by the server, which makes it possible to introduce an hgrc setting for it. - The client ignores the capability value after the first comma, which allows more information to be included in the future.

File last commit:

r12327:92e30e13 default
r14093:ce99d887 default
Show More
test-abort-checkin.t
33 lines | 881 B | text/troff | Tads3Lexer
/ tests / test-abort-checkin.t
$ cat > abortcommit.py <<EOF
> from mercurial import util
> def hook(**args):
> raise util.Abort("no commits allowed")
> def reposetup(ui, repo):
> repo.ui.setconfig("hooks", "pretxncommit.nocommits", hook)
> EOF
$ abspath=`pwd`/abortcommit.py
$ echo "[extensions]" >> $HGRCPATH
$ echo "mq=" >> $HGRCPATH
$ echo "abortcommit = $abspath" >> $HGRCPATH
$ hg init foo
$ cd foo
$ echo foo > foo
$ hg add foo
mq may keep a reference to the repository so __del__ will not be
called and .hg/journal.dirstate will not be deleted:
$ hg ci -m foo
error: pretxncommit.nocommits hook failed: no commits allowed
transaction abort!
rollback completed
abort: no commits allowed
[255]
$ hg ci -m foo
error: pretxncommit.nocommits hook failed: no commits allowed
transaction abort!
rollback completed
abort: no commits allowed
[255]