Skip to content

Conversation

@bidetofevil
Copy link
Contributor

Add some documentation about the project's policy of being Kotlin First

@bidetofevil bidetofevil requested a review from a team as a code owner November 18, 2025 21:44
@codecov
Copy link

codecov bot commented Nov 18, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 63.10%. Comparing base (3f632c4) to head (35e7f2f).
⚠️ Report is 9 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1400      +/-   ##
==========================================
- Coverage   63.16%   63.10%   -0.07%     
==========================================
  Files         158      158              
  Lines        3125     3128       +3     
  Branches      324      324              
==========================================
  Hits         1974     1974              
- Misses       1056     1059       +3     
  Partials       95       95              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.


Despite this policy, the Agent API should still be usable from Java, but they will not be optimized for it. For instance, a method that uses default arguments in Kotlin will require Java users to pass them in explicitly if no reasonable overloads can be provided.

As the API evolves, we will endeavor to preserve Java compile and runtime compatibility as much as possible. But we will only consider a change "breaking" if it affects the Kotlin use-case. As such, we advise that all calls to the Agent API are made from Kotlin if possible to prevent syntactic changes from breaking your app's build.
Copy link
Contributor

Choose a reason for hiding this comment

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

So I'd like to see this changed so that we explain that we do NOT make any efforts to preserve Java compatibility, and the Java use case is "unsupported" -- which means that issues should not be filed and we will not accept PRs to address Java language compatibility issues at the API or configuration layers.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Even stronger stance. OK! I take @LikeTheSalad's thumbs up on his agreement.

Copy link
Contributor

@breedx-splk breedx-splk left a comment

Choose a reason for hiding this comment

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

Thanks @bidetofevil, this helps! I had a few small comments.

Also, can you please add hard line breaks in the markdown? It makes it easier to review and add suggestions without having to suggest the whole darn paragraph. 🙏🏻 We should have a markdown linter one day that helps with this (other projects have it), but alas we do not yet.

Copy link
Contributor

@LikeTheSalad LikeTheSalad left a comment

Choose a reason for hiding this comment

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

Thank you! 🙏

Co-authored-by: jason plumb <[email protected]>
@bidetofevil
Copy link
Contributor Author

Thanks @bidetofevil, this helps! I had a few small comments.

Also, can you please add hard line breaks in the markdown? It makes it easier to review and add suggestions without having to suggest the whole darn paragraph. 🙏🏻 We should have a markdown linter one day that helps with this (other projects have it), but alas we do not yet.

I was hoping spotless would do this for me. Alas....

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

Successfully merging this pull request may close these issues.

3 participants