Skip to content

Conversation

Jozott00
Copy link
Collaborator

Subsystem
gRPC Client Native

Problem Description
To implement the gRPC client on Kotlin/Native, we utilize the official gRPC C++ library internally. To achieve this, we need to create a C wrapper around the C++ library, which is subsequently utilized by the Kotlin side through CInterop.

Solution
This PR adds:

  • Project setup of the gRPC client native subproject (with Bazel C++ project for the wrapper)
  • First C wrapper of the C++ library
  • Initial Kotlin classes to abstract away memory management
  • Proof of concept integration of async (callback-based) gRPC calls into Kotlin Coroutines

@Jozott00 Jozott00 requested a review from Mr3zee July 15, 2025 16:49
@Mr3zee Mr3zee added the feature New feature or request label Jul 15, 2025
Copy link
Member

@Mr3zee Mr3zee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please apply Koltin linter rules on all files

@Jozott00 Jozott00 merged commit dfcb00f into grpc-native Jul 15, 2025
6 checks passed
@Jozott00 Jozott00 deleted the grpc-native-init branch July 15, 2025 17:42
Mr3zee pushed a commit that referenced this pull request Jul 28, 2025
* grpc-native: Add grpcpp-c C/C++ library to grpc/

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Add gradle configuration for cInterop and grpcpp_c library

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Add basic C Kotlin wrapper classes

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Update platforms.topic

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Resolve review requests

Signed-off-by: Johannes Zottele <[email protected]>

---------

Signed-off-by: Johannes Zottele <[email protected]>
Mr3zee pushed a commit that referenced this pull request Jul 30, 2025
* grpc-native: Add grpcpp-c C/C++ library to grpc/

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Add gradle configuration for cInterop and grpcpp_c library

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Add basic C Kotlin wrapper classes

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Update platforms.topic

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Resolve review requests

Signed-off-by: Johannes Zottele <[email protected]>

---------

Signed-off-by: Johannes Zottele <[email protected]>
Mr3zee pushed a commit that referenced this pull request Aug 1, 2025
* grpc-native: Add grpcpp-c C/C++ library to grpc/

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Add gradle configuration for cInterop and grpcpp_c library

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Add basic C Kotlin wrapper classes

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Update platforms.topic

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Resolve review requests

Signed-off-by: Johannes Zottele <[email protected]>

---------

Signed-off-by: Johannes Zottele <[email protected]>
Mr3zee pushed a commit that referenced this pull request Aug 4, 2025
* grpc-native: Add grpcpp-c C/C++ library to grpc/

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Add gradle configuration for cInterop and grpcpp_c library

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Add basic C Kotlin wrapper classes

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Update platforms.topic

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Resolve review requests

Signed-off-by: Johannes Zottele <[email protected]>

---------

Signed-off-by: Johannes Zottele <[email protected]>
Mr3zee pushed a commit that referenced this pull request Aug 8, 2025
* grpc-native: Add grpcpp-c C/C++ library to grpc/

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Add gradle configuration for cInterop and grpcpp_c library

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Add basic C Kotlin wrapper classes

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Update platforms.topic

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Resolve review requests

Signed-off-by: Johannes Zottele <[email protected]>

---------

Signed-off-by: Johannes Zottele <[email protected]>
Mr3zee pushed a commit that referenced this pull request Aug 21, 2025
* grpc-native: Add grpcpp-c C/C++ library to grpc/

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Add gradle configuration for cInterop and grpcpp_c library

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Add basic C Kotlin wrapper classes

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Update platforms.topic

Signed-off-by: Johannes Zottele <[email protected]>

* grpc-native: Resolve review requests

Signed-off-by: Johannes Zottele <[email protected]>

---------

Signed-off-by: Johannes Zottele <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants