Skip to content
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

should binding specs be tied to specific versions of the AsyncAPI spec? #590

Closed
GeraldLoeffler opened this issue Jul 27, 2021 · 16 comments
Closed
Labels
❔ Question A question about the spec or processes stale

Comments

@GeraldLoeffler
Copy link
Contributor

(Opened as requested in asyncapi/bindings#63 (comment).)

When implementing the Anypoint MQ binding spec (PR asyncapi/bindings#63) my instinct was to state the version of the AsyncAPI spec (initially 2.0.0, then 2.1.0) that this binding spec was written against/for. There is nothing specifically in the binding spec that requires that exact version of the AsyncAPI spec. But it did feel "right" to state clearly that the binding spec was written assuming the features of that version of the AsyncAPI spec.

Question: should binding specs state the version of the AsyncAPI spec they assume?

@GeraldLoeffler GeraldLoeffler added the ❔ Question A question about the spec or processes label Jul 27, 2021
@magicmatatjahu
Copy link
Member

magicmatatjahu commented Jul 28, 2021

I understand problem, but only use case which I see is situation when we will introduce in the next versions of spec drastic breaking changes for appropriate channels, servers and in other places where you can and want define binding. I don't see any other way.

When we talk about implementation of your idea, we can support in the binding definition next to the bindingVersion the asyncapiVersion (or specificationVersion) field with form to check that satisfied with spec semver, like here, so you will end with binding definition:

bindingVersion:  ...
asyncapiVersion: ">=2.0.0 <3.0.0",

Additionally I think that we should also support this field (if we decide to supporting it) in the custom extensions.

@github-actions
Copy link

This issue has been automatically marked as stale because it has not had recent activity 😴
It will be closed in 60 days if no further activity occurs. To unstale this issue, add a comment with detailed explanation.
Thank you for your contributions ❤️

@github-actions
Copy link

This issue has been automatically marked as stale because it has not had recent activity 😴

It will be closed in 120 days if no further activity occurs. To unstale this issue, add a comment with a detailed explanation.

There can be many reasons why some specific issue has no activity. The most probable cause is lack of time, not lack of interest. AsyncAPI Initiative is a Linux Foundation project not owned by a single for-profit company. It is a community-driven initiative ruled under open governance model.

Let us figure out together how to push this issue forward. Connect with us through one of many communication channels we established here.

Thank you for your patience ❤️

@github-actions github-actions bot added the stale label Jan 26, 2022
@magicmatatjahu
Copy link
Member

I think it's still relevant. We should discuss that problem also for extensions. cc @GeraldLoeffler @jonaslagoni (you're interesting in bindings/extensions topic so I ping you)

@GeraldLoeffler
Copy link
Contributor Author

i agree it's relevant @magicmatatjahu , but i personally don't have capacity to champion it

@magicmatatjahu
Copy link
Member

@GeraldLoeffler No problem, I make a triage to check all stale issues :)

@github-actions github-actions bot removed the stale label Jan 27, 2022
@jonaslagoni
Copy link
Member

Honestly, I think this will automatically be picked up for 3.0, as we will need to figure out how bindings still make sense and how they should be handled.

@jonaslagoni
Copy link
Member

As this issue was just bought up in the 3.0 spec meeting when we discussed asyncapi/bindings#113.

And as this issue just become something we have to think about for 3.0, I wanted to tag all of the binding codeowners for input. @rcoppen @lbroudoux @dalelane @damaru-inc @CameronRushton @KhudaDad414 @derberg @fmvilas

What do you folks think about bindings and the spec relation, how should we handle that?

@jonaslagoni
Copy link
Member

@GeraldLoeffler would you have any interest in championing this?

@fmvilas
Copy link
Member

fmvilas commented Mar 3, 2022

I think the binding spec should explicitly state the minimum and maximum version of the core spec it supports. Just like we do with Generator templates but not necessarily in a machine-readable way. I mean, can be just something that's in the Markdown file of the binding spec.

@magicmatatjahu
Copy link
Member

magicmatatjahu commented Mar 3, 2022

but not necessarily in a machine-readable way. I mean, can be just something that's in the Markdown file of the binding spec.

@fmvilas but we need to have information (on tolling side) against what definition we need to use to validate the given binding. May find that binding version 1.0.0 is compatible with <2.3.0 but no longer with 2.4.0 (as example) - similar to extensions, they should have also info about compatible versions of AsyncAPI.

@derberg
Copy link
Member

derberg commented Mar 17, 2022

as @fmvilas mentioned we need min/max like in generator, and like @magicmatatjahu wrote, we need it as part of schema, so tooling can check that out

@github-actions
Copy link

This issue has been automatically marked as stale because it has not had recent activity 😴

It will be closed in 120 days if no further activity occurs. To unstale this issue, add a comment with a detailed explanation.

There can be many reasons why some specific issue has no activity. The most probable cause is lack of time, not lack of interest. AsyncAPI Initiative is a Linux Foundation project not owned by a single for-profit company. It is a community-driven initiative ruled under open governance model.

Let us figure out together how to push this issue forward. Connect with us through one of many communication channels we established here.

Thank you for your patience ❤️

@github-actions github-actions bot added the stale label Jul 16, 2022
@fmvilas fmvilas removed the stale label Jul 18, 2022
@github-actions
Copy link

This issue has been automatically marked as stale because it has not had recent activity 😴

It will be closed in 120 days if no further activity occurs. To unstale this issue, add a comment with a detailed explanation.

There can be many reasons why some specific issue has no activity. The most probable cause is lack of time, not lack of interest. AsyncAPI Initiative is a Linux Foundation project not owned by a single for-profit company. It is a community-driven initiative ruled under open governance model.

Let us figure out together how to push this issue forward. Connect with us through one of many communication channels we established here.

Thank you for your patience ❤️

@github-actions github-actions bot added the stale label Nov 16, 2022
@jonaslagoni
Copy link
Member

Still relevant.

@github-actions github-actions bot removed the stale label May 8, 2023
@github-actions
Copy link

github-actions bot commented Sep 6, 2023

This issue has been automatically marked as stale because it has not had recent activity 😴

It will be closed in 120 days if no further activity occurs. To unstale this issue, add a comment with a detailed explanation.

There can be many reasons why some specific issue has no activity. The most probable cause is lack of time, not lack of interest. AsyncAPI Initiative is a Linux Foundation project not owned by a single for-profit company. It is a community-driven initiative ruled under open governance model.

Let us figure out together how to push this issue forward. Connect with us through one of many communication channels we established here.

Thank you for your patience ❤️

@github-actions github-actions bot added the stale label Sep 6, 2023
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Jan 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
❔ Question A question about the spec or processes stale
Projects
None yet
Development

No branches or pull requests

5 participants