Skip to content

Commit 64f3119

Browse files
committed
magicbot: Collect component feedbacks after setup
Avoids exceptions in properties when uninitialised being caught by debuggers, such as VS Code when breaking on all exceptions.
1 parent 377a3af commit 64f3119

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

magicbot/magicrobot.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -494,7 +494,6 @@ def _create_components(self):
494494
for cname, component in components:
495495
self._components.append(component)
496496
setup_tunables(component, cname, "components")
497-
self._feedbacks += collect_feedbacks(component, cname, "components")
498497
self._setup_vars(cname, component)
499498
self._setup_reset_vars(component)
500499

@@ -510,8 +509,11 @@ def _create_components(self):
510509

511510
# Call setup functions for components
512511
for cname, component in components:
513-
if hasattr(component, "setup"):
514-
component.setup()
512+
setup = getattr(component, "setup", None)
513+
if setup is not None:
514+
setup()
515+
# ... and grab all the feedback methods
516+
self._feedbacks += collect_feedbacks(component, cname, "components")
515517

516518
# Call setup functions for autonomous modes
517519
for mode in self._automodes.modes.values():

0 commit comments

Comments
 (0)