Repository navigation
Accept inline YAML merge mappings in bundles - #7269
Conversation
|
Commit: Regression test reportSelected 1 changed tests (limit=20, 0 not selected) 2 tests: regression=2 unreleased=0 coverage=0 failing=0
TestAccept/bundle/validate/yaml_anchors/inline_merge_mapping/DMS=: branch ✅ | main (3aa5c96) ❌ | latest (v1.23.0) ❌main (3aa5c96): latest (v1.23.0): same output as main (3aa5c96) TestAccept/bundle/validate/yaml_anchors/inline_merge_mapping/DMS=true: branch ✅ | main (3aa5c96) ❌ | latest (v1.23.0) ❌main (3aa5c96): latest (v1.23.0): same output as main (3aa5c96) |
Integration test reportCommit: 2cc1143
Top 3 slowest tests (at least 2 minutes):
|
Was the issue strict mode related? The original test only did --strict but it seems like it would fail without strict as well? |
| @@ -1,2 +1,3 @@ | |||
| # An inline mapping as the value of '<<' in target variables. | |||
| errcode trace $CLI bundle validate | |||
| trace $CLI bundle validate --strict -t dev | |||
There was a problem hiding this comment.
@denik I tested the case without --strict rather than relying on the original fixture. After removing the flag from both acceptance commands, bundle validate -t dev reported Validation OK! in both DMS= and DMS=true, and the JSON command returned variables.x with both default and value set to overridden. The focused acceptance test passed with the regenerated output in commit 2cc1143e6.
The fix is in YAML merge loading and does not depend on strict mode. My earlier reply inferred that from the old failure but did not verify the successful path without the flag.
Integration test reportCommit: f00a15a
12 interesting tests: 10 flaky, 2 FAIL
Top 50 slowest tests (at least 2 minutes):
|
Bundles using an inline YAML merge mapping now pass validation. The merged acceptance fixture records
<<: {x: overridden}as valid input thatbundle validatepreviously rejected withmap merge requires map or sequence of maps as the value. PR #7085 introduced this fixture to pin that behavior.The YAML loader now accepts a mapping node as one merge source. The updated acceptance case checks
bundle validate -t devwithout--strictand the resolved JSON value ofvariables.x; a focused unit test checks that an explicit key takes precedence while another merged key remains.Local verification
The five-file diff was checked on
codex/dabs-yaml-inline-merge-20261030at its recorded upstream base:TestYAMLInlineMapMergepassed.--strictwithDMS=andDMS=true. Both modes reportedValidation OK!and JSONdefaultandvalueofoverridden.git diff --checkpassed.These are local checks; this body makes no CI claim.
Candidate assignee
Denis Bilenko (
denik) authored PR #7085, which added the inline-merge fixture.