diff --git a/src/taskgraph/graph.py b/src/taskgraph/graph.py index a8662eece..9151a5d1c 100644 --- a/src/taskgraph/graph.py +++ b/src/taskgraph/graph.py @@ -83,7 +83,7 @@ def _visit(self, reverse): dependencies = reverse_links if reverse else forward_links dependents = forward_links if reverse else reverse_links - indegree = {node: len(dependencies.get(node, ())) for node in self.nodes} + indegree = {node: len(dependencies[node]) for node in self.nodes} queue = collections.deque( node for node, degree in indegree.items() if degree == 0 @@ -93,7 +93,7 @@ def _visit(self, reverse): node = queue.popleft() yield node - for dependent in dependents.get(node, ()): + for dependent in dependents[node]: indegree[dependent] -= 1 if indegree[dependent] == 0: queue.append(dependent) @@ -128,8 +128,8 @@ def links_and_reverse_links_dict(self): `reverse_links_dict` counterparts to avoid consumers modifying the cached value by mistake. """ - forward = collections.defaultdict(set) - reverse = collections.defaultdict(set) + forward = {node: set() for node in self.nodes} + reverse = {node: set() for node in self.nodes} for left, right, _ in self.edges: forward[left].add(right) reverse[right].add(left)