-
-
Notifications
You must be signed in to change notification settings - Fork 240
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
spectral-rulesets 1.19.0 breaks path $ref behavior #2655
Comments
The spec explicitly says that the path item object supports Still, the OpenAPI rendering tools I've used (Redoc, GitLab) handle this setup, and Spectral previously allowed it. It caught me off guard that our OpenAPI doc suddenly failed to lint. |
Running into this issue as well. I think it is fair that $refs are resolved when determining if the contents of a schema are valid. It makes using reusable servers, externalDocs, and other parts of OAS definitions standard and I don't want to disable that rule (as it is usually helpful :) ) I eventually bundle the OAS document, resolving these, but spectral is the initial linting tool to make sure we can bundle it all up. |
8df2c36#diff-a4b02cdf70d6d4ff86a25b14f73e37f38cb47807de5ed4018c5384ed74d5a14fR682 If this was not set to "resolved": false, I believe the issue would have been avoided |
We're also experiencing this issue since the update to Considering this simplified example: # base openapi.yaml
openapi: 3.1.0
info:
title: Example API
version: 1.0.0
description: Example API description
paths:
/greetings:
$ref: greetings.yaml
tags:
- name: User
description: Info about users
servers:
- url: https://example-url.com
description: Example server # greetings.yaml
get:
description: Get a greeting
operationId: getGreeting
responses:
"200":
description: OK
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: Hello there! The error we're seeing is:
This issue is causing significant disruption for our development team and CI pipelines. We cannot pin the spectral-rulesets version due to the way it's installed, and we rely heavily on the Is there a recommended workaround or a plan to address this in an upcoming release? |
This is broken for us as well, we use same structure as mentioned by @pedrosmr |
Confirm pedrosmr issue, absolutely the same case. |
Describe the bug
Using a
$ref
keyword under a path http verb started producing an error in version 1.19.0 of the spectral-rulesets package:This behavior is not present in spectral-rulesets 1.18.1 and earlier.
To Reproduce
Expected behavior
Using version 1.18.1 of the spectral-rulesets package produces the expected behavior:
Environment (remove any that are not applicable):
Additional context
If I had to hazard a guess, I suspect this change to be the culprit: #2574
The text was updated successfully, but these errors were encountered: