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 については、こちらをご覧ください。
バグの修正
- Kotlin 1.9.23 での増分コンパイルに関する問題を修正しました。(Ifca55)。
- 非プリミティブ インライン クラスの値パラメータの null 値非許容型を修正しました。(Ie6bb5)。
バージョン 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 ランタイム1.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
として明示的にマークされているなど)や、暗黙的にスキップできない関数(インライン関数、非 Unit 値(remember
など)を返す関数など)を取り除く、試験運用版の最適化を追加しました。 - この最適化は、プラグインのオプション、
-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 Compiler ビルドが例外をスローするバグを修正しました。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()
キーパラメータがコンポーズ可能な関数を呼び出すときの Compose ランタイムのクラッシュを修正(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 コンパイラ プラグインでインラインが記憶し、パラメータが安定している場合に、
.equals
比較をパラメータ meta の 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 の Uncertain パラメータの状態を考慮することで再コンポーズを修正しました(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)。
- コンポーズ可能な関数からの続行を修正。(948362)。
- 式の戻り値の型に依存する複数のオーバーロードを持つ関数呼び出し内からコンポーズ可能な関数を呼び出す場合の解決策を修正しました。(2d36d0)。
- 関数参照にディスパッチ レシーバがない場合のメモ化を修正しました。(fc2326)。
- 一部の状況でラムダの再コンポーズを妨げていたダーティチェックを修正しました。(db3699)。
- モジュール間で段階的にコンパイルする際の安定性を修正。(7d3e127)。
@DontMemoize
のスコープをラムダ式のみに縮小します。(7a7fa52)。- Composable 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 コンパイラでコンポーズできない楽しいインターフェースの変換を停止します。これにより、ファン インターフェースはメモ化ルールを含むラムダと同じように処理されます。(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 コンパイラ 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 については、こちらをご覧ください。
バグの修正
- 古いバージョンの Java を使用しているユーザーのサポートを強化するために、Compose Compiler は(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- インライン関数での内部 Compose ランタイム エラー(
applyChanges()
が呼び出される見込み)を修正しました。b/274786923 ProcessCancelledException
は IDE では特別な意味を持つため、キャプチャしないでください。b/274725600
外部からの協力
- Kotlin/Native のコンポーズ可能な関数のサポートを改善しました。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
にリファクタリングされました。これは、新しいグループの最初のリリースです。