diff --git a/unitgrade/__pycache__/unitgrade.cpython-38.pyc b/unitgrade/__pycache__/unitgrade.cpython-38.pyc
index be8062ad9576348beec485019d587f4c0f1b248f..bd16532967d3b50cf89e3923950e92ac07aa25fe 100644
Binary files a/unitgrade/__pycache__/unitgrade.cpython-38.pyc and b/unitgrade/__pycache__/unitgrade.cpython-38.pyc differ
diff --git a/unitgrade/__pycache__/unitgrade_helpers.cpython-38.pyc b/unitgrade/__pycache__/unitgrade_helpers.cpython-38.pyc
index e83dce19af0550bd9e960167059ea3b304191b28..8a97ab0838eea34ae10999be8ca134838931f8aa 100644
Binary files a/unitgrade/__pycache__/unitgrade_helpers.cpython-38.pyc and b/unitgrade/__pycache__/unitgrade_helpers.cpython-38.pyc differ
diff --git a/unitgrade/__pycache__/version.cpython-38.pyc b/unitgrade/__pycache__/version.cpython-38.pyc
index 79890100982f99dfa74eaaa28454b969f4f9d8fb..57989453481719d2c5051bcb147d601d4104e23f 100644
Binary files a/unitgrade/__pycache__/version.cpython-38.pyc and b/unitgrade/__pycache__/version.cpython-38.pyc differ
diff --git a/unitgrade/unitgrade.py b/unitgrade/unitgrade.py
index e1006731ce1109b5a234e8a1cb4f5f831a1d9db2..9bbd6e31e56c0b3301cfccd7b69cd74842d86d0c 100644
--- a/unitgrade/unitgrade.py
+++ b/unitgrade/unitgrade.py
@@ -87,7 +87,7 @@ class QItem(unittest.TestCase):
 
         self.name = self.__class__.__name__
         self._correct_answer_payload = correct_answer_payload
-        self.question = None
+        self.question = question
         # self.a = "not set"
 
         super().__init__(*args, **kwargs)
@@ -124,10 +124,6 @@ class QItem(unittest.TestCase):
             print(f"Element-wise differences {diff.tolist()}")
             self.assertEqual(computed, expected, msg=f"Not equal within tolerance {tol}")
 
-    # def set_precomputed_payload(self, payload):
-    #     self.a = "blaaah"
-    #     self._precomputed_payload = payload
-
     def precomputed_payload(self):
         return self._precomputed_payload
 
diff --git a/unitgrade/unitgrade_helpers.py b/unitgrade/unitgrade_helpers.py
index c73c496f4f37516ccefe13bb583ef735bf9ef6e8..3760f82e581e695f96b5adae0d51757b076d6558 100644
--- a/unitgrade/unitgrade_helpers.py
+++ b/unitgrade/unitgrade_helpers.py
@@ -136,12 +136,21 @@ def evaluate_report(report, question=None, qitem=None, passall=False, verbose=Fa
 
                 cc = None
                 if show_progress_bar:
-                    # cc.start()
                     cc = ActiveProgress(t=q.estimated_time, title=q_title_print)
                 from unitgrade import Capturing
-                #eval('from unitgrade import Capturing')
-                with eval('Capturing')(unmute=unmute): # Clunky import syntax is required bc. of minify issue.
-                    q.init() # Initialize the question. Useful for sharing resources.
+                with eval('Capturing')(unmute=unmute):  # Clunky import syntax is required bc. of minify issue.
+                    try:
+                        q.init()  # Initialize the question. Useful for sharing resources.
+                    except Exception as e:
+                        if not passall:
+                            if not silent:
+                                print(" ")
+                                print("="*30)
+                                print(f"When initializing question {q.title} the initialization code threw an error")
+                                print(e)
+                                print("The remaining parts of this question will likely fail.")
+                                print("="*30)
+
                 if show_progress_bar:
                     cc.terminate()
                     sys.stdout.flush()
diff --git a/unitgrade/version.py b/unitgrade/version.py
index 51e0a0611dc153362362f544329cb2287f967a38..de49d1fae0d98d027750577063be9c8e054ce594 100644
--- a/unitgrade/version.py
+++ b/unitgrade/version.py
@@ -1 +1 @@
-__version__ = "0.1.4"
\ No newline at end of file
+__version__ = "0.1.5"
\ No newline at end of file