Stay organized with collections Save and categorize content based on your preferences.

Compose Compiler

Transform @Composable functions and enable optimizations with a Kotlin compiler plugin.
Latest Update Stable Release Release Candidate Beta Release Alpha Release
September 7, 2022 1.3.1 - - -

Structure

Compose is combination of 7 Maven Group Ids within androidx. Each Group contains a targeted subset of functionality, each with it's own set of release notes.

This table explains the groups and links to each set of release notes.

GroupDescription
compose.animationBuild animations in their Jetpack Compose applications to enrich the user experience.
compose.compilerTransform @Composable functions and enable optimizations with a Kotlin compiler plugin.
compose.foundationWrite Jetpack Compose applications with ready to use building blocks and extend foundation to build your own design system pieces.
compose.materialBuild Jetpack Compose UIs with ready to use Material Design Components. This is the higher level entry point of Compose, designed to provide components that match those described at www.material.io.
compose.material3Build Jetpack Compose UIs with Material Design 3 Components, the next evolution of Material Design. Material 3 includes updated theming and components and Material You personalization features like dynamic color, and is designed to be cohesive with the new Android 12 visual style and system UI.
compose.runtimeFundamental building blocks of Compose's programming model and state management, and core runtime for the Compose Compiler Plugin to target.
compose.uiFundamental components of compose UI needed to interact with the device, including layout, drawing, and input.

Declaring dependencies

To add a dependency on Compose, you must add the Google Maven repository to your project. Read Google's Maven repository for more information.

Add the dependencies for the artifacts you need in the build.gradle file for your app or module:

Groovy

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.3.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.3.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

For more information about dependencies, see Add build dependencies.

Feedback

Your feedback helps make Jetpack better. Let us know if you discover new issues or have ideas for improving this library. Please take a look at the existing issues in this library before you create a new one. You can add your vote to an existing issue by clicking the star button.

Create a new issue

See the Issue Tracker documentation for more information.

Version 1.3

Version 1.3.1

September 7, 2022

androidx.compose.compiler:compiler:1.3.1 is released. Version 1.3.1 contains these commits.

Bug Fixes

  • Fix IllegalStateException where Compose Compiler was erroneously marking unit types as composable in some circumstances. (b/237863365)
  • Users must now specify their preferred Kotlin version when suppressing compiler version check (I9e5e2)

Version 1.3.0

August 10, 2022

androidx.compose.compiler:compiler:1.3.0 is released. Version 1.3.0 contains these commits.

Version 1.3.0-rc02

August 3, 2022

androidx.compose.compiler:compiler:1.3.0-rc02 is released. Version 1.3.0-rc02 contains these commits.

Version 1.3.0-rc01

July 27, 2022

androidx.compose.compiler:compiler:1.3.0-rc01 is released. Version 1.3.0-rc01 contains these commits.

Version 1.3.0-beta01

July 20, 2022

androidx.compose.compiler:compiler:1.3.0-beta01 is released. Version 1.3.0-beta01 contains these commits.

New Features

  • Added support for Kotlin 1.7.10

Version 1.2

Version 1.2.0

June 29, 2022

androidx.compose.compiler:compiler:1.2.0 is released. Version 1.2.0 contains these commits.

Important changes since 1.1.0

Version 1.2.0-rc02

June 22, 2022

androidx.compose.compiler:compiler:1.2.0-rc02 is released. Version 1.2.0-rc02 contains these commits.

Bug Fixes

  • Removed composable Trace Event code generation (aosp/2127922)

Version 1.2.0-rc01

June 15, 2022

androidx.compose.compiler:compiler:1.2.0-rc01 is released. Version 1.2.0-rc01 contains these commits.

Version 1.2.0-beta03

June 1, 2022

androidx.compose.compiler:compiler:1.2.0-beta03 is released. Version 1.2.0-beta03 contains these commits.

Version 1.2.0-beta02

May 18, 2022

androidx.compose.compiler:compiler:1.2.0-beta02 is released. Version 1.2.0-beta02 contains these commits.

Version 1.2.0-beta01

May 11, 2022

androidx.compose.compiler:compiler:1.2.0-beta01 is released. Version 1.2.0-beta01 contains these commits.

  • This is the first beta release of 1.2! There are no changes since the last alpha.

New Features

  • Added support for Kotlin 1.6.21

Version 1.2.0-alpha08

April 20, 2022

androidx.compose.compiler:compiler:1.2.0-alpha08 is released. Version 1.2.0-alpha08 contains these commits.

Version 1.2.0-alpha07

April 6, 2022

androidx.compose.compiler:compiler:1.2.0-alpha07 is released. Version 1.2.0-alpha07 contains these commits.

Version 1.2.0-alpha06

March 23, 2022

androidx.compose.compiler:compiler:1.2.0-alpha06 is released. Version 1.2.0-alpha06 contains these commits.

Version 1.2.0-alpha05

March 9, 2022

androidx.compose.compiler:compiler:1.2.0-alpha05 is released. Version 1.2.0-alpha05 contains these commits.

Version 1.2.0-alpha04

February 23, 2022

androidx.compose.compiler:compiler:1.2.0-alpha04 is released. Version 1.2.0-alpha04 contains these commits.

Version 1.2.0-alpha03

February 9, 2022

androidx.compose.compiler:compiler:1.2.0-alpha03 is released. Version 1.2.0-alpha03 contains these commits.

Version 1.2.0-alpha02

January 26, 2022

androidx.compose.compiler:compiler:1.2.0-alpha02 is released. Version 1.2.0-alpha02 contains these commits.

Version 1.2.0-alpha01

January 12, 2022

androidx.compose.compiler:compiler:1.2.0-alpha01 is released. Version 1.2.0-alpha01 contains these commits.

New Features

  • Added support for Kotlin 1.6.10.

Version 1.1

Version 1.1.1

February 23, 2022

androidx.compose.compiler:compiler:1.1.1 is released. Version 1.1.1 contains these commits.

Bug Fixes

Version 1.1.0

February 9, 2022

androidx.compose.compiler:compiler:1.1.0 is released. Version 1.1.0 contains these commits.

Important changes since 1.0.0

  • Stable support for the Android 12 Overscroll effect
  • Improvements to touch target sizing
  • Note that, with respect to Compose 1.0, Material components will expand their layout space to meet Material accessibility guidelines for touch target size. For instance, Button touch target will expand to a minimum size of 48x48dp, even if you set the Button's size to be smaller. This aligns Compose Material to the same behavior of Material Design Components, providing consistent behavior if you mix Views and Compose. This change also ensures that when you create your UI using Compose Material components, minimum requirements for touch target accessibility will be met.
  • Stable support for Navigation Rail
  • Graduates a number of previously experimental APIs to stable
  • Support for newer versions of Kotlin

Version 1.1.0-rc03

January 26, 2022

androidx.compose.compiler:compiler:1.1.0-rc03 is released. Version 1.1.0-rc03 contains these commits.

Bug Fixes

  • Updated to support Compose Material 1.1.0-rc03

Version 1.1.0-rc02

December 16, 2021

androidx.compose.compiler:compiler:1.1.0-rc02 is released. Version 1.1.0-rc02 contains these commits.

Dependency updates

  • Compose Compiler 1.1.0-rc02 is compatible with Kotlin 1.6.10.

Version 1.1.0-rc01

December 15, 2021

androidx.compose.compiler:compiler:1.1.0-rc01 is released. Version 1.1.0-rc01 contains these commits.

Dependency changes

  • Compose Compiler 1.1.0-rc01 is compatible with Kotlin 1.6.0.
  • A compatible 1.6.10 build is available through androidx.dev SNAPSHOTs with buildId 8003490. The following dependency snippet will configure SNAPSHOTs for the Compose Compiler:

    Add the following snippet to the root build.gradle file for your project:

    buildscript {
        repositories {
            google()
            jcenter()
            maven { url 'https://androidx.dev/snapshots/builds/8003490/artifacts/repository' }
        }
    }
    

    Add the following snippet to the build.gradle file for your app or module that uses Compose:

    android {
        composeOptions {
            kotlinCompilerExtensionVersion = "1.2.0-SNAPSHOT"
        }
    }
    

Version 1.1.0-beta04

December 1, 2021

androidx.compose.compiler:compiler:1.1.0-beta04 is released. Version 1.1.0-beta04 contains these commits.

New Features

  • Updated to be compatible with Kotlin 1.6.0

Version 1.1.0-beta03

November 17, 2021

androidx.compose.compiler:compiler:1.1.0-beta03 is released. Version 1.1.0-beta03 contains these commits.

Version 1.1.0-beta02

November 3, 2021

androidx.compose.compiler:compiler:1.1.0-beta02 is released. Version 1.1.0-beta02 contains these commits.

Version 1.1.0-beta01

October 27, 2021

androidx.compose.compiler:compiler:1.1.0-beta01 is released. Version 1.1.0-beta01 contains these commits.

Version 1.1.0-alpha06

October 13, 2021

androidx.compose.compiler:compiler:1.1.0-alpha06 is released. Version 1.1.0-alpha06 contains these commits.

Version 1.1.0-alpha05

September 29, 2021

androidx.compose.compiler:compiler:1.1.0-alpha05 is released. Version 1.1.0-alpha05 contains these commits.

Version 1.1.0-alpha04

September 15, 2021

androidx.compose.compiler:compiler:1.1.0-alpha04 is released. Version 1.1.0-alpha04 contains these commits.

Version 1.1.0-alpha03

September 1, 2021

androidx.compose.compiler:compiler:1.1.0-alpha03 is released. Version 1.1.0-alpha03 contains these commits.

New Features

  • The Compose Compiler now supports older versions of the Compose Runtime (1.0). Prior to this change, the Compose Compiler was only compatible with the Compose Runtime of the same version or later. After this change, the Compose Compiler is compatible with an older version of the Compose Runtime (1.0). (aosp/1796968)
  • Updated Compose 1.1.0-alpha03 to depend on Kotlin 1.5.30. (I74545)

Version 1.1.0-alpha02

August 18, 2021

androidx.compose.compiler:compiler:1.1.0-alpha02 is released. Version 1.1.0-alpha02 contains these commits.

Version 1.1.0-alpha01

August 4, 2021

androidx.compose.compiler:compiler:1.1.0-alpha01 is released. Version 1.1.0-alpha01 contains these commits.

Version 1.0

Version 1.0.5

November 3, 2021

androidx.compose.compiler:compiler:1.0.5 is released. Version 1.0.5 contains these commits.

Bug Fixes

  • Fixed a crash tracking derivedStateOf instances. (aosp/1792247)

Version 1.0.4

October 13, 2021

androidx.compose.compiler:compiler:1.0.4 is released. Version 1.0.4 contains these commits.

Dependency Updates

  • Updated to depend on Kotlin 1.5.31

Version 1.0.3

September 29, 2021

androidx.compose.compiler:compiler:1.0.3 is released. Version 1.0.3 contains these commits.

Dependency Updates

  • Updated to depend on Kotlin 1.5.30

Version 1.0.2

September 1, 2021

androidx.compose.compiler:compiler:1.0.2 is released. Version 1.0.2 contains these commits.

Updated to support the Compose 1.0.2 release. Compose 1.0.2 is still compatible with Kotlin 1.5.21.

Version 1.0.1

August 4, 2021

androidx.compose.compiler:compiler:1.0.1 is released. Version 1.0.1 contains these commits.

Dependency Updates

  • Updated to depend on Kotlin 1.5.21.

Version 1.0.0

July 28, 2021

androidx.compose.compiler:compiler:1.0.0 is released. Version 1.0.0 contains these commits.

Major features of 1.0.0

This is the first stable release of Compose. Please see the official Compose Release blog for more details!

Version 1.0.0-rc02

July 14, 2021

androidx.compose.compiler:compiler:1.0.0-rc02 is released. Version 1.0.0-rc02 contains these commits.

Version 1.0.0-rc01

July 1, 2021

androidx.compose.compiler:compiler:1.0.0-rc01 is released. Version 1.0.0-rc01 contains these commits.

Version 1.0.0-beta09

June 16, 2021

androidx.compose.compiler:compiler:1.0.0-beta09 is released. Version 1.0.0-beta09 contains these commits.

Version 1.0.0-beta08

June 2, 2021

androidx.compose.compiler:compiler:1.0.0-beta08 is released. Version 1.0.0-beta08 contains these commits.

Version 1.0.0-beta07

May 18, 2021

androidx.compose.compiler:compiler:1.0.0-beta07 is released. Version 1.0.0-beta07 contains these commits.

Version 1.0.0-beta06

May 5, 2021

androidx.compose.compiler:compiler:1.0.0-beta06 is released. Version 1.0.0-beta06 contains these commits.

Version 1.0.0-beta05

April 21, 2021

androidx.compose.compiler:compiler:1.0.0-beta05 is released. Version 1.0.0-beta05 contains these commits.

Version 1.0.0-beta04

April 7, 2021

androidx.compose.compiler:compiler:1.0.0-beta04 is released. Version 1.0.0-beta04 contains these commits.

Version 1.0.0-beta03

March 24, 2021

androidx.compose.compiler:compiler:1.0.0-beta03 is released. Version 1.0.0-beta03 contains these commits.

Version 1.0.0-beta02

March 10, 2021

androidx.compose.compiler:compiler:1.0.0-beta02 is released. Version 1.0.0-beta02 contains these commits.

Version 1.0.0-beta01

February 24, 2021

androidx.compose.compiler:compiler:1.0.0-beta01 is released. Version 1.0.0-beta01 contains these commits.

This is the first release of Compose 1.0.0 Beta.

Version 1.0.0-alpha12

February 10, 2021

androidx.compose.compiler:compiler:1.0.0-alpha12 is released. Version 1.0.0-alpha12 contains these commits.

Version 1.0.0-alpha11

January 28, 2021

androidx.compose.compiler:compiler:1.0.0-alpha11 is released. Version 1.0.0-alpha11 contains these commits.

Version 1.0.0-alpha10

January 13, 2021

androidx.compose.compiler:compiler:1.0.0-alpha10 is released. Version 1.0.0-alpha10 contains these commits.

Version 1.0.0-alpha09

December 16, 2020

androidx.compose.compiler:compiler:1.0.0-alpha09 is released. Version 1.0.0-alpha09 contains these commits.

Version 1.0.0-alpha08

December 2, 2020

androidx.compose.compiler:compiler:1.0.0-alpha08 is released. Version 1.0.0-alpha08 contains these commits.

Version 1.0.0-alpha07

November 11, 2020

androidx.compose.compiler:compiler:1.0.0-alpha07 is released. Version 1.0.0-alpha07 contains these commits.

New Features

  • Stability Inference & Propagation. The Compose Compiler Plugin will analyze types it compiles to infer whether or not it is eligible for certain optimizations by the runtime. This inferred result is then synthesized as metadata onto the class to be utilized by the compiler in other modules. Furthermore, the runtime result of these inferences is passed along in metadata passed to composable calls during composition. This necessitated a different metadata protocol for composable functions, which means that composable functions compiled with the alpha07 compiler will not be binary compatible with composable functions compiled with any earlier compiler version. (aosp/1431988)

Version 1.0.0-alpha06

October 28, 2020

androidx.compose.compiler:compiler:1.0.0-alpha06 is released. Version 1.0.0-alpha06 contains these commits.

Version 1.0.0-alpha05

October 14, 2020

androidx.compose.compiler:compiler:1.0.0-alpha05 is released. Version 1.0.0-alpha05 contains these commits.

Version 1.0.0-alpha04

October 1, 2020

androidx.compose.compiler:compiler:1.0.0-alpha04 is released. Version 1.0.0-alpha04 contains these commits.

androidx.compose:compose-compiler has been refactored to androidx.compose.compiler:compiler. This is the first release in the new group.