Skip to content

Conversation

@ePaul
Copy link
Member

@ePaul ePaul commented Apr 29, 2025

Implements #831.

Also some minor changes to clarify things elsewhere.

@ePaul ePaul added guideline-change zally-change major Major feature changes or updates, e.g. feature rollout to a new country, new API calls. labels Apr 29, 2025
@zalando-compr-opensource
Copy link

invalid team ID

The team ID in your .zappr.yaml file does not appear to be valid. Please, fix
this before team ID checks will be added back into ComPR's specification check.

You can follow this guideline for help.

2 similar comments
@zalando-compr-opensource
Copy link

invalid team ID

The team ID in your .zappr.yaml file does not appear to be valid. Please, fix
this before team ID checks will be added back into ComPR's specification check.

You can follow this guideline for help.

@zalando-compr-opensource
Copy link

invalid team ID

The team ID in your .zappr.yaml file does not appear to be valid. Please, fix
this before team ID checks will be added back into ComPR's specification check.

You can follow this guideline for help.

Copy link
Member

@tfrauenstein tfrauenstein left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks a lot for the PR -- LGTM!
I provided some (mostly editorial) change proposals.

There are other occurrences of x-extensible-enum in the following rules that need to be updated:

The Event Type specification: rule #197 also uses x-extensible-enum. However, the rule anyway needs to be cleaned-up -- see Issue: Optimize the Event Guidelines for its usage with Nakadi. So I propose to handle this via a separate PR for the Event Guideline Clean-Up issue.

Additionally, I propose to add a log entry to the Change History.

@tfrauenstein
Copy link
Member

tfrauenstein commented May 7, 2025

@ePaul I just discovered that 'examples' in OpenAPI 3.0 is not yet consistent with JSON Schema -- this was only fixed with OpenAPI 3.1! In OpenAPI 3.0 examples is a map of named examples, and not simply an array of examples like in JSON Schema. In OpenAPI 3.1 examples in data object schema definitions is done like in JSON Schema (as array), but OpenAPI 3.1 still supports example and examples outside the schema — specifically under the media type object (like application/json) in the 'old way' as map (see working-with-examples ). If we want to stick to OpenAPI 3.0 as status-quo, we need to change the examples. I also created an Issue: OpenAPI 3.1 Upgrade for discussion in the guild.

@ePaul ePaul marked this pull request as draft May 27, 2025 12:52
@ePaul
Copy link
Member Author

ePaul commented May 27, 2025

As OpenAPI 3.0 doesn't have examples in the schema object, we can't really use that before we generally recommend 3.1 (or later). Putting on hold, waiting for #839.

@zalando-compr-opensource
Copy link

invalid team ID

The team ID in your .zappr.yaml file (in the default branch) does not appear
to be valid. Please, fix this before team ID checks will be added back into
ComPR's specification check.

(If this PR is already fixing this, ignore the warning. But preferably fix it
in a PR separate from other changes, as the merge build from this PR will
not give a compliant image.)

You can follow this guideline for help.

@tfrauenstein
Copy link
Member

tfrauenstein commented Oct 8, 2025

@ePaul Since #839 has been delivered and we upgraded to OpenAPI 3.1, can you please finish this PR. We should also add a hint that x-extensible-enum is continued to be recommended for OAS versions older than OAS 3.1. Thank you!

@ePaul ePaul force-pushed the deprecate-x-extensible-enum branch from c1e8eb1 to c02f13c Compare October 29, 2025 13:59
@ePaul ePaul marked this pull request as ready for review October 29, 2025 14:25
@ePaul
Copy link
Member Author

ePaul commented Oct 29, 2025

I've applied some of the editorial suggestions and made a few more of my own, also indicating the relation to OpenAPI 3.1.

Previously (until May 2025), this guideline recommended our own proprietary
{x-extensible-enum} JSON schema extension here, with a similar semantic:

> This is the *complete* list of values *currently* possible, but consumers must be
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I would remove it to avoid redundancies in the same rule context. I also would replace 'similar semantic' by 'same semantics'.

ePaul and others added 4 commits November 12, 2025 17:23
Co-authored-by: Paŭlo Ebermann <[email protected]>
@tfrauenstein
Copy link
Member

👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

guideline-change major Major feature changes or updates, e.g. feature rollout to a new country, new API calls. zally-change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants