Fix TOML roundtrip: use TomlInline flag instead of FlowStyle to preserve inline tables

FlowStyle affected YAML decode output (causing inline tables to appear as
YAML flow mappings). Replace it with a new TOML-specific TomlInline bool
on CandidateNode that:
- Is set by the TOML decoder for inline tables (not FlowStyle)
- Is copied by UpdateAttributesFrom so it survives DeeplyAssign merges
- Is checked by the TOML encoder alongside FlowStyle (for YAML flow maps)
- Has no effect on the YAML encoder, preserving existing TOML→YAML output

TOML roundtrip tests are restored to their original expected values (inline
tables stay inline, table sections stay as sections).

Agent-Logs-Url: https://github.com/mikefarah/yq/sessions/f59bdf62-6d16-4664-991b-38eb87c9d81c

Co-authored-by: mikefarah <1151925+mikefarah@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot]
2026-04-08 07:06:48 +00:00
committed by GitHub
co-authored by mikefarah
parent b99f4174ec
commit d1ffec12e6
5 changed files with 21 additions and 54 deletions
+2 -7
View File
@@ -153,9 +153,7 @@ yq '.' sample.toml
```
will output
```yaml
[name]
first = "Tom"
last = "Preston-Werner"
name = { first = "Tom", last = "Preston-Werner" }
```
## Roundtrip: table section
@@ -374,10 +372,7 @@ dob = 1979-05-27T07:32:00-08:00
enabled = true
ports = [8000, 8001, 8002]
data = [["delta", "phi"], [3.14]]
[database.temp_targets]
cpu = 79.5
case = 72.0
temp_targets = { cpu = 79.5, case = 72.0 }
# [servers] yq can't do this one yet
[servers.alpha]