mypy does *not* warn “missing return statement” if the last line of a function body is a raise statement. It does if the last line is instead a call to a function which does nothing but raise an exception. Is this a bug? A known bug? It feels bug-like to me.
Asking because it seems that if you do centralized error handling like this, mypy either requires you turn off warnings for missing return statements, or throw in unreachable return or “assert False” statements to appease it.