Open
Conversation
92992de to
95dce83
Compare
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #791 +/- ##
==========================================
+ Coverage 89.16% 90.49% +1.33%
==========================================
Files 239 264 +25
Lines 12815 15650 +2835
==========================================
+ Hits 11426 14163 +2737
- Misses 926 957 +31
- Partials 463 530 +67
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
a9484af to
d6f8063
Compare
c034fe7 to
d66fafa
Compare
e41e060 to
b2216d6
Compare
c7b8782 to
67038b7
Compare
760b550 to
ef6d14d
Compare
Squash-rebases the OpenAPI 3.1 support branch onto current main, integrating the sunset date deprecation IDs added by PR #795. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…red checkers Add tests for response body removed, property-level add/remove, and body/property-level minContains/maxContains changes. Also adds a containsId() helper to reduce test boilerplate. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Replace the getkin/kin-openapi replace directive with a direct dependency on the oasdiff/kin-openapi feat/openapi-3.1-support-oasdiff branch, which mirrors feat/openapi-3.1-support but declares module path github.com/oasdiff/kin-openapi. This eliminates the module path mismatch that caused go vet to fail on flatten/allof (undefined ExclusiveBound). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Picks up yaml/yaml3 v0.0.3 fixes for YAML anchor/alias handling. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds $schema/$defs support and additional 3.1 fixes. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Bumps github.com/oasdiff/kin-openapi to v0.137.0-openapi31.beta.8, which adds OAS 3.1 support for sibling keywords alongside $ref (e.g. deprecated:true). Removes the t.Skip from TestOAS31_RefSiblingKeyword now that kin-openapi correctly honours the sibling and the test passes. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The rebase switched from getkin/kin-openapi to oasdiff/kin-openapi. The prefix-matched restore-keys were restoring stale caches from main-branch runs that contained getkin modules, causing build failures for oasdiff/kin-openapi-only types like ExclusiveBound. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The rebase onto main brought in #842's migration to getkin/kin-openapi, but the 3.1 branch requires oasdiff/kin-openapi for ExclusiveBound and other 3.1-specific types. This replaces all remaining getkin imports and sets IsExternalRefsAllowed in the external ref test. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Adds 37 new tests and 16 test data files covering the uncovered paths in 3.1-specific checkers: body removed, property added, and property removed for dependent_schemas, pattern_properties, prefix_items, property_names, if/then/else, content, and min_decreased. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
… and utils Adds 20 tests covering: exclusiveMin decreased / exclusiveMax increased paths, 3.1-style type array nullable detection, property-level dependentRequired changes, all interfaceToString branches, and 3.1 sub-schema traversal (if/then/else/contains/prefixItems/propertyNames/ unevaluatedItems/unevaluatedProperties/contentSchema/patternProperties/ dependentSchemas). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Depend directly on getkin/kin-openapi (PR #1125 branch) instead of the oasdiff fork. This eliminates the fork sync step and resolves the transitive module path mismatch that broke flatten/allof tests. Also adds BoolSchema support for unevaluatedProperties/unevaluatedItems diff (fixes #844). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
fbd7ec6 to
96703dd
Compare
Replace pseudo-version with proper tag for the kin-openapi fork. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Remove feature branches from Docker workflow triggers - Only apply 'stable' tag for non-prerelease version tags Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
68474fa to
fcedde1
Compare
Picks up yaml3 v0.0.10 which tracks mapping-valued fields in origin, fixing missing source locations for dependentRequired, patternProperties, and dependentSchemas in changelog output. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
fcedde1 to
790192d
Compare
* refactor: replace ValueDiff with structured DependentRequiredDiff type DependentRequired was diffed as an opaque ValueDiff, producing Go-native formatting like map[name:[age]] in changelog messages. Replace with a structured DependentRequiredDiff that tracks per-key Added/Deleted/Modified entries, and update checkers to emit per-key human-readable messages. Before: "dependentRequired changed from map[name:[age]] to map[name:[email]]" After: "dependentRequired for name was updated: email added, age removed" Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: point source locations to specific schema keys, not parent field dependentSchemas and patternProperties checkers reported the source location of the parent field key (e.g., line of `dependentSchemas:`) instead of the specific schema key (e.g., line of `credit_card:`). Add SchemaMapItemSource helper that looks up the individual schema's own Origin, and use it for all added/deleted items in both checkers. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * style: fix alignment after go fmt Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * chore: add make lint step to commit skill Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Translate 302 previously untranslated messages per locale covering dependentRequired, exclusive-min/max, prefix-items, if/then/else, min/max-contains, contains, property-names, unevaluated, dependent-schema, pattern-property, content-encoding/media-type, and contentSchema. Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
For api-tag-added and api-tag-removed, use NewSourceFromSequenceItem to report the exact line of the added/deleted tag value instead of the `tags:` field key. Also set only baseSource for deletions and only revisionSource for additions. Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
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
Changes
Document Level
Info Object
Info.Summaryfield (new in OpenAPI 3.1)License Object
Schema Object (JSON Schema 2020-12)
ConstDiffExamplesDiffPrefixItemsDiffContainsDiffMinContainsDiffMaxContainsDiffPatternPropertiesDiffDependentSchemasDiffPropertyNamesDiffUnevaluatedItemsAllowedDifftrue/false)UnevaluatedItemsDiffUnevaluatedPropertiesAllowedDifftrue/false)UnevaluatedPropertiesDiffIfDiffifsub-schemaThenDiffthensub-schemaElseDiffelsesub-schemaDependentRequiredDiffSchemaIDDiff$idkeywordAnchorDiff$anchorkeywordDynamicRefDiff$dynamicRefkeywordDynamicAnchorDiff$dynamicAnchorkeywordContentMediaTypeDiffContentEncodingDiffContentSchemaDiffDefsDiff$defsschema definitionsSchemaDialectDiff$schemadialect keywordCommentDiff$commentkeywordDependency change
Switched from the
oasdiff/kin-openapifork togetkin/kin-openapiupstream (PR getkin/kin-openapi#1125). A temporaryreplacedirective points to the PR branch commit; it will be removed once the PR merges and a release is cut.Test plan
go build ./...passesgo test ./...passes (all 14 packages)unevaluatedProperties: falseboolean form loads and diffs correctly ([3.1] Failed to unmarshal unevaluatedProperties: false (boolean form) #844)🤖 Generated with Claude Code