Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
related to #657
This PR adds
Send
andSync
to the traits used in the client. Some changes in miden-base were also needed.This makes it so that the client can be shared between tokio tasks like the issue requested but the issue is not entirely solved. Mostly because the store and rpc traits are
#[async_trait(?Send)]
meaning that the futures they create are not send. This means that the client can be shared, but any method called will generate futures that won't be send. This doesn't seem like an issue but tokio need that all data that is held across .await calls is Send.If we remove the
?Send
from the async traits, the rust client works but not the web store and tonic client.