hgweb: don't call sys.exit() in httpservice.run()
If I'm reading the code correctly, `mercurial.server.createservice()`
can return an hgweb service or one of three types of command server
services. The caller then calls `mercurial.server.runservice()`,
passing it the returned service's run method. Only the hgweb service
was calling `sys.exit()`. It has been that way since 8d44649df03b
(refactor ssh server., 2006-06-04). That commit message doesn't
provide any explanation. Let's clean up and have the code follow the
usual return path into the `dispatch` module.
After this patch, there should be no remaining places left where we
call `sys.exit()` except for valid uses in the `dispatch` and `worker`
modules.
Differential Revision: https://phab.mercurial-scm.org/D9272
#require test-repo pylint hg10
Run pylint for known rules we care about.
-----------------------------------------
There should be no recorded failures; fix the codebase before introducing a
new check.
Current checks:
- W0102: no mutable default argument
$ touch $TESTTMP/fakerc
$ pylint --rcfile=$TESTTMP/fakerc --disable=all \
> --enable=W0102,C0321 \
> --reports=no \
> --ignore=thirdparty \
> mercurial hgdemandimport hgext hgext3rd | sed 's/\r$//'
Using config file *fakerc (glob) (?)
(?)
------------------------------------ (?)
Your code has been rated at 10.00/10 (?)
(?)