[cubicweb-ctl] respect sys.exit status code when aborting a command
When exploring the stack of all calls to a cubicweb-ctl command, it has been
discovered than on a KeyboardInterrupt and on a SystemExit exception the base
class InstanceCommand (for commands that works on one instance) will always set
the return code of cubicweb-ctl to 8: this mean that if another command do a
`sys.exit(some_code)` the exit code will be ignored and overwritten by '8'.
This behavior is not intuitive, apparently not documented and doesn't seems to
have any justification. It also prevent commands from exciting with different
return codes which could be a desired behavior in the situation of scripting.
CubicWeb semantic web framework===============================CubicWeb is a entities / relations based knowledge management systemdevelopped at Logilab.This package contains:- a repository server- a RQL command line client to the repository- an adaptative modpython interface to the server- a bunch of other management toolsInstall-------More details at https://cubicweb.readthedocs.io/en/3.26/book/admin/setupGetting started---------------Execute:: python3 -m venv venv source venv/bin/activate pip install 'cubicweb[pyramid]' cubicweb-blog cubicweb-ctl create blog myblog # read how to create your ~/etc/cubicweb.d/myblog/pyramid.ini file here: # https://cubicweb.readthedocs.io/en/latest/book/pyramid/settings/#pyramid-settings-file # then start your instance: cubicweb-ctl pyramid -D myblog sensible-browser http://localhost:8080/Details at https://cubicweb.readthedocs.io/en/3.26/tutorials/base/blog-in-five-minutesYou can also look at the latest builds on Logilab's jenkins:https://jenkins.logilab.org/Test----Simply run the `tox` command in the root folder of this repository: toxHow to install tox: https://tox.readthedocs.io/en/latest/install.htmlDocumentation-------------Look in the doc/ subdirectory or read https://cubicweb.readthedocs.io/en/3.26/CubicWeb includes the Entypo pictograms by Daniel Bruce — http://www.entypo.comContributing------------Patches should be submitted by email at the cubicweb-devel@lists.cubicweb.orgmailing list in order to get reviewed by project integrators or any communitymember.The simplest way of send patches is to use the ``hg email`` command availablethrough the *patchbomb* extension of Mercurial. Preferably, patches should be*in the message body* of emails. When submitting a revised version of a patchseries, a prefix indicating the iteration number ``<n>`` of the series shouldbe added to email subject prefixes; this can be achieved by specifying a``--flag v<n>`` option to ``hg email`` command. If needed you can also use the--in-reply-to option.Examples: hg email --to cubicweb-devel@lists.cubicweb.org --intro -r <start>::<end> hg email --flag V2 --to cubicweb-devel@lists.cubicweb.org -r <start>::<end>If you have any questions you can also come on Logilab's public XMPP room usinga XMPP client: public@conference.jabber.logilab.orgMailing list: https://lists.cubicweb.org/mailman/listinfo/cubicweb-develPatchbomb extension: https://www.mercurial-scm.org/wiki/PatchbombExtensionGood practice on sending email patches: https://www.mercurial-scm.org/wiki/ContributingChanges#Emailing_patches