qri-io/dataset

Add Steps field to dataset.Transform

Closed this issue · 0 comments

b5 commented

Add a new Steps field of type []*TransformStep to the Transform component. Mark scriptFile, ScriptBytes, ScriptPath, Syntax fields on Transform as deprecated, but don’t remove them.

Define a New TransformStep struct:

// TransformStep is a unit of operation in a transform script
type TransformStep struct {
 Name   string `json:"name"`
 Path   string `json:"path,omitempty"`
 Syntax string `json:"syntax"`
 Type   string `json:"type"`
 Value  string `json:"value"`
}

Adjust transform component methods to accommodate the new Steps field. Paying attention to methods like: trasnform.MarshalJSONObject, transform.Assign, transform.IsEmpty, transform.ShallowCompare, etc.

Be sure to update all tests and keep test coverage at current levels.