beanquery
beanquery copied to clipboard
Improve exception message when attempting to connect to an invalid DSN
trafficstars
Connecting to a source with a misspelled or missing scheme, results in a ModuleNotFoundError:
File ".../lib/python/site-packages/beanquery/__init__.py", line 49, in attach
source = importlib.import_module(f'beanquery.sources.{scheme}')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/importlib/__init__.py", line 90, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
File "<frozen importlib._bootstrap>", line 1324, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'beanquery.sources.'
Catch this exception and turn it into something more user friendly.