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

Migrate to Kotlin-specific proto generation [Blocked: #2747] #3933

Open
BenHenning opened this issue Oct 15, 2021 · 2 comments
Open

Migrate to Kotlin-specific proto generation [Blocked: #2747] #3933

BenHenning opened this issue Oct 15, 2021 · 2 comments
Labels
enhancement End user-perceivable enhancements. Impact: Medium Moderate perceived user impact (non-blocking bugs and general improvements). Issue: Needs Break-down Indicates that an issue is too large and should be broken into smaller chunks. Issue: Needs Clarification Indicates that an issue needs more detail in order to be able to be acted upon. Work: High It's not clear what the solution is. Z-ibt Temporary label for Ben to keep track of issues he's triaged.

Comments

@BenHenning
Copy link
Member

Protobuf now supports outputting Kotlin-specific proto classes which have a generally nicer, lighterweight, and more idiomatic syntax for Kotlin uses than their Java counterparts.

grpc/grpc-kotlin#290 demonstrates integrating with the new libraries, and https://developers.google.com/protocol-buffers/docs/kotlintutorial has details on the new syntax (which seems similar to our newer apply-based syntax we've been adopting, but I think offers some additional improvements).

I recommend blocking this on #2747 since it'll be easier to keep with current proto rules that are carefully configured in both build environments until we have just one environment to update.

@BenHenning
Copy link
Member Author

BenHenning commented Nov 2, 2021

FWIW #2747 might not block after #2173 (or one of its eventual prerequisite PRs) is merged since I'm looking to remove the .proto genrules entirely which brings our proto handling in Bazel very close to being in-line with Gradle.

That being said, this is a low-priority effort considering that we have a lot of important work items in-flight at the moment.

@Broppia Broppia added issue_type_infrastructure Impact: Medium Moderate perceived user impact (non-blocking bugs and general improvements). labels Jun 13, 2022
@BenHenning BenHenning added Issue: Needs Clarification Indicates that an issue needs more detail in order to be able to be acted upon. Issue: Needs Break-down Indicates that an issue is too large and should be broken into smaller chunks. Z-ibt Temporary label for Ben to keep track of issues he's triaged. issue_user_developer and removed issue_type_bug labels Sep 15, 2022
@BenHenning
Copy link
Member Author

NB: Keeping the impact as high since the current apply-based approach that we use can actually result in incorrect code at runtime (that's actually caused more more than one investigation headache).

@seanlip seanlip added enhancement End user-perceivable enhancements. and removed issue_type_infrastructure labels Mar 28, 2023
@MohitGupta121 MohitGupta121 added the Work: High It's not clear what the solution is. label Jun 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement End user-perceivable enhancements. Impact: Medium Moderate perceived user impact (non-blocking bugs and general improvements). Issue: Needs Break-down Indicates that an issue is too large and should be broken into smaller chunks. Issue: Needs Clarification Indicates that an issue needs more detail in order to be able to be acted upon. Work: High It's not clear what the solution is. Z-ibt Temporary label for Ben to keep track of issues he's triaged.
Development

No branches or pull requests

4 participants