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

[FEATURE] Introduce versioning on the RPC topics #1124

Closed
brooksmtownsend opened this issue Nov 30, 2023 · 3 comments
Closed

[FEATURE] Introduce versioning on the RPC topics #1124

brooksmtownsend opened this issue Nov 30, 2023 · 3 comments
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@brooksmtownsend
Copy link
Member

Is your feature request related to a problem? Please describe.
Similar to the versioned topic proposals in #1108, we should add support for a version specifier in the wasmCloud RPC topics.

Describe the solution you'd like
There are provider and actor RPC topics, and I propose that both of them should include support for a version specifier right after wasmbus.rpc.

For example, instead of an actor component subscribing on wasmbus.rpc.{lattice}.{pubkey}, it should be wasmbus.rpc.{version}.{lattice}.{pubkey}. Just like the control interface topics, the version if not specified is assumed as v1. For simplicity we should go ahead and listen on v1 topics from the implementation of this feature, but support the unversioned topic for backwards compatibility.

Describe alternatives you've considered
We could avoid versioning our RPC topics, as we don't have any planned breaking changes to the protocol right now. However, putting the version here allows us the flexibility in the future (in a post 1.0 world) to add support for a different type of encoding than msgpack, or to add in additional required fields, without completely breaking the RPC protocol.

Additionally we could avoid versioning the topic until we need to, though I feel that is just kicking the can further down the road.

@brooksmtownsend brooksmtownsend added enhancement New feature or request help wanted Extra attention is needed labels Nov 30, 2023
@brooksmtownsend brooksmtownsend added this to the wasmCloud 1.0.0 milestone Nov 30, 2023
@rvolosatovs
Copy link
Member

Just a note here that this is addressed in the upcoming RPC RFC

@brooksmtownsend
Copy link
Member Author

For clarity, #1128

@brooksmtownsend
Copy link
Member Author

This is proposed in #1389 and we'll track this effort there for simplicity 🙂

@brooksmtownsend brooksmtownsend closed this as not planned Won't fix, can't repro, duplicate, stale Jan 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
Status: Completed
Development

No branches or pull requests

2 participants