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

Why aren't we using gRPC? #670

Closed
qdot opened this issue Nov 16, 2024 · 2 comments
Closed

Why aren't we using gRPC? #670

qdot opened this issue Nov 16, 2024 · 2 comments
Assignees
Labels
Features New things to add to the project question

Comments

@qdot
Copy link
Member

qdot commented Nov 16, 2024

Way back when Buttplug started, flying json over websockets seemed like the best idea 'cause gRPC didn't seem to support the streaming we needed. It does now. There's some issues with flying the connection from the web (maybe doing gRPC over websocket?) but otherwise... might be worth trying in Buttplug v5? Would save everyone the issues with our json schema shit.

@qdot qdot added the Features New things to add to the project label Nov 16, 2024
@qdot qdot self-assigned this Nov 16, 2024
@qdot qdot added the question label Nov 16, 2024
@qdot qdot changed the title Why aren't we just using gRPC? Why aren't we using gRPC? Nov 16, 2024
@blackspherefollower
Copy link
Collaborator

The biggest reason that jumps out at me for keeping with JSON over gRPC is language support. Sure gRPC is available in most of the common general purpose languages (although I really don't recommend trying to put together the build chain to get it working in C++) but a LOT of Buttplug client usage ends up in game mods, some having to be written in the game's specific scripting language or are limited to the environments native capabilities (as in, you're not allowed to load external libraries). JSON and WebSocket support are typically far more common in those environments than gRPC or the ability to load in external libraries.

@qdot
Copy link
Member Author

qdot commented Mar 17, 2025

Yeah gRPC still isn't great for us. Closing.

@qdot qdot closed this as completed Mar 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Features New things to add to the project question
Projects
None yet
Development

No branches or pull requests

2 participants