[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Mail source unreachable - continue yes/no?
From: |
Lars Ingebrigtsen |
Subject: |
Re: Mail source unreachable - continue yes/no? |
Date: |
Thu, 14 Oct 2021 13:22:26 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) |
Eric Abrahamsen <eric@ericabrahamsen.net> writes:
> On second thought you're not wrong here: the various *-open-server
> deffoos report their own failures with `nnheader-report' instead of
> signaling errors, and then `gnus-open-server' swallows any other errors
> and converts them to messages.
Ah. I knew there was something like that somewhere. :-)
> Failures arrived at via `gnus-request-scan' mostly show up as actual
> errors.
Perhaps we should adjust those errors to be nnheader-report thingies
instead?
> - When the gnus-open-server deffoo processes fail, they (or their
> downstream functions) signal 'gnus-server-connection-error. (I didn't
> go through and do this for every backend, just enough to get the
> idea.)
> - Mail source fetching can fail, in which case 'gnus-mail-source-error
> is signaled. nnmail.el no longer handles this error: it propagates up
> and out through gnus-request-scan.
I've just skimmed the patch, but the approach looks sound to me (in
general).
> Some observations and questions:
>
> - There are many places and depth-levels in Gnus where failure modes are
> dealt with as messages (in effect working like `with-demoted-errors')
> or as nil return values from functions, which are then converted into
> messages, or sometimes even re-signaled as an actual `error' with a
> new message string. This often ends up burying real errors, and/or
> making debug on error hard to use. We could try flattening this out:
> low-level functions signal errors, and only top-level functions in
> gnus-start/gnus-group/gnus-sum get to catch them at the last minute,
> and only if necessary (other layers can of course catch and re-signal
> the errors if some cleanup work needs to be done). I have no idea if
> this would end up working out, but I think it would be good to try.
> And more use of `condition-case-unless-debug' at the top level.
I doubt it's possible to find an overarching strategy to handle all
kinds of errors on the "Gnus" level. Different errors are, well,
different.
> - There are many ways of logging, and messaging the user. Apart from
> `message' itself, there's `nnheader-report', `gnus-backend-trace',
> `nnheader-message(-maybe)', `gnus-message' and its action message log,
> along with `gnus-final-warning' and `gnus-error'.
>
> nnheader-report, in particular, seems to often be used as a substitute
> for actually signaling an error. A server is asked to do something, it
> fails for some reason and logs the reason with nnheader-report, then
> returns nil. The caller sees the nil, then retrieves the string with
> nnheader-get-report, and uses it to signal an error.
Hey! I invented Go error handling decades before Go was invented!
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
- Re: Mail source unreachable - continue yes/no?, (continued)
- Re: Mail source unreachable - continue yes/no?, Lars Ingebrigtsen, 2021/10/12
- Re: Mail source unreachable - continue yes/no?, Eric Abrahamsen, 2021/10/12
- Re: Mail source unreachable - continue yes/no?, Lars Ingebrigtsen, 2021/10/12
- Re: Mail source unreachable - continue yes/no?, Eric Abrahamsen, 2021/10/12
- Re: Mail source unreachable - continue yes/no?, Lars Ingebrigtsen, 2021/10/12
- Re: Mail source unreachable - continue yes/no?, Eric Abrahamsen, 2021/10/12
- Re: Mail source unreachable - continue yes/no?, Lars Ingebrigtsen, 2021/10/12
- Re: Mail source unreachable - continue yes/no?, Eric Abrahamsen, 2021/10/12
- Re: Mail source unreachable - continue yes/no?, Lars Ingebrigtsen, 2021/10/13
- Re: Mail source unreachable - continue yes/no?, Eric Abrahamsen, 2021/10/14
- Re: Mail source unreachable - continue yes/no?,
Lars Ingebrigtsen <=
- Re: Mail source unreachable - continue yes/no?, Eric Abrahamsen, 2021/10/14
- Re: Mail source unreachable - continue yes/no?, Lars Ingebrigtsen, 2021/10/15
- Re: Mail source unreachable - continue yes/no?, Eric Abrahamsen, 2021/10/15
Re: Mail source unreachable - continue yes/no?, Lars-Johan Liman, 2021/10/12
- Re: Mail source unreachable - continue yes/no?, Eric Abrahamsen, 2021/10/14
- Re: Mail source unreachable - continue yes/no?, Lars Ingebrigtsen, 2021/10/15
- Re: Mail source unreachable - continue yes/no?, Eric Abrahamsen, 2021/10/15
- Re: Mail source unreachable - continue yes/no?, Lars Ingebrigtsen, 2021/10/18
- Re: Mail source unreachable - continue yes/no?, Eric Abrahamsen, 2021/10/18
- Re: Mail source unreachable - continue yes/no?, Lars Ingebrigtsen, 2021/10/19