def _check_loopback_dependency(self): """ Alerts the user if they have an item depend on itself. """ if self.id in self.needs or self.id in self.needed_by: raise ItemDependencyError( _("'{item}' in bundle '{bundle}' on node '{node}' cannot depend on itself" ).format( item=self.id, bundle=self.bundle.name, node=self.node.name, ))
def _check_redundant_dependencies(self): """ Alerts the user if they have defined a redundant dependency (such as settings 'needs' on a triggered item pointing to the triggering item). """ for dep in self._deps: if self._deps.count(dep) > 1: raise ItemDependencyError( _("redundant dependency of {item1} in bundle '{bundle}' on {item2}" ).format( bundle=self.bundle.name, item1=self.id, item2=dep, ))