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

AsyncAPI spec v3 support in Bundler #133

Closed
1 task
Tracked by #294 ...
jonaslagoni opened this issue Jun 5, 2023 · 10 comments · Fixed by #140
Closed
1 task
Tracked by #294 ...

AsyncAPI spec v3 support in Bundler #133

jonaslagoni opened this issue Jun 5, 2023 · 10 comments · Fixed by #140
Labels
enhancement New feature or request released

Comments

@jonaslagoni
Copy link
Member

Reason/Context

This Issue is used to track changes needed to support AsyncAPI v3. As a code owner, please edit this list of TODO tasks in order to properly track the progress 🙂 Once this issue is closed it means that v3 is now fully supported in this library.

Remaining tasks:

  • Update to support v3 structures for bundling
@jonaslagoni
Copy link
Member Author

cc codeowners @Souvikns @derberg

Would be really cool to have this library work out the gate when we release v3, are any of you interested in scheduling a public call specifically to discuss how to enable this?

If you have any questions about how it can be achieved or v3-specific stuff I can help answer those in the meeting to enable you to progress with this 🙂

Let me know if it has any interest.

@Souvikns
Copy link
Member

Souvikns commented Sep 4, 2023

Would be really cool to have this library work out the gate when we release v3, are any of you interested in scheduling a public call specifically to discuss how to enable this?

Sure @jonaslagoni let me read up on spec3 and see what needs to be changed in bundler to support it, Maybe we can discuss about this at the next spec 3.0 meeting

@jonaslagoni
Copy link
Member Author

For sure, feel free to bring it up 👍

@Souvikns
Copy link
Member

Souvikns commented Sep 5, 2023

I was trying to figure out what needs to be changed in the bundler for it to support spec v3.

Currently

  • bundler parses the channels and looks for $ref's in the message object
  • resolves the $ref to either the message or to the component object and updates the $ref accordingly.

With V3

The only difference in our case is that now we can have multiple message objects so the only thing that changes is how we look for the message components. operations can have messages as well so we need to parse that as well, but we only resolve it if the $ref is outside the current spec i.e. we are referencing a message from a different file.

cc @jonaslagoni

@jonaslagoni
Copy link
Member Author

Not sure how much this change affect your logic: https://v3.asyncapi.com/blog/release-notes-3.0.0#unified-referencing-behaviors

@Souvikns
Copy link
Member

Souvikns commented Sep 5, 2023

Don't think this affects bundler currently, as it only looks for message references and nothing else.

path: '$.channels.*.*.message',

@Souvikns
Copy link
Member

Souvikns commented Sep 6, 2023

@jonaslagoni working on a PR, will create a separate logic for spec 3.0 and add a check for the spec inputted in bundler to either use the current logic or the new one.

@asyncapi-bot
Copy link
Contributor

🎉 This issue has been resolved in version 0.4.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@mfroberg
Copy link

I am trying to use the bundle command of the Async API CLI tool v1.4.11. It gives be the error "One of the files you tried to bundle is AsyncAPI v3 format, the bundle command does not support it yet" and refers to this issue #133.

Since this issue is closed, I am confused. Maybe I am in the wrong place looking for v3 support for the bundle command? Or missing something obvious? :)

@Souvikns
Copy link
Member

Souvikns commented Feb 2, 2024

In case you got redirected here looking for v3 support for the bundle CLI command, please check the following issue: asyncapi/cli#1137

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request released
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants