altdesktop / python-dbus-next

🚌 The next great DBus library for Python with asyncio support
https://python-dbus-next.readthedocs.io/en/latest/
MIT License
187 stars 58 forks source link

exception types could use a common base class #149

Open foresto opened 1 year ago

foresto commented 1 year ago

The exception classes derive directly from various python exceptions, rather than sharing a single dbus-next-specific superclass.

Because of this, distinguishing dbus errors from other errors requires application code to wrap dbus-next calls in their own try/except blocks, and wrap other calls in separate try/except blocks (or else catch every dbus-next exception individually by name). The result is very cluttered code.

A coherent exception hierarchy would make dbus-next much nicer to work with, and allow application code to be simpler and easier to read.