Compose Compiler
最新の更新 | 安定版リリース | リリース候補版 | ベータ版リリース | アルファ版リリース |
---|---|---|---|---|
2024 年 5 月 1 日 | 1.5.13 | - | - | - |
構造
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.13" } kotlinOptions { jvmTarget = "19" } }
Kotlin
android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.13" } kotlinOptions { jvmTarget = "19" } }
依存関係について詳しくは、ビルド依存関係の追加をご覧ください。
フィードバック
お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。
詳細については、Issue Tracker のドキュメントをご覧ください。
バージョン 1.5
バージョン 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)
- 非プリミティブなインライン クラスの value パラメータの 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 を強制することで、Java メソッド参照に関連する組み込み remember の変更動作を修正しました。(b/319810819、77128e)
- スキップできない関数(明示的に
@NonSkippableComposable
とマークされている関数など)や、暗黙的にスキップできない関数(インライン関数や、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
比較をパラメータ メタの 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)
- コンポーズ可能な関数からの続行を修正しました。(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 コンパイラでのコンポーズできない楽しいインターフェースの変換を停止しました。これにより、楽しいインターフェースがラムダと同じように処理されます。これには、メモ化ルールも含まれます。(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 については、こちらをご覧ください。
バグの修正
- Compose Compiler が(Compose Compiler バージョン 1.4.5 で必要な Java17 ではなく)Java11 に依存するようになりました。これにより、古いバージョンの Java を現在も使用しているユーザーに対するサポートが向上します。
バージョン 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
にリファクタリングされました。これは、新しいグループの最初のリリースです。