Skip to content

Bump Kotlin to 2.4.0#927

Merged
skydoves merged 1 commit into
mainfrom
kotlin/2.4.0
Jun 17, 2026
Merged

Bump Kotlin to 2.4.0#927
skydoves merged 1 commit into
mainfrom
kotlin/2.4.0

Conversation

@skydoves

@skydoves skydoves commented Jun 17, 2026

Copy link
Copy Markdown
Owner

Bump Kotlin to 2.4.0.

Summary by CodeRabbit

Release Notes

  • Chores
    • Updated Android compilation SDK to version 37
    • Updated Kotlin compiler to version 2.4.0
    • Updated Kotlin Symbol Processing plugin to version 2.3.9 for improved code generation performance

@skydoves skydoves self-assigned this Jun 17, 2026
@skydoves skydoves merged commit d0ea976 into main Jun 17, 2026
3 checks passed
@skydoves skydoves deleted the kotlin/2.4.0 branch June 17, 2026 22:59
@coderabbitai

coderabbitai Bot commented Jun 17, 2026

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: dcdd81a7-74be-49f9-bad2-168809e0adfa

📥 Commits

Reviewing files that changed from the base of the PR and between eed632a and 6bceadc.

📒 Files selected for processing (21)
  • buildSrc/src/main/kotlin/com/github/skydoves/landscapist/Configuration.kt
  • coil/api/coil.api
  • coil/stability/coil-debug.stability
  • coil/stability/coil-release.stability
  • coil3/api/android/coil3.api
  • coil3/api/desktop/coil3.api
  • fresco-websupport/stability/fresco-websupport-debug.stability
  • fresco-websupport/stability/fresco-websupport-release.stability
  • fresco/api/fresco.api
  • fresco/stability/fresco-debug.stability
  • fresco/stability/fresco-release.stability
  • glide/api/glide.api
  • glide/stability/glide-debug.stability
  • glide/stability/glide-release.stability
  • gradle/libs.versions.toml
  • landscapist-image-gallery/api/android/landscapist-image-gallery.api
  • landscapist-image-gallery/api/desktop/landscapist-image-gallery.api
  • landscapist-image/api/android/landscapist-image.api
  • landscapist-image/api/desktop/landscapist-image.api
  • landscapist-transformation/stability/landscapist-transformation-debug.stability
  • landscapist-transformation/stability/landscapist-transformation-release.stability

Walkthrough

Bumps Kotlin from 2.3.21 to 2.4.0, KSP from 2.3.6 to 2.3.9, and compileSdk from 36 to 37. All other file changes are auto-generated consequences: binary API dumps across every module have lambda accessor method suffixes renamed to include LandscapistDemo, and Compose Stability Analyzer outputs reclassify several parameters from RUNTIME/UNSTABLE to UNKNOWN.

Changes

Kotlin 2.4.0 + compileSdk 37 toolchain upgrade

Layer / File(s) Summary
Kotlin 2.4.0, KSP 2.3.9, compileSdk 37 version bumps
gradle/libs.versions.toml, buildSrc/src/main/kotlin/com/github/skydoves/landscapist/Configuration.kt
Kotlin bumped from 2.3.21 → 2.4.0, KSP from 2.3.6 → 2.3.9, and compileSdk from 36 → 37.
Generated binary API dumps: LandscapistDemo suffix rename
coil/api/coil.api, coil3/api/android/coil3.api, coil3/api/desktop/coil3.api, fresco/api/fresco.api, glide/api/glide.api, landscapist-image/api/*/landscapist-image.api, landscapist-image-gallery/api/*/landscapist-image-gallery.api
All ComposableSingletons lambda accessor method JVM names across every module gained a LandscapistDemo_ prefix in their suffix (e.g., $coil_release$LandscapistDemo_coil_release).
Generated Compose Stability dumps: RUNTIME/UNSTABLE → UNKNOWN
coil/stability/*, fresco/stability/*, fresco-websupport/stability/*, glide/stability/*, landscapist-transformation/stability/*
Parameters such as previewPlaceholder, key, ref, context, imageLoader, imageModel, imageBitmap, and painter are reclassified from RUNTIME or UNSTABLE to UNKNOWN in both debug and release stability dumps.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

  • skydoves/landscapist#914: Also modifies gradle/libs.versions.toml to bump the Kotlin version, directly related to the same version catalog file changed here.
  • skydoves/landscapist#848: Bumps the Kotlin toolchain version in gradle/libs.versions.toml, the same file and same pattern as this PR.
  • skydoves/landscapist#767: Introduced the Compose Stability Analyzer integration that produces the *.stability dump files updated here.

Poem

🐰 Hop, hop, the SDK grew,
From thirty-six to thirty-seven, brand new!
Kotlin leapt to two-point-four,
The lambdas gained a LandscapistDemo before.
Stability now reads UNKNOWN — how mysterious the view,
A rabbit rebuilt the world, and off to lunch it flew! 🥕

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch kotlin/2.4.0

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

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

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.

1 participant