Make the websocket Message easier to work with #903
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.
Currently the
Messagetype is a bit hard to work with as can be seen here: https://github.com/communityvi/communityvi/blob/26bfbe16c8c4dc46545edeebf96d2b3aed8887ab/communityvi-server/src/utils/websocket_message_conversion.rs#L4-L33While looking at the code I also happened to notice the comment about
non-exhaustiveenum:warp/src/filters/ws.rs
Lines 267 to 274 in 9e74ff9
It would of course be best for usability/interoperability if warp used
tungstenite::protocol::Messagedirectly. I assume the opaqueMessagetype was introduced to allow for changes in the underlying implementation, without breaking warp's API?This pull request contains 2 commits:
Messageinto anon-exhaustiveenum without breaking the existing APIFromfortungstenite::protocol::Messagein both directions. This doesn't break the API, but it exposes the respective version of thetungstenite::protocol::Message, making any future update of thetungstenitedependency a potentially breaking change. If that is undesired, I can remove this second commit.