docs: restore exception handling in conf.py

Change-Id: Ie6408385e821e509e964bcea001a39f8cfdc5da0
diff --git a/docs/conf.py b/docs/conf.py
index 854d2a5..41d816b 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -35,12 +35,15 @@
     'sphinx.ext.todo',
 ]
 
-def addExtensionIfExists(extension):
-    if importlib.util.find_spec(extension) is not None:
-        extensions.append(extension)
-    else:
+def addExtensionIfExists(extension: str):
+    try:
+        if importlib.util.find_spec(extension) is None:
+            raise ModuleNotFoundError(extension)
+    except (ImportError, ValueError):
         sys.stderr.write(f'WARNING: Extension {extension!r} not found. '
-                          'Some documentation may not build correctly.\n')
+                         'Some documentation may not build correctly.\n')
+    else:
+        extensions.append(extension)
 
 addExtensionIfExists('sphinxcontrib.doxylink')