Investigate AGP built-in Kotlin and remove android.builtInKotlin=false opt-out
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 48/100
- issue の種類
- リファクタリング
- 明瞭さ
- おおむね明確
- 活発さ
- 静か
- 技術スタック
- kotlin
- 領域
- build-system, mobile
調査の方向性
gradle.properties と buildSrc/src/main/java/Config.kt:5 から始め、org.jetbrains.kotlin.android を適用している約 15 個のモジュール(sentry-android と sentry-android-core を含む)を調査します。試行構成で android.builtInKotlin=false を削除し、互換性、Kotlin のバージョン管理、stdlib の挙動、マルチモジュールでの破損を記録します。制約と文書化された移行パスが明確になり、理想的には opt-out が削除されていれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Follow-up to the AGP 8.13.1 → 9.2.1 bump (getsentry/sentry-java#5777). AGP 9 bundles its own ("built-in") Kotlin. To land the bump without a large refactor, we added a temporary opt-out in gradle.properties:
# AGP 9+ migration opt-outs until we remove kotlin-android plugin and adopt built-in Kotlin.
android.builtInKotlin=false
Why this matters: android.builtInKotlin=false keeps us on the standalone org.jetbrains.kotlin.android plugin (Kotlin 2.3.21). If Google removes this opt-out in a future AGP release, we would be forced onto built-in Kotlin — and given our current project structure, that may block us from upgrading at all.
What to investigate:
- Whether AGP's built-in Kotlin version can be controlled/pinned, and whether it is compatible with our multi-module setup.
- What breaks if we remove
android.builtInKotlin=falsetoday.
What's involved:
org.jetbrains.kotlin.androidis applied in ~15 modules (sentry-android, sentry-android-core, sentry-android-replay, sentry-compose, etc.). Adopting built-in Kotlin means removing that plugin from all of them.- Interacts with
kotlin.stdlib.default.dependency=false(stdlib management) and the pinnedkotlinStdLibVersionAndroid = "1.9.24"(buildSrc/src/main/java/Config.kt:5).
Done when: we understand the constraints, have a documented path forward, and (ideally) can remove android.builtInKotlin=false.
Should be picked up after the AGP bump PRs merge.
- 主要言語
- Kotlin
- スター
- 1.4k
- フォーク
- 478
- 平均マージ
- 3日 2時間
- マージ済み PR(30日)
- 70
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
getsentry/sentry-java のほかの issue
-
Bug Java Platform: Java
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
getsentry/sentry-java#6138 · コメント 1 件 ·
-
Feature Java Platform: Java Spans
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
getsentry/sentry-java#5984 · コメント 1 件 ·
-
Android Task Traces
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
getsentry/sentry-java#5376 · コメント 1 件 ·
-
Android Docs Errors
難易度 2/5 1〜3時間 初心者へのやさしさ 64/100
getsentry/sentry-java#5375 · コメント 1 件 ·
-
Android good first issue Task User Feedbacks
難易度 1/5 1〜3時間 初心者へのやさしさ 68/100
getsentry/sentry-java#5354 · コメント 1 件 ·
getsentry/sentry-java の issue をすべて見る
似ている issue
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
-
index-request triaged
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
-
enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
Anthonyy232/Paperize#614 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
bitcoindevkit/bdk-ffi#1125 ·
-
🌑 nextgen
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
CCBlueX/LiquidBounce#9214 · コメント 1 件 ·