Skip to content
  • Martin von Zweigbergk's avatar
    errors: add config that lets user get more detailed exit codes · 21733e8c924f
    Martin von Zweigbergk authored
    This adds an experimental config that lets the user get more detailed
    exit codes. For example, there will be a specific error code for
    input/user errors. This is part of
    https://www.mercurial-scm.org/wiki/ErrorCategoriesPlan. I've made the
    config part of tweakdefaults.
    
    I've made the config enabled by default in tests. My reasoning is that
    we want to see that each specific error case gives the right exit code
    and we don't want to duplicate all error cases in the entire test
    suite. It also makes it easy to grep the `.t` files for `[255]` to
    find which cases we have left to fix. The logic for the current exit
    codes is quite simple, so I'm not too worried about regressions
    there. I've added a test case specifically for the "legacy" exit
    codes.
    
    I've set the detailed exit status only for the case of
    `InterventionRequired` and `SystemExit` for now (the cases where we
    currently return something other than 255), just to show that it
    works.
    
    Differential Revision: https://phab.mercurial-scm.org/D9238
    21733e8c924f