You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Normally, a CUE program is evaluated in its entirety. Some applications, however, such as tools/flow can benefit from incremental evaluation.
The tools/flow package provides a low-level workflow manager based on a CUE configurations. It forms the basis of cue cmd, which provides a cmd/cue-based mechanism for declaring and executing such workflows.
Currently, CUE needs to reevaluate the entire configuration when a cue cmd or tools/flow task returns some new data to the workflow, despite the new data only affecting a (small) specific part of the configuration.
With incremental evaluation, we instead cycle through evaluating the tasks in a configuration, augmenting it with the data returned, but only re-evaluating the bits that have changed.
A similar situation exists for the CUE LSP implementation when the user is making changes to a file as part of a wider configuration: the LSP server needs to minimally re-evaluate to configuration to ensure that diagnostics are responses for code completions are timely.
This performance sub-issue captures details and narrative specific to incremental evaluation-related performance issues. We will post updates and commentary related to this topic below.
Normally, a CUE program is evaluated in its entirety. Some applications, however, such as
tools/flow
can benefit from incremental evaluation.The
tools/flow
package provides a low-level workflow manager based on a CUE configurations. It forms the basis ofcue cmd
, which provides acmd/cue
-based mechanism for declaring and executing such workflows.Currently, CUE needs to reevaluate the entire configuration when a
cue cmd
ortools/flow
task returns some new data to the workflow, despite the new data only affecting a (small) specific part of the configuration.With incremental evaluation, we instead cycle through evaluating the tasks in a configuration, augmenting it with the data returned, but only re-evaluating the bits that have changed.
A similar situation exists for the CUE LSP implementation when the user is making changes to a file as part of a wider configuration: the LSP server needs to minimally re-evaluate to configuration to ensure that diagnostics are responses for code completions are timely.
This performance sub-issue captures details and narrative specific to incremental evaluation-related performance issues. We will post updates and commentary related to this topic below.
The umbrella performance issue captures higher-level performance updates.
Existing closedness-related bug reports/issues
The text was updated successfully, but these errors were encountered: