tools/flow: add IgnoreConcrete option
Ignore dependencies which point to immutable values.
This is the behavior of `cue cmd`. It is not sure whether
this is necessarily desirable, so this has been added as an option.
It would be possible to always have this behavior, though.
Change-Id: I3feacf5600a7ea1b69986e12fb5c7a285c9f413a
Reviewed-on: https://cue-review.googlesource.com/c/cue/+/7642
Reviewed-by: Marcel van Lohuizen <mpvl@golang.org>
Reviewed-by: CUE cueckoo <cueckoo@gmail.com>
diff --git a/tools/flow/flow.go b/tools/flow/flow.go
index 5f0b412..f028cee 100644
--- a/tools/flow/flow.go
+++ b/tools/flow/flow.go
@@ -136,6 +136,10 @@
// by any of the tasks defined within Root.
InferTasks bool
+ // IgnoreConcrete ignores references for which the values are already
+ // concrete and cannot change.
+ IgnoreConcrete bool
+
// UpdateFunc is called whenever the information in the controller is
// updated. This includes directly after initialization. The task may be
// nil if this call is not the result of a task completing.