fix: strip __origin__ from slices in example values#4
Open
tvisser-hartwig wants to merge 1 commit intooasdiff:masterfrom
Open
fix: strip __origin__ from slices in example values#4tvisser-hartwig wants to merge 1 commit intooasdiff:masterfrom
__origin__ from slices in example values#4tvisser-hartwig wants to merge 1 commit intooasdiff:masterfrom
Conversation
stripOriginFromAny only recursed into map[string]any but not []any, so __origin__ keys inside array elements (e.g. example values with lists of objects) survived stripping and caused false positive diffs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
9998528 to
697d4b9
Compare
__origin__ from slices in example values
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
stripOriginFromAnyonly recursed intomap[string]anybut not[]anyslices__origin__keys inside array elements to survive strippingoasdiff diffto report false positive diffs when comparing identical specs loaded from different file paths (follow-up to openapi3: strip __origin__ from Encodings and ServerVariables maps getkin/kin-openapi#1132)Fix
Extend the
switchinstripOriginFromAnyto also handle[]any, recursing into each element.Test plan
TestStripOriginFromAny_Slice: unit test that verifies__origin__is stripped from objects inside slicesTestOrigin_ExampleWithArrayValue: integration test that loads a spec with array-valued examples and verifies__origin__is strippedgo test ./...🤖 Generated with Claude Code