Hmm, it's shorter, but doesn't really make anything better.
The custom functions & error classes might actually be useful to filter things (although they currently don't do anything special, and error classes appear to be completely unused. Further, message labels are not used consistently).
Also I'm afraid of possibly having overlooked something that relied on errors/warnings to be tuples of (message, cls) and not just the message.
It's still debatable, though. One could argue that it's essentially unused ballast that burdens the codebase, given the low significance of message filtering etc. (it does not impact the actual outcome)
Hmm, it's shorter, but doesn't really make anything better.
The custom functions & error classes might actually be useful to filter things (although they currently don't do anything special, and error classes appear to be completely unused. Further, message labels are not used consistently).
Also I'm afraid of possibly having overlooked something that relied on errors/warnings to be tuples of (message, cls) and not just the message.
Closing for now given these reasons.