Compose Compiler
最新の更新 | 安定版リリース | リリース候補版 | ベータ版リリース | アルファ版リリース |
---|---|---|---|---|
2024 年 8 月 7 日 | 1.5.15 | - | - | - |
構造
Compose は、androidx
内の 7 つの Maven Group ID を組み合わせたものです。各グループにはそれぞれの目的に応じて Compose の機能のサブセットが含まれており、それぞれに固有のリリースノートがあります。
次の表に、各グループの説明と、それぞれのリリースノートのリンクを示します。
グループ | 説明 |
---|---|
compose.animation | Jetpack Compose アプリ内でアニメーションを作成して、ユーザー エクスペリエンスを高めます。 |
compose.compiler | @Composable 関数を変換し、Kotlin コンパイラ プラグインで最適化を有効にします。 |
compose.foundation | すぐに使用できるビルディング ブロックで Jetpack Compose アプリを作成し、基盤を拡張して独自のデザイン システム要素を構築します。 |
compose.material | すぐに使用できるマテリアル デザイン コンポーネントで Jetpack Compose UI を構築します。Compose の上位レベルのエントリ ポイントであり、www.material.io のガイドラインと適合するコンポーネントを提供するように設計されています。 |
compose.material3 | マテリアル デザインの進化版であるマテリアル デザイン 3 コンポーネントで Jetpack Compose UI を構築します。マテリアル 3 には、最新のテーマ設定とコンポーネント、ダイナミック カラーなどの Material You のパーソナライズ機能が含まれており、Android 12 の新しい視覚的スタイルとシステム UI と調和するように設計されています。 |
compose.runtime | Compose のプログラミング モデルと状態管理の基本ビルディング ブロックと、Compose コンパイラ プラグインがターゲットとするコアランタイム。 |
compose.ui | レイアウト、描画、入力などのデバイス操作に必要な Compose UI の基本コンポーネント。 |
依存関係の宣言
Compose への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。
アプリまたはモジュールの build.gradle
ファイルに、必要なアーティファクトの依存関係を追加します。
Groovy
android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "19" } }
Kotlin
android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "19" } }
依存関係について詳しくは、ビルド依存関係の追加をご覧ください。
フィードバック
お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。
詳細については、Issue Tracker のドキュメントをご覧ください。
バージョン 1.5
バージョン 1.5.15
2024 年 8 月 7 日
androidx.compose.compiler:compiler:1.5.15
と androidx.compose.compiler:compiler-hosted:1.5.15
がリリースされました。バージョン 1.5.15 には、これらの commit が含まれています。
- このコンパイラ リリースは Kotlin 1.9.25 を対象としています。
バージョン 1.5.14
2024 年 5 月 14 日
androidx.compose.compiler:compiler:1.5.14
と androidx.compose.compiler:compiler-hosted:1.5.14
がリリースされました。バージョン 1.5.14 には、これらの commit が含まれています。
このコンパイラ リリースは Kotlin 1.9.24 を対象としています。
バグの修正
- ソース情報が無効になっているときに、インライン ボディが実現されるようにします。(Idddb8)
バージョン 1.5.13
2024 年 5 月 1 日
androidx.compose.compiler:compiler:1.5.13
と androidx.compose.compiler:compiler-hosted:1.5.13
がリリースされました。バージョン 1.5.13 には、これらの commit が含まれています。
新機能
- 強制スキップは試験運用版ではなくなり、本番環境で安全に使用できるようになりました。これは、今後のリリースでデフォルトの動作になります。(I6c8c4)
バグの修正
- デフォルト値があり、プリミティブ以外の値をラップする値クラス パラメータを持つ
@Composable
関数のバイナリ互換性を修正。(I89465) - Compose マルチプラットフォームからの JS とネイティブのコンパイルの修正をアップストリームしました。詳しくは、上のコミット範囲をご覧ください。
バージョン 1.5.12
2024 年 4 月 17 日
androidx.compose.compiler:compiler:1.5.12
と androidx.compose.compiler:compiler-hosted:1.5.12
がリリースされました。バージョン 1.5.12 には、これらの commit が含まれています。
バグの修正
バージョン 1.5.11
2024 年 3 月 20 日
androidx.compose.compiler:compiler:1.5.11
と androidx.compose.compiler:compiler-hosted:1.5.11
がリリースされました。バージョン 1.5.11 には、これらの commit が含まれています。
注意事項
このバージョン以降、このメソッドを含むランタイムでモジュールがコンパイルされると、コンパイラは
startReplacableGroup
ではなくstartReplaceGroup
を呼び出します。startReplaceGroup
は、Compose Runtime1.7.0-alpha03
のランタイムで導入されました。startRestartGroup
への呼び出しは、ランタイムの 1.7.0-alpha03 以降のバージョンをターゲットとしている場合にのみ生成されます。startReplaceableGroup
ではなくstartReplaceGroup
を呼び出すと、ランタイムで変更をより効率的に検出できますが、Composer
によって変更が検出され、Applier
に送信される順序に影響する可能性があります。これにより、Applier
がこれらのオペレーションの検出順序に依存している場合、動作が微妙に変化する可能性があります。
新機能
- Kotlin 1.9.23 のサポート
バグの修正
- ネストされた外部ジェネリック型が不安定であると推論される問題を修正しました。(I3437f、b/327643787)
- 複数の安定性構成ファイルをサポート。(I8db14、b/325326744)
- Compose Compiler は、ベースクラス/オーバーライドを再帰的に走査して、オーバーライドされた関数を正しく変換するようになりました。(I2c9f9、b/316196500)
- 関数参照のメモ化で、ローカル宣言が直接使用されていない場合に、ローカル宣言の暗黙的な親をキャプチャしないようにします。(Ib1267)
- コンポーザブルのクロスインライン ラムダのコード生成を修正しました(「nonSkippingGroupOptimization」が有効になっていないと、このバグが発生しにくい)。(Icb2fd、b/325502738)
バージョン 1.5.10
2024 年 2 月 21 日
androidx.compose.compiler:compiler:1.5.10
と androidx.compose.compiler:compiler-hosted:1.5.10
がリリースされました。バージョン 1.5.10 に含まれる commit については、こちらをご覧ください。
バグの修正
- init ブロック内のライブリテラルをサポート。(b/320397488)
- ディスパッチャ パラメータを使用して、関数がローカルクラス内にあるかどうかを確認(b/323123439)
バージョン 1.5.9
2024 年 2 月 7 日
androidx.compose.compiler:compiler:1.5.9
と androidx.compose.compiler:compiler-hosted:1.5.9
がリリースされました。バージョン 1.5.9 に含まれる commit については、こちらをご覧ください。
バグの修正
- 匿名オブジェクト初期化子のコンポーザブル呼び出しを修正。(b/320261458、96315c)
- 再帰的なローカル宣言をキャプチャとしてカウントします。(b/318745941、e7b4b0)
- 組み込みの remember を持つ関数型に .changed を強制適用して、組み込みの remember による Java メソッド参照に関連する動作を修正しました。(b/319810819、77128e)
@NonSkippableComposable
として明示的にマークされている関数や、インライン関数やremember
などの Unit 以外の値を返す関数など、スキップできない関数を囲むグループを削除する試験運用版の最適化を追加しました。- この最適化は、プラグイン オプション
-P plugin:androidx.compose.compiler.plugins.kotlin:nonSkippingGroupOptimization=true
を Kotlin コンパイラに渡すことで有効にできます。(I1688f)
バージョン 1.5.8
2024 年 1 月 10 日
androidx.compose.compiler:compiler:1.5.8
と androidx.compose.compiler:compiler-hosted:1.5.8
がリリースされました。バージョン 1.5.8 に含まれる commit については、こちらをご覧ください。
新機能
- Kotlin 1.9.22 のサポート
バグの修正
- Java21 を使用してビルドしたときに Compose コンパイラ ビルドが例外をスローするバグを修正しました。Google Maven の Compose Compiler を使用しているユーザー(つまり、自分でビルドしていないユーザー)は、このバグの影響を受けませんでした。(b/316644294)
- インライン化されていないラムダの呼び出し元で
COMPOSABLE_EXPECTED
エラーが報告されるバグを修正しました。(b/309364913) - オープン関数のデフォルト パラメータに対するコンパイル エラーを追加しました(以前は抽象関数にのみ制限されていました)。Compose は現在、オーバーライドされた関数のデフォルト パラメータの置換をサポートしていません。デフォルト パラメータを使用してコンポーザブル関数をオーバーライドすると、実行時にエラーが発生していました。
@Suppress("ABSTRACT_COMPOSABLE_DEFAULT_PARAMETER_VALUE")
を使用して抑制します。ただし、パラメータのデフォルト値を指定しないでこのような関数をオーバーライドすると、実行時にクラッシュが発生します。(b/317490247) - 値が正しく伝播されないという組み込み型の remember のバグを修正しました。(b/316327367)
外部からの協力
- ドキュメントの誤字脱字を修正しました。(aosp/288106)
バージョン 1.5.7
2023 年 12 月 19 日
androidx.compose.compiler:compiler:1.5.7
と androidx.compose.compiler:compiler-hosted:1.5.7
がリリースされました。バージョン 1.5.7 に含まれる commit については、こちらをご覧ください。
バグの修正
remember()
キー パラメータが Composable 関数を呼び出すときにコンポーズ ランタイムのクラッシュを修正しました。(b/315855015)return@
を使用しているときに Compose ランタイムがクラッシュする問題を修正しました。(b/315821171)- メモ化キーに絶対パスを使用しないでください。これにより、ビルドキャッシュの使用率を高めることができます。(b/313937484)
バージョン 1.5.6
2023 年 12 月 6 日
androidx.compose.compiler:compiler:1.5.6
と androidx.compose.compiler:compiler-hosted:1.5.6
がリリースされました。バージョン 1.5.6 に含まれる commit については、こちらをご覧ください。
新機能
- Kotlin 1.9.21 のサポート
バグの修正
- 組み込みの remember を有効にする - Compose コンパイラ プラグインで remember をインライン化し、
.equals
比較を安定したパラメータのパラメータメタの int 比較に置き換えるコンパイラ変換。これにより、使用されるスロット数と実行時に行われる比較処理が減ります。このオプションを無効にするには、コンパイラ プラグイン引数 -Pplugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=false
を指定します。(If675f) - 適応された関数参照とインライン引数のメモ化を修正。(b/312738720)
- インライン関数呼び出しを終了するときにグループを実現(b/312242547)
外部からの協力
- コンポーズ可能な関数で最後のステートメントが null 定数を返す場合に、return ステートメントが欠落しているために k/native と k/wasm ランタイムがクラッシュする問題を修正しました。(aosp/2835716)
バージョン 1.5.5
2023 年 11 月 29 日
androidx.compose.compiler:compiler:1.5.5
と androidx.compose.compiler:compiler-hosted:1.5.5
がリリースされました。バージョン 1.5.5 に含まれる commit については、こちらをご覧ください。
バグの修正
- オーバーライドされたコンポーザブル タイプの検索中にクラッシュする問題を修正しました。(Ib6d2c、b/297665426)
- 既知のパラメータに
stabilityConfigurationPath
を追加しました(以前はバグにより構成ファイル フラグを使用できませんでした)。(b/309765121) - メモ化の修正(I081d1、I4d7bf)
- 組み込みの remember で不確実なパラメータの状態を考慮して再コンポーズを修正しました。(b/263402091)
- 組み込みの remember のデバッグ行情報を修正しました。(Ic8cf5)
- コンパイル時にオーバーライドされたコンポーズ可能な型の検索中に発生するクラッシュ(IR の低減に失敗)を修正しました。(b/297665426)
- 既知のパラメータに
外部からの協力
- 引数付きの安定した関数参照をメモ化(I4d7bf、b/302680514)
バージョン 1.5.4
2023 年 11 月 7 日
androidx.compose.compiler:compiler:1.5.4
と androidx.compose.compiler:compiler-hosted:1.5.4
がリリースされました。バージョン 1.5.4 に含まれる commit については、こちらをご覧ください。
依存関係の更新
- Compose Compiler が Kotlin 1.9.20 に対応
新機能
- 強いスキップモードを有効にする試験運用版オプションを追加しました。強いスキップモードでは、不安定なパラメータを持つコンポーザブルをスキップできます。また、不安定なキャプチャを含むラムダはメモ化されます。この機能は試験運用版であり、本番環境での使用は推奨されません。(22421e)
- ソース / トレース情報を有効または無効にするフラグを追加。(4d45f09)
- 構成ファイルを使用して外部クラスの安定性を構成できるようにしました。(If40eb)
バグの修正
- ソース情報が収集されていない場合にコンポーズ可能な関数から早期に終了する問題を修正。(fe6267)
- コンポーズ可能な関数からの continue を修正。(948362)
- 式の戻り型に依存する複数のオーバーロードを持つ関数呼び出し内からコンポーズ可能な関数が呼び出されたときの解決策を修正。(2d36d0)
- 関数参照にディスパッチ レシーバがない場合にメモ化を修正。(fc2326)
- 一部の状況でラムダの再コンポーズを妨げていたダーティチェックを修正しました。(db3699)
- モジュール間でインクリメンタル コンパイルする際の安定性を修正。(7d3e127)
@DontMemoize
のスコープをラムダ式のみに縮小。(7a7fa52)- コンポーズ可能な fun インターフェースをラムダとして使用したときに変数が正しくキャプチャされない問題を修正しました。(5ae3556)
外部からの協力
- 数値と null の比較に構造の等価性記号を使用する(c612a0)
バージョン 1.5.3
2023 年 8 月 29 日
androidx.compose.compiler:compiler:1.5.3
、androidx.compose.compiler:compiler-daemon:1.5.3
、androidx.compose.compiler:compiler-hosted:1.5.3
がリリースされました。バージョン 1.5.3 に含まれる commit については、こちらをご覧ください。
依存関係の更新
- Kotlin のバージョンが 1.9.10 に更新されました
バージョン 1.5.2
2023 年 8 月 23 日
androidx.compose.compiler:compiler:1.5.2
、androidx.compose.compiler:compiler-daemon:1.5.2
、androidx.compose.compiler:compiler-hosted:1.5.2
がリリースされました。バージョン 1.5.2 に含まれる commit については、こちらをご覧ください。
バグの修正
- 定数を返すコンポーズ可能な関数に return 文の行番号を挿入。(I42d89)
- 新しいコンパイラ プラグインのエントリポイントへの切り替えによって発生するメモリリークを修正。(4f0a101)
- Compose コンパイラで、コンポーザブルでない fun インターフェースの変換を停止。これにより、メモ化ルールなど、ラムダと同じようにファンクション インターフェースが処理されるようになります。(28b3ce9)
- 呼び出し元での安定性を推測するには、vararg 引数の型を使用します。(bc83645)
バージョン 1.5.1
2023 年 7 月 26 日
androidx.compose.compiler:compiler:1.5.1
、androidx.compose.compiler:compiler-daemon:1.5.1
、androidx.compose.compiler:compiler-hosted:1.5.1
がリリースされました。バージョン 1.5.1 に含まれる commit については、こちらをご覧ください。
バグの修正
- トレースの破損を引き起こす早期リターンがある
@ReadOnlyComposable
関数のコンポーズ トレース イベント マーカーを修正しました。
バージョン 1.5.0
2023 年 7 月 18 日
androidx.compose.compiler:compiler:1.5.0
、androidx.compose.compiler:compiler-daemon:1.5.0
、androidx.compose.compiler:compiler-hosted:1.5.0
がリリースされました。バージョン 1.5.0 に含まれる commit については、こちらをご覧ください。
K2 の試験運用版サポート
- Compose Compiler 1.5.0 では、K2 コンパイラの試験運用版サポートが提供されています。Compose の一部の機能は K2 ではまだサポートされておらず、今後のバージョンのコンパイラでサポートされる予定です。
1.4.0 以降の重要な変更
- Kotlin のバージョンが 1.9.0 に更新されました。
@Composable
ラムダ呼び出しの名前付き引数は非推奨になりました。この機能は内部コンパイラ API に依存しており、K2 ではサポートされません。- 想定される呼び出しと実際の呼び出しで
@Composable
アノテーションを確認する診断を追加しました。両方の宣言にアノテーションが一致している必要があります。
バージョン 1.4.8
バージョン 1.4.8
2023 年 6 月 28 日
androidx.compose.compiler:compiler:1.4.8
、androidx.compose.compiler:compiler-daemon:1.4.8
、androidx.compose.compiler:compiler-hosted:1.4.8
がリリースされました。バージョン 1.4.8 に含まれる commit については、こちらをご覧ください。
新機能
- ターゲットの Kotlin コンパイラ バージョンが 1.8.22 に引き上げられました。
バグの修正
@Composable
オーバーライドのエラー メッセージを改善しました。アノテーションの不一致が正しく指摘されるようになりました。- コンポーズ可能としてマークすべきでないインライン ラムダに対する冗長な
@Composable
アノテーションについて警告します。この機能は K2 コンパイラではサポートされません。
バージョン 1.4.7
バージョン 1.4.7
2023 年 5 月 3 日
androidx.compose.compiler:compiler:1.4.7
、androidx.compose.compiler:compiler-daemon:1.4.7
、androidx.compose.compiler:compiler-hosted:1.4.7
がリリースされました。バージョン 1.4.7 に含まれる commit については、こちらをご覧ください。
新機能
- Kotlin 1.8.21 のサポート
State
API のプリミティブ バージョンを追加しました。これにより、自動ボックス化のペナルティを発生させることなく、Int、Long、Float、Double の値をState
オブジェクトで追跡できるようになりました。
バージョン 1.4.6
バージョン 1.4.6
2023 年 4 月 19 日
androidx.compose.compiler:compiler:1.4.6
、androidx.compose.compiler:compiler-daemon:1.4.6
、androidx.compose.compiler:compiler-hosted:1.4.6
がリリースされました。バージョン 1.4.6 に含まれる commit については、こちらをご覧ください。
バグの修正
- Compose Compiler は、古いバージョンの Java を使用しているユーザーをより適切にサポートするため、Compose Compiler バージョン 1.4.5 で必要な Java17 ではなく、Java11 に依存するようになりました。
バージョン 1.4.5
バージョン 1.4.5
2023 年 4 月 12 日
androidx.compose.compiler:compiler:1.4.5
、androidx.compose.compiler:compiler-daemon:1.4.5
、androidx.compose.compiler:compiler-hosted:1.4.5
がリリースされました。バージョン 1.4.5 に含まれる commit については、こちらをご覧ください。
注 この Compose Compiler のビルドでは、ビルド環境で Java 17 以降を使用する必要があります。ユーザーからのフィードバックに基づき、この要件を Java 11 に戻し、古い Java バージョンを使用しているユーザーをより適切にサポートするために、別のリリース(1.4.6)をフォローアップします。
新機能
Kotlin 1.8.20 のサポート
バグの修正
- コンポーズ可能な呼び出し演算子のオーバーライドの要件を、対応するアノテーションを使用してラムダ インターフェースを拡張しているクラスとインターフェースに伝播。f8f2f78a1a769c2373201027f12700e772e4e97e
getValue
演算子で@Composable
アノテーションを使用できるようにし、生成されたデリゲートのゲッターを IR でコンポーザブルとしてマークして、後で正しく変換されるようにしました。f174f6ee60ca957d5cb6d19a5bd02a88267cdf40- インライン関数の内部コンポーズ ランタイム エラー(
applyChanges()
が呼び出されることになっていた)を修正しました。b/274786923 ProcessCancelledException
は IDE で特別な意味を持つため、キャプチャしないでください。b/274725600
外部からの協力
- Kotlin/Native での Composable 関数のサポートが改善されました。f52b6aeed22400dd4f4a4f05559a9aa42642402c
バージョン 1.4.4
バージョン 1.4.4
2023 年 3 月 22 日
androidx.compose.compiler:compiler:1.4.4
、androidx.compose.compiler:compiler-daemon:1.4.4
、androidx.compose.compiler:compiler-hosted:1.4.4
がリリースされました。バージョン 1.4.4 に含まれる commit については、こちらをご覧ください。
バグの修正
- コンポーズ可能なインライン ラムダの戻り値を修正しました。(72172b)
- コンポーザブルが
Nothing
を返すことを許可する(コンポーザブル関数で TODO を使用するときにエラーを生成しない)3aea8d)
バージョン 1.4.3
バージョン 1.4.3
2023 年 2 月 22 日
androidx.compose.compiler:compiler:1.4.3
がリリースされました。バージョン 1.4.3 に含まれる commit については、こちらをご覧ください。
バグの修正
- コンポーザブル呼び出しの引数での条件付きコンポーザブル呼び出しを修正(Ie93edb)
バージョン 1.4.2
バージョン 1.4.2
2023 年 2 月 8 日
androidx.compose.compiler:compiler:1.4.2
がリリースされました。バージョン 1.4.2 に含まれる commit については、こちらをご覧ください。
新機能
- Kotlin 1.8.10 のサポート
バグの修正
- 再コンポーズのバグを回避するために、スキップできないラムダの本文にグループを追加します。
バージョン 1.4.1
バージョン 1.4.1
2023 年 2 月 8 日
androidx.compose.compiler:compiler:1.4.1
がリリースされました。バージョン 1.4.1 に含まれる commit については、こちらをご覧ください。
バグの修正
- 以前いくつかのコード生成のバグがあった、組み込み型の remember の最適化を無効にしました。
- vararg パラメータを含む関数の組み込み型の remember を無効にしました。
- デフォルト パラメータを使用したコンポーザブルでの誤ったスキップを修正しました。
- Kotlin の互換性を確認できない場合について、防御的なフォールバック エラー メッセージを追加しました。
- インライン ラムダからスキップコード生成を削除しました。
バージョン 1.4.0
2023 年 1 月 17 日
androidx.compose.compiler:compiler:1.4.0
がリリースされました。バージョン 1.4.0 に含まれる commit については、こちらをご覧ください。
1.3.0 以降の重要な変更
- Kotlin 1.8.0 のサポート
- 組み込みの記憶機能を無効にしました
- ui tooling data クラス
Group
に、グループがインラインのコンポーズ可能な関数呼び出しの対象かどうかを示すフィールドisInline
が追加されました。isInline
がtrue
の場合、呼び出しはインラインのコンポーズ可能な関数の呼び出しです。ただし、インラインの関数情報を生成しないバージョンの Compose Compiler プラグインとコンパイルされるモジュールからのインラインのコンポーズ可能な関数呼び出しでは値が false になることがあります。 ImmutableCollection
とその永続的な兄弟要素が安定版になりました。AnimatedContent
のツールラベル用の新しいパラメータ- インライン ラムダのコード生成の不具合を修正しました
バージョン 1.4.0-alpha02
2022 年 11 月 11 日
androidx.compose.compiler:compiler:1.4.0-alpha02
がリリースされました。バージョン 1.4.0-alpha02 に含まれる commit については、こちらをご覧ください。
新機能
- Kotlin
1.7.21
のサポートを追加しました。
バージョン 1.4.0-alpha01
2022 年 11 月 9 日
androidx.compose.compiler:compiler:1.4.0-alpha01
がリリースされました。バージョン 1.4.0-alpha01 に含まれる commit については、こちらをご覧ください。
バグの修正
- インラインのコンポーズ可能な関数から早期に戻る機能を修正しました。(b/255350755)
- Compose での Kotlin/JS のサポートに関する不具合の原因となっていた decoy の小文字変換のバグを修正しました。(6a40f8)
バージョン 1.3
バージョン 1.3.2
2022 年 10 月 4 日
androidx.compose.compiler:compiler:1.3.2
がリリースされました。バージョン 1.3.2 に含まれる commit については、こちらをご覧ください。
新しい機能
- このバージョンには、Kotlin 1.7.20 へのアップデートが含まれています。
バージョン 1.3.1
2022 年 9 月 7 日
androidx.compose.compiler:compiler:1.3.1
がリリースされました。バージョン 1.3.1 に含まれる commit については、こちらをご覧ください。
バグの修正
- 特定の状況で Compose Compiler が誤って単位タイプをコンポーザブルとしてマークしていた
IllegalStateException
を修正しました。(b/237863365) - コンパイラのバージョン チェックを抑制する場合は、優先する Kotlin バージョンを指定する必要があります。(I9e5e2)
バージョン 1.3.0
2022 年 8 月 10 日
androidx.compose.compiler:compiler:1.3.0
がリリースされました。バージョン 1.3.0 に含まれる commit については、こちらをご覧ください。
バージョン 1.3.0-rc02
2022 年 8 月 3 日
androidx.compose.compiler:compiler:1.3.0-rc02
がリリースされました。バージョン 1.3.0-rc02 に含まれる commit については、こちらをご覧ください。
バージョン 1.3.0-rc01
2022 年 7 月 27 日
androidx.compose.compiler:compiler:1.3.0-rc01
がリリースされました。バージョン 1.3.0-rc01 に含まれる commit については、こちらをご覧ください。
バージョン 1.3.0-beta01
2022 年 7 月 20 日
androidx.compose.compiler:compiler:1.3.0-beta01
がリリースされました。バージョン 1.3.0-beta01 に含まれる commit については、こちらをご覧ください。
新機能
- Kotlin
1.7.10
のサポートを追加しました。
バージョン 1.2
バージョン 1.2.0
2022 年 6 月 29 日
androidx.compose.compiler:compiler:1.2.0
がリリースされました。バージョン 1.2.0 に含まれる commit については、こちらをご覧ください。
1.1.0 以降の重要な変更
- Kotlin 1.7.0 のサポート
- 詳しくは、Compose の新しい Compose コンパイラ バージョニング戦略について説明しているブログ投稿をご覧ください。
バージョン 1.2.0-rc02
2022 年 6 月 22 日
androidx.compose.compiler:compiler:1.2.0-rc02
がリリースされました。バージョン 1.2.0-rc02 に含まれるコミットについては、こちらをご覧ください。
バグの修正
- コンポーズ可能なトレース イベント コード生成を削除しました(aosp/2127922)
バージョン 1.2.0-rc01
2022 年 6 月 15 日
androidx.compose.compiler:compiler:1.2.0-rc01
がリリースされました。バージョン 1.2.0-rc01 に含まれる commit については、こちらをご覧ください。
バージョン 1.2.0-beta03
2022 年 6 月 1 日
androidx.compose.compiler:compiler:1.2.0-beta03
がリリースされました。バージョン 1.2.0-beta03 に含まれる commit については、こちらをご覧ください。
バージョン 1.2.0-beta02
2022 年 5 月 18 日
androidx.compose.compiler:compiler:1.2.0-beta02
がリリースされました。バージョン 1.2.0-beta02 に含まれる commit については、こちらをご覧ください。
バージョン 1.2.0-beta01
2022 年 5 月 11 日
androidx.compose.compiler:compiler:1.2.0-beta01
がリリースされました。バージョン 1.2.0-beta01 に含まれる commit については、こちらをご覧ください。
- これは、1.2 ベータ版の最初のリリースです。最後のアルファ版からの変更はありません。
新機能
- Kotlin
1.6.21
のサポートを追加しました。
バージョン 1.2.0-alpha08
2022 年 4 月 20 日
androidx.compose.compiler:compiler:1.2.0-alpha08
がリリースされました。バージョン 1.2.0-alpha08 に含まれる commit については、こちらをご覧ください。
バージョン 1.2.0-alpha07
2022 年 4 月 6 日
androidx.compose.compiler:compiler:1.2.0-alpha07
がリリースされました。バージョン 1.2.0-alpha07 に含まれる commit については、こちらをご覧ください。
バージョン 1.2.0-alpha06
2022 年 3 月 23 日
androidx.compose.compiler:compiler:1.2.0-alpha06
がリリースされました。バージョン 1.2.0-alpha06 に含まれる commit については、こちらをご覧ください。
バージョン 1.2.0-alpha05
2022 年 3 月 9 日
androidx.compose.compiler:compiler:1.2.0-alpha05
がリリースされました。バージョン 1.2.0-alpha05 に含まれる commit については、こちらをご覧ください。
バージョン 1.2.0-alpha04
2022 年 2 月 23 日
androidx.compose.compiler:compiler:1.2.0-alpha04
がリリースされました。バージョン 1.2.0-alpha04 に含まれる commit については、こちらをご覧ください。
バージョン 1.2.0-alpha03
2022 年 2 月 9 日
androidx.compose.compiler:compiler:1.2.0-alpha03
がリリースされました。バージョン 1.2.0-alpha03 に含まれる commit については、こちらをご覧ください。
バージョン 1.2.0-alpha02
2022 年 1 月 26 日
androidx.compose.compiler:compiler:1.2.0-alpha02
がリリースされました。バージョン 1.2.0-alpha02 に含まれる commit については、こちらをご覧ください。
バージョン 1.2.0-alpha01
2022 年 1 月 12 日
androidx.compose.compiler:compiler:1.2.0-alpha01
がリリースされました。バージョン 1.2.0-alpha01 に含まれる commit については、こちらをご覧ください。
新機能
- Kotlin
1.6.10
のサポートを追加しました。
バージョン 1.1
バージョン 1.1.1
2022 年 2 月 23 日
androidx.compose.compiler:compiler:1.1.1
がリリースされました。バージョン 1.1.1 に含まれる commit については、こちらをご覧ください。
バグの修正
androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList
のNullPointerException
を修正しました(aosp/1947059、b/206677462)- Android のクリップボードから読み取る際にクリップボードの内容が原因で発生するクラッシュを修正しました。(I06020、b/197769306)
LazyVerticalGrid
の RTL を修正しました(aosp/1931080、b/207510535)
バージョン 1.1.0
2022 年 2 月 9 日
androidx.compose.compiler:compiler:1.1.0
がリリースされました。バージョン 1.1.0 に含まれる commit については、こちらをご覧ください。
1.0.0 以降の重要な変更
- Android 12 のオーバースクロール効果の安定版サポートを追加
- タップ ターゲットのサイズ調整を改善
- Compose 1.0 では、マテリアル ユーザー補助ガイドラインのタップ ターゲットのサイズに合わせるために、マテリアル コンポーネントのレイアウト スペースが拡張されることに注意してください。たとえば、ボタンのサイズをいくら小さく設定しても、ボタンのタップ ターゲットは最小サイズの
48x48dp
に拡張されます。これにより、Compose Material とマテリアル デザイン コンポーネントの動作が一致し、View と Compose を混在させても動作の一貫性を保持できます。また、Compose Material コンポーネントを使用して UI を作成する際に、タップ ターゲットに関するユーザー補助の最小要件が確実に満たされます。 - ナビゲーション レールの安定版のサポートを追加
- 試験運用版であったいくつかの API を安定版に移行
- 新しいバージョンの Kotlin のサポート
バージョン 1.1.0-rc03
2022 年 1 月 26 日
androidx.compose.compiler:compiler:1.1.0-rc03
がリリースされました。バージョン 1.1.0-rc03 に含まれる commit については、こちらをご覧ください。
バグの修正
- Compose Material 1.1.0-rc03 をサポートするように更新しました。
バージョン 1.1.0-rc02
2021 年 12 月 16 日
androidx.compose.compiler:compiler:1.1.0-rc02
がリリースされました。バージョン 1.1.0-rc02 に含まれる commit については、こちらをご覧ください。
依存関係の更新
- Compose Compiler
1.1.0-rc02
は Kotlin1.6.10
に対応しています。
バージョン 1.1.0-rc01
2021 年 12 月 15 日
androidx.compose.compiler:compiler:1.1.0-rc01
がリリースされました。バージョン 1.1.0-rc01 に含まれる commit については、こちらをご覧ください。
依存関係の変更
- Compose Compiler
1.1.0-rc01
は Kotlin1.6.0
に対応しています。 対応している
1.6.10
ビルドは、buildId
8003490 で androidx.dev SNAPSHOT から入手できます。次の依存関係スニペットは、Compose Compiler の SNAPSHOT を設定します。プロジェクトのルート
build.gradle
ファイルに次のスニペットを追加します。buildscript { repositories { google() jcenter() maven { url 'https://androidx.dev/snapshots/builds/8003490/artifacts/repository' } } }
Compose を使用するアプリまたはモジュールの
build.gradle
ファイルに、次のスニペットを追加します。android { composeOptions { kotlinCompilerExtensionVersion = "1.2.0-SNAPSHOT" } }
バージョン 1.1.0-beta04
2021 年 12 月 1 日
androidx.compose.compiler:compiler:1.1.0-beta04
がリリースされました。バージョン 1.1.0-beta04 に含まれる commit については、こちらをご覧ください。
新機能
- Kotlin
1.6.0
との互換性を確保するために更新しました
バージョン 1.1.0-beta03
2021 年 11 月 17 日
androidx.compose.compiler:compiler:1.1.0-beta03
がリリースされました。バージョン 1.1.0-beta03 に含まれる commit については、こちらをご覧ください。
バージョン 1.1.0-beta02
2021 年 11 月 3 日
androidx.compose.compiler:compiler:1.1.0-beta02
がリリースされました。バージョン 1.1.0-beta02 に含まれる commit については、こちらをご覧ください。
バージョン 1.1.0-beta01
2021 年 10 月 27 日
androidx.compose.compiler:compiler:1.1.0-beta01
がリリースされました。バージョン 1.1.0-beta01 に含まれる commit については、こちらをご覧ください。
バージョン 1.1.0-alpha06
2021 年 10 月 13 日
androidx.compose.compiler:compiler:1.1.0-alpha06
がリリースされました。バージョン 1.1.0-alpha06 に含まれる commit については、こちらをご覧ください。
バージョン 1.1.0-alpha05
2021 年 9 月 29 日
androidx.compose.compiler:compiler:1.1.0-alpha05
がリリースされました。バージョン 1.1.0-alpha05 に含まれる commit については、こちらをご覧ください。
バージョン 1.1.0-alpha04
2021 年 9 月 15 日
androidx.compose.compiler:compiler:1.1.0-alpha04
がリリースされました。バージョン 1.1.0-alpha04 に含まれる commit については、こちらをご覧ください。
バージョン 1.1.0-alpha03
2021 年 9 月 1 日
androidx.compose.compiler:compiler:1.1.0-alpha03
がリリースされました。バージョン 1.1.0-alpha03 に含まれる commit については、こちらをご覧ください。
新機能
- Compose Compiler は、古いバージョンの Compose Runtime(1.0)をサポートするようになりました。この変更の前、Compose Compiler は同じバージョン以降の Compose Runtime とのみ互換性がありました。この変更の後、Compose Compiler は古いバージョンの Compose Runtime(1.0)と互換性を持つようになります。(aosp/1796968)
- Kotlin
1.5.30
に依存するように、Compose1.1.0-alpha03
を更新しました。(I74545)
バージョン 1.1.0-alpha02
2021 年 8 月 18 日
androidx.compose.compiler:compiler:1.1.0-alpha02
がリリースされました。バージョン 1.1.0-alpha02 に含まれる commit については、こちらをご覧ください。
バージョン 1.1.0-alpha01
2021 年 8 月 4 日
androidx.compose.compiler:compiler:1.1.0-alpha01
がリリースされました。バージョン 1.1.0-alpha01 に含まれる commit については、こちらをご覧ください。
バージョン 1.0
バージョン 1.0.5
2021 年 11 月 3 日
androidx.compose.compiler:compiler:1.0.5
がリリースされました。バージョン 1.0.5 に含まれる commit については、こちらをご覧ください。
バグの修正
- derivedStateOf インスタンスをトラッキングするクラッシュを修正しました。(aosp/1792247)
バージョン 1.0.4
2021 年 10 月 13 日
androidx.compose.compiler:compiler:1.0.4
がリリースされました。バージョン 1.0.4 に含まれる commit については、こちらをご覧ください。
依存関係の更新
- Kotlin
1.5.31
に依存するように更新しました。
バージョン 1.0.3
2021 年 9 月 29 日
androidx.compose.compiler:compiler:1.0.3
がリリースされました。バージョン 1.0.3 に含まれる commit については、こちらをご覧ください。
依存関係の更新
- Kotlin
1.5.30
に依存するように更新しました。
バージョン 1.0.2
2021 年 9 月 1 日
androidx.compose.compiler:compiler:1.0.2
がリリースされました。バージョン 1.0.2 に含まれる commit については、こちらをご覧ください。
Compose 1.0.2
リリースをサポートするように更新しました。Compose 1.0.2
は、引き続き Kotlin 1.5.21
と互換性があります。
バージョン 1.0.1
2021 年 8 月 4 日
androidx.compose.compiler:compiler:1.0.1
がリリースされました。バージョン 1.0.1 に含まれる含まれる commit については、こちらをご覧ください。
依存関係の更新
- Kotlin
1.5.21
に依存するように更新しました。
バージョン 1.0.0
2021 年 7 月 28 日
androidx.compose.compiler:compiler:1.0.0
がリリースされました。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください。
1.0.0 の主な機能
これは Compose の最初の安定版リリースです。詳細については、Compose リリースの公式ブログをご覧ください。
バージョン 1.0.0-rc02
2021 年 7 月 14 日
androidx.compose.compiler:compiler:1.0.0-rc02
がリリースされました。バージョン 1.0.0-rc02 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-rc01
2021 年 7 月 1 日
androidx.compose.compiler:compiler:1.0.0-rc01
がリリースされました。バージョン 1.0.0-rc01 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-beta09
2021 年 6 月 16 日
androidx.compose.compiler:compiler:1.0.0-beta09
がリリースされました。バージョン 1.0.0-beta09 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-beta08
2021 年 6 月 2 日
androidx.compose.compiler:compiler:1.0.0-beta08
がリリースされました。バージョン 1.0.0-beta08 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-beta07
2021 年 5 月 18 日
androidx.compose.compiler:compiler:1.0.0-beta07
がリリースされました。バージョン 1.0.0-beta07 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-beta06
2021 年 5 月 5 日
androidx.compose.compiler:compiler:1.0.0-beta06
がリリースされました。バージョン 1.0.0-beta06 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-beta05
2021 年 4 月 21 日
androidx.compose.compiler:compiler:1.0.0-beta05
がリリースされました。バージョン 1.0.0-beta05 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-beta04
2021 年 4 月 7 日
androidx.compose.compiler:compiler:1.0.0-beta04
がリリースされました。バージョン 1.0.0-beta04 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-beta03
2021 年 3 月 24 日
androidx.compose.compiler:compiler:1.0.0-beta03
がリリースされました。バージョン 1.0.0-beta03 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-beta02
2021 年 3 月 10 日
androidx.compose.compiler:compiler:1.0.0-beta02
がリリースされました。バージョン 1.0.0-beta02 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-beta01
2021 年 2 月 24 日
androidx.compose.compiler:compiler:1.0.0-beta01
がリリースされました。バージョン 1.0.0-beta01 に含まれる commit については、こちらをご覧ください。
これは、Compose 1.0.0 ベータ版の最初のリリースです。
バージョン 1.0.0-alpha12
2021 年 2 月 10 日
androidx.compose.compiler:compiler:1.0.0-alpha12
がリリースされました。バージョン 1.0.0-alpha12 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-alpha11
2021 年 1 月 28 日
androidx.compose.compiler:compiler:1.0.0-alpha11
がリリースされました。バージョン 1.0.0-alpha11 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-alpha10
2021 年 1 月 13 日
androidx.compose.compiler:compiler:1.0.0-alpha10
がリリースされました。バージョン 1.0.0-alpha10 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-alpha09
2020 年 12 月 16 日
androidx.compose.compiler:compiler:1.0.0-alpha09
がリリースされました。バージョン 1.0.0-alpha09 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-alpha08
2020 年 12 月 2 日
androidx.compose.compiler:compiler:1.0.0-alpha08
がリリースされました。バージョン 1.0.0-alpha08 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-alpha07
2020 年 11 月 11 日
androidx.compose.compiler:compiler:1.0.0-alpha07
がリリースされました。バージョン 1.0.0-alpha07 に含まれる commit については、こちらをご覧ください。
新機能
- 安定性の推定と伝播。Compose Compiler プラグインは、コンパイルする型を分析して、ランタイムによる特定の最適化の対象になるかどうかを推定します。この推定結果はメタデータとしてクラスに合成され、他のモジュール内でコンパイラによって使用されます。さらに、これらの推定のランタイム結果は、コンポジション中にコンポーズ可能な呼び出しに渡されるメタデータ内で渡されます。そのため、コンポーズ可能な関数に対して異なるメタデータ プロトコルが必要になりました。つまり、alpha07 コンパイラでコンパイルされたコンポーズ可能な関数は、それより前のコンパイラ バージョンでコンパイルされたコンパイル可能な関数とバイナリ互換性を持たなくなります。(aosp/1431988)
バージョン 1.0.0-alpha06
2020 年 10 月 28 日
androidx.compose.compiler:compiler:1.0.0-alpha06
がリリースされました。バージョン 1.0.0-alpha06 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-alpha05
2020 年 10 月 14 日
androidx.compose.compiler:compiler:1.0.0-alpha05
がリリースされました。バージョン 1.0.0-alpha05 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-alpha04
2020 年 10 月 1 日
androidx.compose.compiler:compiler:1.0.0-alpha04
がリリースされました。バージョン 1.0.0-alpha04 に含まれる commit については、こちらをご覧ください。
androidx.compose:compose-compiler
が androidx.compose.compiler:compiler
にリファクタリングされました。これは、新しいグループの最初のリリースです。