Closed XaaXaaX closed 2 months ago
Latest commit: 321b5eac3a79c1093017317bd9d500d66e047d96
Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.
Click here to learn what changesets are, and how to add one.
Click here if you're a maintainer who wants to add a changeset to this PR
Motivation
When integrating multiple specs some services are event producers some event consumers , some send commands some receive commands.
Given the above explanation, in reality, a command contract is owned by the receiving service but sent by the upstream service, in the other side an event contract is owned by the producer service but received by the downstream service.
When integrating multiple specs, if the generator finds a received event already created by the event owner spec, it will overwrite it. If that event version is already versioned (not latest ) by owner service, the SDK throws an error.
The variety of situations makes it hard to find a convention to automate only based on asyncapi spec.
The PR introduces a declarative way to skip external message creation or modifications using asyncapi extensions
x-eventcatalog-visibility
.