@@ -221,10 +221,13 @@ // Returns a handler that stores every seen task and an ancillary function to retrieve those func collecting() (handler, func() tasks) { var seen = make(map[*task]struct{}) return func(t *task) action { seen[t] = struct{}{} + for _, dep := range t.depends { + seen[dep] = struct{}{} + } return action{} }, func() tasks { seq := make(tasks, 0, len(seen)) for k, _ := range seen { seq = append(seq, k)