vomba
2a99e55756
fix: preserve correct parent references in explode merge anchor reconstruction
...
When explode resolves merge anchors (<<:), items copied from the
alias target retained the original parent pointer instead of being
set to the enclosing node being reconstructed. This caused GetPath()
to return wrong paths for children of merge-anchored nodes, making
subsequent merge operations target the wrong LHS keys.
In fixedReconstructAliasedMap, set copied.Parent = node after copy.
In reconstructAliasedMap (non-spec path), replace AddChild (which
creates sequence-style numeric-index entries) with AddKeyValueChild
to properly reconstruct mapping key-value pairs. AddKeyValueChild
also correctly sets parent references via SetParent.
2026-06-17 10:57:37 +02:00
Rayan Salhab
722c9aa16c
Fix nested inline YAML merge explode ( #2699 )
...
Co-authored-by: cyphercodes <cyphercodes@users.noreply.github.com>
2026-05-14 19:33:50 +10:00
Copilot
7d8d3ab902
Replace gopkg.in/op/go-logging.v1 with log/slog ( #2635 )
...
* Initial plan
* Replace gopkg.in/op/go-logging.v1 with log/slog
Co-authored-by: mikefarah <1151925+mikefarah@users.noreply.github.com>
Agent-Logs-Url: https://github.com/mikefarah/yq/sessions/aa9c12f4-21b9-4633-9868-6b56585b247f
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: mikefarah <1151925+mikefarah@users.noreply.github.com>
2026-03-26 20:41:54 +11:00
Mike Farah
db2a4550e5
Fixed tests
2025-07-22 11:25:02 +10:00
Mike Farah
3018396ed2
wip: fixing key order
2025-07-22 10:50:52 +10:00
Mike Farah
84b095bbc4
Making examples of the merge fix flag clearer
2025-07-22 10:18:39 +10:00
Mike Farah
f35e57d901
Warn less about flag
2025-07-22 10:02:27 +10:00
Steven WdV
70ac3d6c7a
Add override behavior comments
2025-07-20 15:46:15 +02:00
Steven WdV
904215ef4d
Fix key overriding in regular maps for traversing
2025-07-20 15:37:45 +02:00
Steven WdV
9c95a9f379
Unify reconstructAliasedMap & fixedReconstructAliasedMap
2025-07-20 14:59:17 +02:00
Steven WdV
a4720c089a
Merge remote-tracking branch 'origin/MakeExplodeGreatAgain' into merge-anchor-fix
...
# Conflicts:
# pkg/yqlib/doc/operators/anchor-and-alias-operators.md
# pkg/yqlib/operator_anchors_aliases.go
# pkg/yqlib/operator_anchors_aliases_test.go
2025-07-20 14:37:36 +02:00
Mike Farah
23a7b173bf
Fixing merge anchor key order
2025-07-19 15:27:44 +10:00
Steven WdV
a47e882c8f
Flag for fixed list merge key traverse override behavior,
...
and fix traversing map with merge key that would override local key (completes #2110 fix)
2025-07-16 16:00:16 +02:00
Steven WdV
128bf80eed
Merge branch 'master' into merge-anchor-fix
2025-07-16 14:25:23 +02:00
Mike Farah
6e8cc00030
Added flag to fix #2110
2025-07-14 16:26:26 +10:00
stevenwdv
78c096fa8f
Remove redundant logic
2025-06-17 15:56:13 +02:00
Steven WdV
ce9a4af0df
Fix inline map exploding when it contains aliases
2025-06-16 16:09:55 +02:00
Steven WdV
4734be9a4d
Fix excessive exploding for merge anchor
2025-06-16 13:53:28 +02:00
Steven WdV
31628e7324
Make merge anchor errors for traversing nonfatal
2025-06-16 13:33:42 +02:00
Steven WdV
bfcb3fc6b7
Fix merge anchor exploding
...
- Allow inline maps instead of just aliases
- Allow aliased sequences
- Disallow other types
- Use tag `!!merge` instead of key `<<`
- Fix insertion index for sequence merge
Closes #2386
2025-06-16 09:58:26 +02:00
Mike Farah
3c3f1180d9
Cleaning up log message formats
2024-02-16 09:44:22 +11:00
Mike Farah
010750daf6
Updated to latest golint
2024-01-11 13:17:34 +11:00
Mike Farah
13d1bbb45f
Generic ast ( #1829 )
...
Remove dependency on yaml.Node for internal AST representation. Yaml decoder is now just another decoder.
2023-10-18 12:11:53 +11:00
Mike Farah
817287ec90
Check merge alias is a map #1425
2022-11-11 14:53:45 +11:00
Mike Farah
665f6b0267
Fixed self assigned issue #1107
2022-02-20 14:29:52 +11:00
Mike Farah
26356ff4be
Added github action fix for parsing xml, updated linter
2022-02-07 11:55:55 +11:00
Matthieu MOREL
59752fb36d
enable more linters ( #1043 )
...
* enable revive linter
* enable gochecknoinits linter
* enable unconvert linter
* enable unparam linter
* enable asciicheck linter
* enable depguard linter
* enable nakedret linter
* enable megacheck linter
* enable nolintlint linter
* enable predeclared linter
* Update go.yml
* Update go.yml
2021-12-21 09:30:08 +11:00
Mike Farah
b44fecdfa5
Added key operator
2021-11-24 09:57:35 +11:00
Mike Farah
4a4aae00af
Sped up explode operator
2021-10-11 10:41:15 +11:00
Mike Farah
0b71a40797
Fixing readonly ops not to modify context when paths dont exist
2021-05-16 14:17:13 +10:00
Mike Farah
ae4b606707
Fixed merge anchor bug #800
2021-05-09 13:26:02 +10:00
Mike Farah
c6efd5519b
Pass context through operators
...
Allows more sophisticated functionality
2021-02-11 10:58:40 +11:00
Mike Farah
e86f83fb69
Renaming pathtree to expression
2021-02-11 10:58:40 +11:00
Mike Farah
7518dac99c
Fixed creation of candidateNode in operators to include file metadata
2021-02-11 10:58:40 +11:00
Mike Farah
286590b01e
fixing exposed functions and interfaces
2021-02-11 10:58:40 +11:00
Mike Farah
8c1f7dfbd7
Can assign-update aliases and anchors
2021-02-11 10:58:40 +11:00
Mike Farah
1b0bce5da6
Added alias operator;
...
alias, anchor and explode ops are now all documented together
2020-12-22 12:23:13 +11:00