inveniosoftware / invenio

Invenio digital library framework
https://invenio.readthedocs.io
MIT License
625 stars 292 forks source link

general: sys.exit used in API #1486

Closed kaplun closed 9 years ago

kaplun commented 10 years ago

Originally on 2013-04-23

Some pars of Invenio have evolved into standard Pythonic APIs. However here and there they make use of sys.exit() in order to report a failure (assuming they were used in a single process, rather than within an API call).

This behavior should be amended and appropriate Python exceptions should be raised instead.

modules/bibclassify/lib/bibclassify_cli.py:    sys.exit(1)
modules/bibclassify/lib/bibclassify_cli.py:    sys.exit(1)
modules/bibclassify/lib/bibclassify_cli.py:            sys.exit(0)
modules/bibclassify/lib/bibclassify_cli.py:        sys.exit(0)
modules/bibclassify/lib/bibclassify_cli.py:            sys.exit(0)
modules/bibclassify/lib/bibclassify_cli.py:            sys.exit(0)
modules/bibclassify/lib/bibclassify_cli.py:            sys.exit(0)
modules/bibclassify/lib/bibclassify_cli.py:        sys.exit(0)
modules/bibclassify/lib/bibclassify_ontology_reader.py:    sys.exit(0)
modules/bibconvert/bin/bibconvert.in:    sys.exit(1)
modules/bibconvert/bin/bibconvert.in:    sys.exit(1)
modules/bibconvert/bin/bibconvert.in:    sys.exit(exitcode)
modules/bibconvert/bin/bibconvert.in:        sys.exit(0)
modules/bibconvert/bin/bibconvert.in:        sys.exit(1)
modules/bibconvert/bin/bibconvert.in:        sys.exit(1)
modules/bibconvert/bin/bibconvert.in:            sys.exit(1)
modules/bibconvert/bin/bibconvert.in:        sys.exit(1)
modules/bibconvert/bin/bibconvert.in:        sys.exit(1)
modules/bibconvert/lib/bibconvert.py:    sys.exit()
modules/bibdocfile/lib/bibdocfilecli.py:                sys.exit(1)
modules/bibdocfile/lib/bibdocfilecli.py:            sys.exit(1)
modules/bibdocfile/lib/bibdocfilecli.py:        sys.exit(1)
modules/bibedit/lib/bibeditcli.py:        sys.exit(1)
modules/bibedit/lib/bibeditcli.py:        sys.exit(1)
modules/bibedit/lib/bibeditcli.py:            sys.exit(1)
modules/bibedit/lib/bibeditcli.py:        sys.exit(1)
modules/bibedit/lib/bibeditcli.py:        sys.exit(1)
modules/bibedit/lib/bibeditcli.py:        sys.exit(1)
modules/bibedit/lib/bibeditcli.py:        sys.exit(1)
modules/bibedit/lib/bibeditcli.py:        sys.exit(1)
modules/bibedit/lib/bibeditcli.py:        sys.exit(1)
modules/bibedit/lib/bibeditcli.py:            sys.exit(1)
modules/bibedit/lib/bibeditcli.py:                sys.exit(1)
modules/bibedit/lib/bibeditcli.py:                sys.exit(1)
modules/bibedit/lib/bibeditcli.py:                sys.exit(1)
modules/bibedit/lib/bibeditcli.py:                sys.exit(1)
modules/bibedit/lib/bibeditcli.py:                sys.exit(1)
modules/bibedit/lib/bibeditcli.py:            sys.exit(1)
modules/bibformat/lib/bibformat.py:    sys.exit(exitcode)
modules/bibformat/lib/bibformat.py:                sys.exit(0)
modules/bibformat/lib/bibformat_engine.py:                sys.exit(exc.message)
modules/bibformat/lib/bibformat_engine.py:            sys.exit(exc.message)
modules/bibformat/lib/bibformat_engine.py:            sys.exit("Output format cannot be named as %s"%code)
modules/bibformat/lib/bibformat_xslt_engine.py:    #sys.exit(1)
modules/bibformat/lib/bibformat_xslt_engine.py:        #sys.exit(1)
modules/bibformat/lib/bibreformat.py:    sys.exit(1)
modules/bibformat/lib/bibreformat.py:            sys.exit(0)
modules/bibformat/lib/elements/bfe_issn.py:        sys.exit(0)
modules/bibformat/lib/elements/bfe_issn.py:        sys.exit(0)
modules/bibformat/lib/elements/bfe_issn.py:            sys.exit(0)
modules/bibformat/lib/elements/bfe_issn.py:            sys.exit(0)
modules/bibindex/bin/bibstat.in:    sys.exit(1)
modules/bibindex/bin/bibstat.in:    sys.exit(exitcode)
modules/bibindex/bin/bibstat.in:                sys.exit(0)
modules/bibmatch/lib/bibmatch_engine.py:    sys.exit(1)
modules/bibmatch/lib/bibmatch_engine.py:            sys.exit(0)
modules/bibmatch/lib/bibmatch_engine.py:            sys.exit(0)
modules/bibmatch/lib/bibmatch_engine.py:        sys.exit(1)
modules/bibmatch/lib/bibmatch_engine.py:            sys.exit(1)
modules/bibrank/lib/bibrank.py:        sys.exit(1)
modules/bibrank/lib/bibrank_word_indexer.py:                    sys.exit(1)
modules/bibrank/lib/bibrank_word_indexer.py:                    sys.exit(1)
modules/bibrank/lib/bibrank_word_indexer.py:            sys.exit(1)
modules/bibrank/lib/bibrankgkb.py:    sys.exit(code)
modules/bibrank/lib/bibrankgkb.py:                sys.exit(1)
modules/bibrank/lib/bibrankgkb.py:        sys.exit(1)
modules/bibrecord/bin/xmlmarc2textmarc.in:    sys.exit(1)
modules/bibrecord/bin/xmlmarclint.in:    sys.exit(2)
modules/bibrecord/bin/xmlmarclint.in:        sys.exit(0)
modules/bibrecord/bin/xmlmarclint.in:        sys.exit(0)
modules/bibrecord/bin/xmlmarclint.in:            sys.exit(2)
modules/bibrecord/bin/xmlmarclint.in:    sys.exit(0)
modules/bibrecord/bin/xmlmarclint.in:    sys.exit(1)
modules/bibrecord/bin/xmlmarclint.in:    sys.exit(1)
modules/bibrecord/bin/xmlmarclint.in:        sys.exit(1)
modules/bibrecord/bin/xmlmarclint.in:    sys.exit(1)
modules/bibrecord/lib/textmarc2xmlmarc.py:    sys.exit(code)
modules/bibrecord/lib/xmlmarc2textmarc.py:                sys.exit(1)
modules/bibrecord/lib/xmlmarc2textmarc.py:    sys.exit(exitcode)
modules/bibrecord/lib/xmlmarc2textmarc.py:            sys.exit(0)
modules/bibrecord/lib/xmlmarc2textmarc.py:            sys.exit(1)
modules/bibsched/lib/bibsched.py:    sys.exit(exitcode)
modules/bibsched/lib/bibsched.py:    sys.exit(1)
modules/bibsched/lib/bibsched.py:        sys.exit(0)
modules/bibsched/lib/bibsched.py:            sys.exit(0)
modules/bibsched/lib/bibtask.py:                sys.exit(0)
modules/bibsched/lib/bibtask.py:                sys.exit(0)
modules/bibsched/lib/bibtask.py:            sys.exit(0)
modules/bibsched/lib/bibtask.py:                sys.exit(0)
modules/bibsched/lib/bibtask.py:            sys.exit(1)
modules/bibsched/lib/bibtask.py:            sys.exit(1)
modules/bibsched/lib/bibtask.py:        sys.exit(1)
modules/bibsched/lib/bibtask.py:                sys.exit(1)
modules/bibsched/lib/bibtask.py:                sys.exit(1)
modules/bibsched/lib/bibtask.py:            sys.exit(1)
modules/bibsched/lib/bibtask.py:                sys.exit(1)
modules/bibsched/lib/bibtask.py:        sys.exit(1)
modules/bibsched/lib/bibtask.py:    sys.exit(exitcode)
modules/bibsched/lib/bibtask.py:    sys.exit(1)
modules/bibsched/lib/bibtask.py:    sys.exit(1)
modules/bibsched/lib/bibtask.py:            sys.exit(1)
modules/bibsched/lib/bibtask.py:        sys.exit(1)
modules/bibsched/lib/bibtasklet.py:    sys.exit(0)
modules/bibsched/lib/tasklets/bst_twitter_fetcher.py:        sys.exit(1)
modules/bibsort/bin/bibsort.in:    sys.exit(1)
modules/bibsword/bin/bibsword.in:    sys.exit(1)
modules/bibsword/lib/bibsword_client.py:    sys.exit(exitcode)
modules/bibsword/lib/bibsword_client.py:        sys.exit(0)
modules/bibupload/bin/batchuploader.in:    sys.exit(1)
modules/bibupload/bin/bibupload.in:    sys.exit(1)
modules/bibupload/lib/bibupload.py:                sys.exit(1)
modules/bibupload/lib/bibupload.py:        sys.exit(1)
modules/bibupload/lib/bibupload.py:        sys.exit(1)
modules/bibupload/lib/bibupload.py:        sys.exit(1)
modules/docextract/lib/refextract_cli.py:        sys.exit(exit_code)
modules/elmsubmit/bin/elmsubmit.in:    sys.exit(exitcode)
modules/elmsubmit/bin/elmsubmit.in:                sys.exit(0)
modules/elmsubmit/lib/elmsubmit_enriched2txt.py:#         exit(0);
modules/miscutil/bin/dbdump.in:    sys.exit(1)
modules/miscutil/bin/inveniocfg.in:    sys.exit(1)
modules/miscutil/bin/plotextractor.in:    sys.exit(1)
modules/miscutil/lib/kwalitee.py:        sys.exit(1)
modules/miscutil/lib/kwalitee.py:            sys.exit(0)
modules/miscutil/lib/kwalitee.py:            sys.exit(1)
modules/miscutil/lib/kwalitee.py:                sys.exit(1)
modules/miscutil/lib/plotextractor.py:        sys.exit(2)
modules/miscutil/lib/plotextractor.py:            sys.exit()
modules/miscutil/lib/plotextractor.py:            sys.exit()
modules/miscutil/lib/plotextractor.py:        sys.exit(1)
modules/miscutil/lib/plotextractor_getter.py:        sys.exit(1)
modules/miscutil/lib/plotextractor_getter.py:        sys.exit(1)
modules/miscutil/lib/testimport.py:    sys.exit(1)
modules/miscutil/lib/testimport.py:    sys.exit(1)
modules/miscutil/lib/testimport.py:    sys.exit(1)
modules/miscutil/lib/textutils.py:        sys.exit(1)
modules/oaiharvest/bin/oaiharvest.in:    sys.exit(1)
modules/oaiharvest/lib/oai_harvest_daemon.py:    sys.exit(exitcode)
modules/oaiharvest/lib/oai_harvest_daemon.py:                    sys.exit(0)
modules/oaiharvest/lib/oai_harvest_daemon.py:                        sys.exit(0)
modules/oaiharvest/lib/oai_harvest_getter.py:    sys.exit(1)
modules/oaiharvest/lib/oai_harvest_getter.py:    sys.exit(1)
modules/oaiharvest/lib/oai_harvest_getter.py:                sys.exit(1)
modules/oaiharvest/lib/oai_harvest_getter.py:                sys.exit(1)
modules/oairepository/lib/oai_repository_updater.py:        sys.exit(1)
modules/webaccess/bin/authaction.in:    sys.exit(1)
modules/webaccess/bin/authaction.in:    sys.exit(code)
modules/webaccess/bin/authaction.in:        sys.exit(0)
modules/webaccess/bin/webaccessadmin.in:    sys.exit(1)
modules/webaccess/lib/collection_restrictions_migration_kit.py:        sys.exit(1)
modules/webaccess/lib/webaccessadmin_lib.py:    sys.exit(exitcode)
modules/webaccess/lib/webaccessadmin_lib.py:                sys.exit(0)
modules/webalert/bin/alertengine.in:    sys.exit(1)
modules/webalert/bin/alertengine.in:        sys.exit(2)
modules/webalert/bin/alertengine.in:            sys.exit()
modules/webalert/bin/alertengine.in:            sys.exit(0)
modules/webmessage/bin/webmessageadmin.in:    sys.exit(1)
modules/webmessage/bin/webmessageadmin.in:    sys.exit(code)
modules/webmessage/bin/webmessageadmin.in:        sys.exit(0)
modules/websearch/bin/webcoll.in:    sys.exit(1)
modules/websearch/lib/websearch_webcoll.py:                sys.exit(1)
modules/websearch/lib/websearch_webcoll.py:            sys.exit(1)
modules/websearch/lib/websearch_webcoll.py:            sys.exit(1)
modules/websession/bin/inveniogc.in:    sys.exit(1)
modules/websession/lib/inveniogc.py:    sys.exit(1)
modules/websession/lib/password_migration_kit.py:        sys.exit(1)
modules/websession/lib/password_migration_kit.py:    sys.exit(1)
modules/webstat/bin/webstatadmin.in:    sys.exit(1)
modules/webstat/lib/webstatadmin.py:        sys.exit(0)
modules/webstat/lib/webstatadmin.py:        sys.exit(0)
modules/webstat/lib/webstatadmin.py:        sys.exit(0)
modules/webstat/lib/webstatadmin.py:        sys.exit(0)
modules/webstat/lib/webstatadmin.py:        sys.exit(0)
modules/webstyle/bin/gotoadmin.in:    sys.exit(1)
modules/webstyle/bin/webdoc.in:    sys.exit(1)
modules/webstyle/lib/template.py:    sys.exit(exitcode)
modules/webstyle/lib/webdoc.py:    sys.exit(exitcode)
modules/webstyle/lib/webdoc.py:                sys.exit(0)
modules/webstyle/lib/webinterface_handler_wsgi.py:        sys.exit(1)
modules/webstyle/lib/webinterface_handler_wsgi.py:        sys.exit(1)
modules/websubmit/lib/websubmit_file_converter.py:            sys.exit(1)
modules/websubmit/lib/websubmit_file_converter.py:            sys.exit(1)
modules/websubmit/lib/websubmit_file_metadata.py:        sys.exit(1)
modules/websubmit/lib/websubmit_file_metadata.py:        sys.exit(1)
modules/websubmit/lib/websubmit_file_metadata.py:        sys.exit(1)
modules/websubmit/lib/websubmit_file_stamper.py:    sys.exit(err_code)
modules/websubmit/lib/websubmit_file_stamper.py:            sys.exit(0)
modules/websubmit/lib/websubmit_file_stamper.py:        sys.exit(1)
modules/websubmit/lib/websubmit_icon_creator.py:    sys.exit(err_code)
modules/websubmit/lib/websubmit_icon_creator.py:            sys.exit(0)
modules/websubmit/lib/websubmit_icon_creator.py:        sys.exit(1)
kaplun commented 10 years ago

Originally on 2013-04-23

See also #1075.

tiborsimko commented 9 years ago

There is no PR for this issue, hence closing it as per the legacy code base freeze; it is addressed in master code base differently.