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

Whence Grpc.Net.Client #7574

Closed
samskivert opened this issue Dec 1, 2021 · 4 comments
Closed

Whence Grpc.Net.Client #7574

samskivert opened this issue Dec 1, 2021 · 4 comments
Assignees

Comments

@samskivert
Copy link

Any plans to switch away from Grpc.Core to Grpc.Net.Client?

The future of gRPC on .NET is Grpc.Net.Client, or so I have heard from little birdies: https://grpc.io/blog/grpc-csharp-future/

We're trying to use Firebase on Apple Silicon Macs and I'm running into the pickle of the C gRPC libraries not supporting ASi, and the "recommended solution" (for cross-platform loving C# developers like ourselves, per the blog post above) being, stop using the C gRPC libraries. But we don't depend on Grpc.Core, Google.Cloud.Firestore does. So we're stuck. Of course we can run our entire project under x86 emulation for the time being, but ideally we can get back to living in CPU architecture blind utopia promised by C# and the CLR.

@jskeet jskeet self-assigned this Dec 2, 2021
@jskeet
Copy link
Collaborator

jskeet commented Dec 2, 2021

Yes, we're planning on doing this in 2022 Q1 (although it's possible it will slip to Q2). It's slightly more complicated than just moving from one library to another, as Grpc.Net.Client won't work on all our target platforms. It's also a breaking change, prompting a new major version, with all the planning and execution timing that involves.

See googleapis/gax-dotnet#508 and googleapis/gax-dotnet#510 for what GAX might look like in the future. It should simplify things significantly, and reduce the transitive dependency size for non-Framework applications too.

For the moment, you can change the GrpcAdapter that the Google.Cloud.Firestore library used - see #7560 for instructions on how to do that.

I'll close this issue now as it's already being planned etc.

@jskeet jskeet closed this as completed Dec 2, 2021
@samskivert
Copy link
Author

Thanks for the quick reply, the roadmap and the workaround! And in advance for the hard work of moving everything over to Grpc.Net.Client. Cheers!

@samskivert
Copy link
Author

Let me also apologize for what turns out to be a repeat question. I searched the issues for info on Grpc.Net.Client but now I realized that I only searched open issues, not closed. I should have broadened my search.

@jskeet
Copy link
Collaborator

jskeet commented Dec 2, 2021

@samskivert: Not a problem at all. It's very easily done, and I appreciate the effort in the first place :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants