Skip to content

build(deps): bump Kotlin to 2.3.21 with matching KSP and Hilt versions - #1887

Merged
gpunto merged 1 commit into
develop-v2from
chore/and-1701-kotlin-2.3
Oct 22, 2026
Merged

gpunto merged 1 commit into
develop-v2from
chore/and-1701-kotlin-2.3

Conversation

@gpunto

@gpunto gpunto commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

Goal

Closes AND-1701

Move develop-v2 to Kotlin 2.3 so the SDK can use kotlin.time.Instant (replacing ThreeTenABP is AND-1702).

Implementation

  • kotlin and kotlinTestJunit: 2.2.0 → 2.3.21.
  • ksp: 2.2.0-2.0.2 → 2.3.11. KSP versions are independent of Kotlin since 2.3.0. 2.3.12 requires AGP 8.12, and we are on 8.10.1.
  • hilt: 2.56.2 → 2.58. 2.56.2 can't read Kotlin 2.3 metadata, and 2.59 and later require AGP 9.
  • TraceRecordTest: explicit arrayOf<Any?>, because Kotlin 2.3 rejects a reified type parameter inferred as an intersection type.

Testing

  • ./gradlew assembleDebug apiCheck testDebugUnitTest passes, and the API dumps are unchanged.

Summary by CodeRabbit

  • Chores

    • Updated Kotlin, KSP, and Hilt tooling to newer versions for improved compatibility and maintenance.
  • Tests

    • Improved serialization test coverage for records containing nullable values.

@gpunto gpunto added pr:dependencies Dependency updates pr:internal Internal or infra-only changes labels Oct 21, 2026
@github-actions

github-actions Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

PR checklist ✅

All required conditions are satisfied:

  • Title length is OK (or ignored by label).
  • At least one pr: label exists.
  • Sections ### Goal, ### Implementation, and ### Testing are filled, or the PR is bot-authored.
  • An issue is linked (Linear ticket or GitHub issue), or the PR is bot-authored.

🎉 Great job! This PR is ready for review.

@github-actions

Copy link
Copy Markdown
Contributor

SDK Size Comparison 📏

SDK Before After Difference Status
stream-video-android-core 12.38 MB 12.66 MB 0.29 MB 🟡
stream-video-android-ui-xml 5.66 MB 5.72 MB 0.06 MB 🟢
stream-video-android-ui-compose 6.19 MB 3.16 MB -3.03 MB 🚀

@sonarqubecloud

Copy link
Copy Markdown

@gpunto gpunto removed the pr:internal Internal or infra-only changes label Oct 21, 2026
@gpunto gpunto changed the title Bump Kotlin to 2.3 build(deps): bump Kotlin to 2.3.21 with matching KSP and Hilt versions Oct 21, 2026
@gpunto
gpunto marked this pull request as ready for review October 21, 2026 14:09
@gpunto
gpunto requested a review from a team as a code owner October 21, 2026 14:09
@coderabbitai

coderabbitai Bot commented Oct 21, 2026

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 7d1aab5c-cdf2-4ca1-8c03-ab048da0bbba
📥 Commits

Reviewing files that changed from the base of the PR and between 88d73e1 and c3ed03c.

📒 Files selected for processing: 2
  • gradle/libs.versions.toml
  • stream-video-android-core/src/test/kotlin/io/getstream/video/android/core/trace/TraceRecordTest.kt

Included review availability: This review used your included allowance. Your plan provides up to 2 included reviews per hour; 1 remain after this review.

📝 Walkthrough

The version catalog updates Kotlin and Kotlin test JUnit to 2.3.21, KSP to 2.3.11, and Hilt to 2.58. Two serialization test assertions now use explicitly nullable expected arrays.

Suggested reviewers: aleksandar-apostolov

Priority: ⬇️ Low

Merge Risk: ⚪ Minimal · up to c3ed0

The dependency and serialization test updates are ready to merge with normal checks.

Pre-merge checks: Passed 4 · Failed 1

Failed Failed checks: 1 warning

Check name Status Explanation Resolution
Docstring Coverage Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 4 functions across 1 files. (1 skipped: 1 … Write docstrings for the functions missing them to satisfy the coverage threshold.
Passed Passed checks: 4 passed
Check name Status Explanation
Title check Passed The title clearly summarizes the primary change: the Kotlin upgrade with matching KSP and Hilt version updates.
Description check Passed The description includes the required Goal, Implementation, and Testing sections. It explains the version changes, compatibility constraints, test updates, linked issues, and validation results. The C…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Description check

Explanation

The description includes the required Goal, Implementation, and Testing sections. It explains the version changes, compatibility constraints, test updates, linked issues, and validation results. The Checklist section is omitted, but the description is otherwise complete.

Full details: Docstring Coverage

Explanation

Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 4 functions across 1 files. (1 skipped: 1 unsupported.)

Resolution

Write docstrings for the functions missing them to satisfy the coverage threshold.

✨ Finishing Touches: 💡 2
📝 Generate docstrings: 💡
  • Commit to this branch
  • Create a new PR
🛠️ Fix failing CI checks: 💡
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

A rabbit checks the version list,
Then nibbles through each test.
Nullable arrays hop into place,
While Kotlin takes a step.
The rabbit twitches both its ears,
And finds the changes dressed.

Comment @coderabbitai help to get the list of available commands.

@gpunto
gpunto enabled auto-merge October 21, 2026 14:54
@gpunto
gpunto merged commit 2a0bd27 into develop-v2 Oct 22, 2026
18 of 21 checks passed
@gpunto
gpunto deleted the chore/and-1701-kotlin-2.3 branch October 22, 2026 10:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr:dependencies Dependency updates

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants