Skip to content
Merged
1 change: 1 addition & 0 deletions docs/mutation.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@ The difference between **omitted** and **explicitly written** matters for merge-
## File input, GET YAML, and current limits

- If an endpoint accepts `-f`, supplying a file takes precedence over GET-then-update. The supplied body is sent as a write document (with the endpoint's file-body wrapping behavior); it is **not** run through the field handlers or the flag-built sparse PATCH path. `body_params` from the automatic mutation path are not merged into it. A full write-ready PATCH file is allowed, but inspect its shape before sending it.
- When the API stores the resource as a YAML string inside a JSON response (for example `data.yaml` on triggers), pick it with `update_body_pick: yamlParse(it.data.yaml)` and set `content_type: application/yaml`. The mutated object is then re-encoded as the YAML request body, so comments are dropped and keys are written sorted.
- `get --format yaml` still uses the **get command's separate `yaml_pick_expr` / `yaml_exclude`**, not `update_body_pick` or custom field handlers. FME's current YAML output is not automatically write-ready for tags/owners; do not promise a GET-YAML-to-`-f` round trip until its specs and conversion path are addressed.
- There is no `patch_always_fields` facility yet. PATCH does not copy unchanged picked IDs or other required fields automatically. If an API requires one, establish that requirement before changing the spec/core; an explicit `body_params` value may suffice when it is available independently of GET.
- Core does not look up owner emails or reconstruct missing API identifiers. FME currently returns a group name without the identifier needed to write that group back; that requires a server-side round-trip fix before mixed-owner edits can be reliable.
Expand Down
2 changes: 0 additions & 2 deletions modules/pipeline/pipeline.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,6 @@ import (
func ModuleInit(reg registry.ModuleRegistrar) {
reg.RegisterFetchFn(listExecutionLogsFetchFnID, listExecutionLogsFetchFn)
reg.RegisterWorkflow(getPipelineLogHandlerID, getPipelineLogHandler)
reg.RegisterWorkflow(updateTriggerEnableHandlerID, updateTriggerEnableHandler)
reg.RegisterWorkflow(updateTriggerDisableHandlerID, updateTriggerDisableHandler)
reg.RegisterBodyFn(executePipelineBodyFnID, executePipelineBody)
reg.RegisterBodyFn(executeInputSetBodyFnID, executeInputSetBody)
reg.RegisterBodyFn(executeDynamicBodyFnID, executeDynamicBody)
Expand Down
142 changes: 0 additions & 142 deletions modules/pipeline/trigger_toggle.go

This file was deleted.

206 changes: 0 additions & 206 deletions modules/pipeline/trigger_toggle_test.go

This file was deleted.

1 change: 1 addition & 0 deletions pkg/exprenv/exprenv.go
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ func BaseFuncs(ptyEnabled bool) map[string]any {
"substr": exprfuncs.Substr,
"formatOrder": exprfuncs.FormatOrder,
"env": exprfuncs.Env,
"yamlParse": exprfuncs.YamlParse,
"b64decode": exprfuncs.Base64Decode,
}
}
Expand Down
Loading
Loading