Compose Compiler

Transforme funções @Composable e ative otimizações com um plug-in do compilador Kotlin.
Atualização mais recente Versão estável Versão candidata a lançamento Versão Beta Versão Alfa
14 de maio de 2024 1.5,14 - - -

Estrutura

O Compose é uma combinação de sete IDs de grupos do Maven no androidx. Os grupos contêm um subconjunto direcionado de funcionalidades, cada um com um conjunto próprio de notas da versão.

Esta tabela explica os grupos e contém links para cada conjunto de notas da versão.

GrupoDescrição
compose.animationCrie animações nos aplicativos Jetpack Compose para enriquecer a experiência do usuário.
compose.compilerTransforme funções @Composable e ative otimizações com um plug-in do compilador Kotlin.
compose.foundationCrie aplicativos do Jetpack Compose com elementos básicos prontos que podem ser usados para criar suas próprias peças de sistema de design.
compose.materialCrie IUs do Jetpack Compose com componentes do Material Design prontos para uso. Este é o ponto de entrada de nível mais alto do Compose, projetado para fornecer componentes que correspondam aos descritos em www.material.io.
compose.material3Crie IUs do Jetpack Compose usando componentes do Material Design 3, a nova versão do Material Design. O Material 3 inclui temas e componentes atualizados, além de recursos de personalização do Material You, como cores dinâmicas, e foi desenvolvido para ser coeso com o novo estilo visual do Android 12 e com a interface do sistema.
compose.runtimeElementos fundamentais do modelo de programação e do gerenciamento de estado do Compose e do ambiente de execução principal do plug-in Compose Compiler.
compose.uiComponentes fundamentais do Compose UI necessários para interagir com o dispositivo, incluindo layout, desenho e entrada.

Declarar dependências

Para adicionar uma dependência ao Compose, adicione o repositório Maven do Google ao seu projeto. Leia Repositório Maven do Google para mais informações.

Adicione as dependências dos artefatos necessários ao arquivo build.gradle do seu app ou módulo:

Groovy

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.14"
    }

    kotlinOptions {
        jvmTarget = "19"
    }
}

Kotlin

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.14"
    }

    kotlinOptions {
        jvmTarget = "19"
    }
}

Para mais informações sobre dependências, consulte Adicionar dependências de build.

Feedback

Seu feedback ajuda a melhorar o Jetpack. Avise se você descobrir novos problemas ou tiver ideias para melhorar esta biblioteca. Consulte os problemas conhecidos nesta biblioteca antes de criar um novo. Adicione seu voto a um problema clicando no botão de estrela.

Criar novo problema

Consulte a documentação do Issue Tracker para saber mais.

Versão 1.5

Versão 1.5.14

14 de maio de 2024

Lançamento de androidx.compose.compiler:compiler:1.5.14 e androidx.compose.compiler:compiler-hosted:1.5.14. A versão 1.5.14 contém estas confirmações.

Esta versão do compilador é destinada ao Kotlin 1.9.24.

Correções de bugs

  • Garantir que o corpo inline seja percebido quando as informações de origem estão desativadas (Idddb8).

Versão 1.5.13

1o de maio de 2024

Lançamento de androidx.compose.compiler:compiler:1.5.13 e androidx.compose.compiler:compiler-hosted:1.5.13. A versão 1.5.13 contém estas confirmações.

Novos recursos

  • A opção de pular forte não é mais considerada experimental e é segura para uso na produção. Esse será o comportamento padrão em uma próxima versão. (I6c8c4).

Correções de bugs

  • A compatibilidade binária para funções @Composable com parâmetros de classe de valor que têm um valor padrão e estão encapsulando um valor não primitivo foi corrigida. (I89465).
  • Correções de upstream para JS e compilação nativa do Compose multiplataforma. Consulte o intervalo de confirmação acima para saber todos os detalhes.

Versão 1.5.12

17 de abril de 2024

Lançamento de androidx.compose.compiler:compiler:1.5.12 e androidx.compose.compiler:compiler-hosted:1.5.12. A versão 1.5.12 contém estas confirmações.

Correções de bugs

  • Foi corrigido um problema com compilação incremental com Kotlin 1.9.23 (Ifca55).
  • Correção de tipos não anuláveis em parâmetros de valor para classes inline não primitivas (Ie6bb5).

Versão 1.5.11

20 de março de 2024

Lançamento de androidx.compose.compiler:compiler:1.5.11 e androidx.compose.compiler:compiler-hosted:1.5.11. A versão 1.5.11 contém estas confirmações.

Anotações

  • A partir dessa versão, o compilador vai chamar startReplaceGroup em vez de startReplacableGroup quando um módulo for compilado com um ambiente de execução que contém esse método. A startReplaceGroup foi introduzida no ambiente de execução do ambiente de execução do Compose 1.7.0-alpha03. As chamadas para startRestartGroup são geradas apenas ao segmentar versões 1.7.0-alpha03 ou mais recentes do ambiente de execução.

  • Chamar startReplaceGroup em vez de startReplaceableGroup permite que o ambiente de execução detecte mudanças com mais eficiência, mas pode afetar a ordem em que elas são detectadas pelo Composer e enviadas para o Applier. Isso pode resultar em mudanças sutis de comportamento se um Applier depender da ordem em que essas operações forem detectadas.

Novos recursos

  • Suporte ao Kotlin 1.9.23

Correções de bugs

  • Os tipos genéricos externos aninhados que eram inferidos são instáveis. (I3437f, b/327643787).
  • Ofereça suporte a vários arquivos de configuração de estabilidade. (I8db14, b/325326744).
  • O Compose Compiler agora transforma corretamente funções substituídas ao percorrer recursivamente classes/substituições de base. (I2c9f9, b/316196500).
  • A memorização de referência de função não pode tentar capturar pais implícitos de declarações locais quando elas não são usadas diretamente. (Ib1267).
  • A geração de código para o lambda cross-inline combinável foi corrigida. Esse bug é difícil de encontrar sem a ativação de "nonSkippingGroup". (Icb2fd, b/325502738).

Versão 1.5.10

21 de fevereiro de 2024

Lançamento de androidx.compose.compiler:compiler:1.5.10 e androidx.compose.compiler:compiler-hosted:1.5.10. A versão 1.5.10 contém estas confirmações.

Correções de bugs

  • Suporte a literais dinâmicos dentro de blocos init. (b/320397488).
  • Use o parâmetro dispatcher para verificar se a função está dentro da classe local (b/323123439).

Versão 1.5.9

7 de fevereiro de 2024

Lançamento de androidx.compose.compiler:compiler:1.5.9 e androidx.compose.compiler:compiler-hosted:1.5.9. A versão 1.5.9 contém estas confirmações.

Correções de bugs

  • Correção de chamadas combináveis no inicializador de objeto anônimo. (b/320261458, 96315c).
  • Conte declarações locais recursivas como capturas. (b/318745941, e7b4b0).
  • Correção do comportamento das mudanças de memória intrínseca relacionadas a referências de método Java forçando .alterado para tipos de função com remember intrínseco (b/319810819, 77128e).
  • Foi adicionada uma otimização experimental que vai remover os grupos em torno de funções que não são puláveis, como explicitamente marcadas como @NonSkippableComposable, e funções que não são implicitamente puláveis, como funções in-line e funções que retornam um valor que não é de unidade, como remember.
  • Essa otimização pode ser ativada transmitindo a opção de plug-in -P plugin:androidx.compose.compiler.plugins.kotlin:nonSkippingGroupOptimization=true para o compilador Kotlin. (I1688f).

Versão 1.5.8

10 de janeiro de 2024

Lançamento de androidx.compose.compiler:compiler:1.5.8 e androidx.compose.compiler:compiler-hosted:1.5.8. A versão 1.5.8 contém estas confirmações.

Novos recursos

  • Suporte ao Kotlin 1.9.22

Correções de bugs

  • Foi corrigido um bug em que o build do Compose Compiler gerava exceções quando criado usando Java21. Os usuários que usam o Compose Compiler do Google Maven, ou seja, não criam por conta própria, nunca foram afetados por esse bug. (b/316644294).
  • O bug em que o erro COMPOSABLE_EXPECTED era relatado para alguns autores de chamadas de lambdas não inline foi corrigido (b/309364913).
  • Foi adicionado um erro de compilação para parâmetros padrão em funções abertas. Antes, ele só era restrito para funções abstratas. No momento, o Compose não oferece suporte à substituição de parâmetros padrão de funções substituídas. A substituição de uma função combinável com parâmetros padrão falhou durante a execução. Use @Suppress("ABSTRACT_COMPOSABLE_DEFAULT_PARAMETER_VALUE") para suprimir, mas observe que substituir essa função sem fornecer um valor padrão para o parâmetro vai resultar em uma falha no momento da execução (b/317490247).
  • Correção de um bug no lembrete intrínseco que impedia a propagação correta de valores. (b/316327367).

Contribuição externa

  • Corrigir erro de digitação na documentação. (osp/288106, link em inglês)

Versão 1.5.7

19 de dezembro de 2023

Lançamento de androidx.compose.compiler:compiler:1.5.7 e androidx.compose.compiler:compiler-hosted:1.5.7. A versão 1.5.7 contém estas confirmações.

Correções de bugs

  • Correção da falha no ambiente de execução do Compose quando o parâmetro da chave remember() invoca uma função combinável (b/315855015).
  • Foi corrigida uma falha no ambiente de execução do Compose quando o return@ era usado. (b/315821171).
  • Evite usar caminhos absolutos em chaves de memorização, o que permite uma melhor utilização do cache de build. (b/313937484).

Versão 1.5.6

6 de dezembro de 2023

Lançamento de androidx.compose.compiler:compiler:1.5.6 e androidx.compose.compiler:compiler-hosted:1.5.6. A versão 1.5.6 contém estas confirmações.

Novos recursos

  • Suporte ao Kotlin 1.9.21

Correções de bugs

  • Ativar o método remember intrínseco: a transformação do compilador que se lembra in-line no plug-in do compilador do Compose e substitui comparações .equals por comparações int do parâmetro meta para parâmetros estáveis. Isso resulta em menos slots sendo usados e menos comparações sendo feitas no ambiente de execução. A opção pode ser desativada fornecendo o argumento do plug-in do compilador: -P plugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=false. (If675f).
  • Foi corrigida a memorização de referências de função adaptadas e argumentos inline. (b/312738720).
  • Criação de grupos ao sair de uma chamada de função inline (b/312242547).

Contribuição externa

  • Foi corrigida uma falha no ambiente de execução do k/native e do k/wasm devido à ausência de uma instrução de retorno em funções combináveis quando essa é a última instrução e retorna uma constante nula (aosp/2835716).

Versão 1.5.5

29 de novembro de 2023

Lançamento de androidx.compose.compiler:compiler:1.5.5 e androidx.compose.compiler:compiler-hosted:1.5.5. A versão 1.5.5 contém estas confirmações.

Correções de bugs

  • Correção de uma falha durante a pesquisa de tipos combináveis substituídos (Ib6d2c, b/297665426).
    • stabilityConfigurationPath foi adicionado a parâmetros conhecidos. Antes, a flag do arquivo de configuração era impedida por bugs. (b/309765121).
    • Correções de memorização (I081d1, I4d7bf).
    • Correção da recomposição contabilizando o estado de parâmetro Indeterminado no remember intrínseco (b/263402091).
    • As informações da linha de depuração para recall intrínseco foram corrigidas (Ic8cf5).
    • Foi corrigida uma falha (falha na redução de IR) durante a pesquisa de tipos combináveis substituídos no tempo de compilação (b/297665426).

Contribuição externa

  • Memorizar referências de funções estáveis com argumentos (I4d7bf, b/302680514).

Versão 1.5.4

7 de novembro de 2023

Lançamento de androidx.compose.compiler:compiler:1.5.4 e androidx.compose.compiler:compiler-hosted:1.5.4. A versão 1.5.4 contém estas confirmações.

Atualizações de dependência

  • O Compose Compiler agora é compatível com o Kotlin 1.9.20

Novos recursos

  • Adicionamos uma opção experimental para ativar o modo de pulo avançado. O modo de salto forte permite que elementos combináveis com parâmetros instáveis sejam ignorados. Além disso, lambdas com capturas instáveis são memorizadas. Este recurso é experimental e não foi considerado pronto para uso em produção. (22421e).
  • Adicione uma sinalização para ativar/desativar informações de origem/rastreamento. (4d45f09).
  • Permitir a configuração da estabilidade de classes externas com um arquivo de configuração. (If40eb).

Correções de bugs

  • Correção da saída antecipada de funções combináveis quando as informações de origem não são coletadas. (fe6267).
  • Correção de continuação das funções combináveis. (948362).
  • A resolução quando funções combináveis são invocadas em uma invocação de função que tem várias sobrecargas que dependem do tipo de retorno da expressão foi corrigida (2d36d0).
  • A memorização quando a referência de função não tem um destinatário de envio foi corrigida. (fc2326).
  • Foi corrigida uma verificação incorreta que impedia a recomposição de lambdas em algumas situações. (db3699).
  • Correção da estabilidade ao compilar de forma incremental entre os módulos. (7d3e127).
  • O escopo do @DontMemoize foi reduzido apenas para expressões lambda. (7a7fa52).
  • Correção de variáveis que não eram capturadas corretamente ao usar uma interface divertida de composição como lambda. (5ae3556).

Contribuição externa

  • Uso do símbolo de igualdade estrutural para comparação numérica e nula (c612a0)

Versão 1.5.3

29 de agosto de 2023

Lançamento de androidx.compose.compiler:compiler:1.5.3, androidx.compose.compiler:compiler-daemon:1.5.3 e androidx.compose.compiler:compiler-hosted:1.5.3. A versão 1.5.3 contém estas confirmações.

Atualização de dependências

  • A versão do Kotlin foi atualizada para 1.9.10.

Versão 1.5.2

23 de agosto de 2023

Lançamento de androidx.compose.compiler:compiler:1.5.2, androidx.compose.compiler:compiler-daemon:1.5.2 e androidx.compose.compiler:compiler-hosted:1.5.2. A versão 1.5.2 contém estas confirmações.

Correções de bugs

  • Insira números de linha para instruções de retorno em funções combináveis de retorno constante. (I42d89).
  • Foi corrigido um vazamento de memória causado pela mudança para o novo ponto de entrada do plug-in do compilador. (4f0a101).
  • Interrompe a transformação de interfaces divertidas não combináveis no compilador do Compose. Isso faz com que as interfaces divertidas sejam processadas da mesma forma que os lambdas, incluindo as regras de memorização. (28b3ce9).
  • Use o tipo de argumento vararg para inferir a estabilidade no site da chamada. (bc83645).

Versão 1.5.1

26 de julho de 2023

Lançamento de androidx.compose.compiler:compiler:1.5.1, androidx.compose.compiler:compiler-daemon:1.5.1 e androidx.compose.compiler:compiler-hosted:1.5.1. A versão 1.5.1 contém estas confirmações.

Correções de bugs

  • Correção dos marcadores de eventos de rastreamento de composição em funções @ReadOnlyComposable com retornos antecipados que causavam corrupção de rastros

Versão 1.5.0

18 de julho de 2023

Lançamento de androidx.compose.compiler:compiler:1.5.0, androidx.compose.compiler:compiler-daemon:1.5.0 e androidx.compose.compiler:compiler-hosted:1.5.0. A versão 1.5.0 contém estas confirmações.

Suporte experimental K2

  • O Compose 1.5.0 oferece suporte experimental ao compilador K2. Alguns recursos do Compose ainda não oferecem suporte ao K2 e serão lançados em versões futuras do compilador.

Mudanças importantes desde a versão 1.4.0

  • A versão do Kotlin foi atualizada para a 1.9.0.
  • Os argumentos nomeados para chamadas de lambda @Composable foram descontinuados. Esse recurso depende de APIs do compilador interno e não terá suporte do K2.
  • Adição de um diagnóstico para verificar a anotação @Composable em chamadas esperadas/reais. Espera-se que as duas declarações tenham anotações correspondentes.

Versão 1.4.8

Versão 1.4.8

28 de junho de 2023

Lançamento de androidx.compose.compiler:compiler:1.4.8, androidx.compose.compiler:compiler-daemon:1.4.8 e androidx.compose.compiler:compiler-hosted:1.4.8. A versão 1.4.8 contém estas confirmações.

Novos recursos

  • A versão de destino do compilador do Kotlin foi alterada para 1.8.22.

Correções de bugs

  • Melhor mensagem de erro para substituições de @Composable. Agora, ele aponta corretamente a incompatibilidade de anotações.
  • Avisa sobre anotações @Composable redundantes em lambdas inline que não podem ser marcadas como combináveis. Esse recurso não terá suporte no compilador K2.

Versão 1.4.7

Versão 1.4.7

3 de maio de 2023

Lançamento de androidx.compose.compiler:compiler:1.4.7, androidx.compose.compiler:compiler-daemon:1.4.7 e androidx.compose.compiler:compiler-hosted:1.4.7. A versão 1.4.7 contém estas confirmações.

Novos recursos

  • Suporte ao Kotlin 1.8.21
  • Adição de versões primitivas da API State, permitindo que valores Int, Long, Float e Double sejam rastreados em objetos State sem incorrer em penalidades para caixas automáticas.

Versão 1.4.6

Versão 1.4.6

19 de abril de 2023

Lançamento de androidx.compose.compiler:compiler:1.4.6, androidx.compose.compiler:compiler-daemon:1.4.6 e androidx.compose.compiler:compiler-hosted:1.4.6. A versão 1.4.6 contém estas confirmações.

Correções de bugs

  • O Compose Compiler agora depende do Java11 (em vez do Java17 exigido pelo Compose Compiler versão 1.4.5) para oferecer melhor suporte a usuários que ainda usam versões mais antigas do Java.

Versão 1.4.5

Versão 1.4.5

12 de abril de 2023

Lançamento de androidx.compose.compiler:compiler:1.4.5, androidx.compose.compiler:compiler-daemon:1.4.5 e androidx.compose.compiler:compiler-hosted:1.4.5. A versão 1.4.5 contém estas confirmações.

OBSERVAÇÃO Este build do Compose Compiler exige que seu ambiente de build use o Java 17+. Com base no feedback dos usuários, vamos descartar esse requisito de volta para o Java 11 e acompanhar com outra versão (1.4.6) para oferecer melhor suporte aos usuários que usam versões mais antigas do Java.

Novos recursos

Suporte ao Kotlin 1.8.20

Correções de bugs

  • Propagação do requisito de substituição do operador de invocação combinável para classes e interfaces que estendem interfaces lambda com anotações correspondentes.f8f2f78a1a769c2373201027f12700e772e4e97e
  • Permite o uso da anotação @Composable no operador getValue e marca o getter gerado para delegado como combinável em IR, para garantir que ele seja corretamente transformado depois. f174f6ee60ca957d5cb6d19a5bd02a88267cdf40
  • Correção do erro de tempo de execução do Compose interno (espera-se que applyChanges() tenha sido chamado) para funções inline.b/274786923
  • Evite capturar ProcessCancelledException, porque ele tem um significado especial no ambiente de desenvolvimento integrado (b/274725600).

Contribuição externa

Versão 1.4.4

Versão 1.4.4

22 de março de 2023

Lançamento de androidx.compose.compiler:compiler:1.4.4, androidx.compose.compiler:compiler-daemon:1.4.4 e androidx.compose.compiler:compiler-hosted:1.4.4. A versão 1.4.4 contém estas confirmações.

Correções de bugs

  • Os retornos de lambda inline combinável foram corrigidos (72172b).
  • Permitir que elementos combináveis retornem Nothing (não gere um erro ao usar TODO em uma função combinável) 3aea8d.

Versão 1.4.3

Versão 1.4.3

22 de fevereiro de 2023

Lançamento de androidx.compose.compiler:compiler:1.4.3. A versão 1.4.3 contém estas confirmações.

Correções de bugs

  • Correção de chamadas condicionais combináveis em argumentos de chamadas combináveis (Ie93edb).

Versão 1.4.2

Versão 1.4.2

8 de fevereiro de 2023

Lançamento de androidx.compose.compiler:compiler:1.4.2. A versão 1.4.2 contém estas confirmações.

Novos recursos

  • Foi adicionado suporte ao Kotlin 1.8.10.

Correções de bugs

  • Foram adicionados grupos ao corpo das lambdas que não podem ser puladas para evitar o bug de recomposição.

Versão 1.4.1

Versão 1.4.1

8 de fevereiro de 2023

Lançamento de androidx.compose.compiler:compiler:1.4.1. A versão 1.4.1 contém estas confirmações.

Correções de bugs

  • Foi desativada a otimização de lembrete intrínseco, que antes causava alguns bugs na geração de código.
  • Foi desativado o lembrete intrínseco em funções que contêm um parâmetro vararg.
  • Foi corrigido o ato incorreto de pular em elementos combináveis com parâmetros padrão.
  • Foi adicionada uma mensagem de erro defensiva substituta em caso de falha na verificação de compatibilidade com o Kotlin.
  • A geração de código para pular foi removida da lambda inline.

Versão 1.4.0

17 de janeiro de 2023

Lançamento de androidx.compose.compiler:compiler:1.4.0. A versão 1.4.0 contém estas confirmações.

Mudanças importantes desde a versão 1.3.0

  • Adição de suporte ao Kotlin 1.8.0.
  • O recurso de lembrete intrínseco foi desativado.
  • A classe de dados Group das ferramentas de interface agora tem um campo isInline, que indica se o grupo é destinado a uma chamada para uma função combinável inline. Se o isInline for true, a chamada vai ser para uma função combinável inline. No entanto, o valor pode ser falso em chamadas para funções combináveis inline que são de módulos compilados com uma versão do plug-in do compilador do Compose que não gera informações sobre a função inline.
  • A ImmutableCollection e os irmãos permanentes dela agora são considerados estáveis.
  • Novo parâmetro em AnimatedContent para o identificador de ferramentas.
  • Correção da geração de código com defeito para lambda inline.

Versão 1.4.0-alpha02

11 de novembro de 2022

Lançamento de androidx.compose.compiler:compiler:1.4.0-alpha02. A versão 1.4.0-alpha02 contém estas confirmações.

Novos recursos

  • Adicionado suporte para Kotlin 1.7.21.

Versão 1.4.0-alpha01

9 de novembro de 2022

Lançamento de androidx.compose.compiler:compiler:1.4.0-alpha01. A versão 1.4.0-alpha01 contém estas confirmações.

Correções de bugs

  • Foi corrigida a capacidade de retornar com antecedência de funções de composição in-line (b/255350755).
  • Foi corrigido o bug na diminuição da isca, que corrompia o suporte ao Kotlin/JS no Compose (6a40f8).

Versão 1.3

Versão 1.3.2

4 de outubro de 2022

Lançamento de androidx.compose.compiler:compiler:1.3.2. A versão 1.3.2 contém estas confirmações.

Novo recurso

  • Esta versão inclui uma atualização para o Kotlin 1.7.20.

Versão 1.3.1

7 de setembro de 2022

Lançamento de androidx.compose.compiler:compiler:1.3.1. A versão 1.3.1 contém estas confirmações.

Correções de bugs

  • Foi corrigido o bug IllegalStateException, em que o compilador do Compose estava marcando erroneamente os tipos de unidade como elementos combináveis em algumas circunstâncias (b/237863365).
  • Agora, os usuários precisam especificar a versão do Kotlin que preferirem ao suprimir a verificação da versão do compilador (I9e5e2).

Versão 1.3.0

10 de agosto de 2022

Lançamento de androidx.compose.compiler:compiler:1.3.0. A versão 1.3.0 contém estas confirmações.

Versão 1.3.0-rc02

3 de agosto de 2022

Lançamento de androidx.compose.compiler:compiler:1.3.0-rc02. A versão 1.3.0-rc02 contém estas confirmações.

Versão 1.3.0-rc01

27 de julho de 2022

Lançamento de androidx.compose.compiler:compiler:1.3.0-rc01. A versão 1.3.0-rc01 contém estas confirmações.

Versão 1.3.0-beta01

20 de julho de 2022

Lançamento de androidx.compose.compiler:compiler:1.3.0-beta01. A versão 1.3.0-beta01 contém estas confirmações.

Novos recursos

  • Adicionado suporte para Kotlin 1.7.10.

Versão 1.2

Versão 1.2.0

29 de junho de 2022

Lançamento de androidx.compose.compiler:compiler:1.2.0. A versão 1.2.0 contém estas confirmações.

Mudanças importantes desde a 1.1.0

Versão 1.2.0-rc02

22 de junho de 2022

Lançamento de androidx.compose.compiler:compiler:1.2.0-rc02. A versão 1.2.0-rc02 contém estas confirmações.

Correções de bugs

  • A geração de código de elementos de composição do evento de rastreamento foi removida (aosp/2127922).

Versão 1.2.0-rc01

15 de junho de 2022

Lançamento de androidx.compose.compiler:compiler:1.2.0-rc01. A versão 1.2.0-rc01 contém estas confirmações.

Versão 1.2.0-beta03

1º de junho de 2022

Lançamento de androidx.compose.compiler:compiler:1.2.0-beta03. A versão 1.2.0-beta03 contém estas confirmações.

Versão 1.2.0-beta02

18 de maio de 2022

Lançamento de androidx.compose.compiler:compiler:1.2.0-beta02. A versão 1.2.0-beta02 contém estas confirmações.

Versão 1.2.0-beta01

11 de maio de 2022

Lançamento de androidx.compose.compiler:compiler:1.2.0-beta01. A versão 1.2.0-beta01 contém estas confirmações.

  • Esta é a primeira versão Beta da 1.2. Não há mudanças desde a última versão Alfa.

Novos recursos

  • Adicionado suporte para Kotlin 1.6.21.

Versão 1.2.0-alpha08

20 de abril de 2022

Lançamento de androidx.compose.compiler:compiler:1.2.0-alpha08. A versão 1.2.0-alpha08 contém estas confirmações.

Versão 1.2.0-alpha07

6 de abril de 2022

Lançamento de androidx.compose.compiler:compiler:1.2.0-alpha07. A versão 1.2.0-alpha07 contém estas confirmações.

Versão 1.2.0-alpha06

23 de março de 2022

Lançamento de androidx.compose.compiler:compiler:1.2.0-alpha06. A versão 1.2.0-alpha06 contém estas confirmações.

Versão 1.2.0-alpha05

9 de março de 2022

Lançamento de androidx.compose.compiler:compiler:1.2.0-alpha05. A versão 1.2.0-alpha05 contém estas confirmações.

Versão 1.2.0-alpha04

23 de fevereiro de 2022

Lançamento de androidx.compose.compiler:compiler:1.2.0-alpha04. A versão 1.2.0-alpha04 contém estas confirmações.

Versão 1.2.0-alpha03

9 de fevereiro de 2022

Lançamento de androidx.compose.compiler:compiler:1.2.0-alpha03. A versão 1.2.0-alpha03 contém estas confirmações.

Versão 1.2.0-alpha02

26 de janeiro de 2022

Lançamento de androidx.compose.compiler:compiler:1.2.0-alpha02. A versão 1.2.0-alpha02 contém estas confirmações.

Versão 1.2.0-alpha01

12 de janeiro de 2022

Lançamento de androidx.compose.compiler:compiler:1.2.0-alpha01. A versão 1.2.0-alpha01 contém estas confirmações.

Novos recursos

  • Suporte para Kotlin 1.6.10 adicionado.

Versão 1.1

Versão 1.1.1

23 de fevereiro de 2022

Lançamento de androidx.compose.compiler:compiler:1.1.1. A versão 1.1.1 contém estas confirmações.

Correções de bugs

  • A NullPointerException em androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList foi corrigida (aosp/1947059, b/206677462).
  • A falha causada pelo conteúdo da área de transferência durante a leitura no Android foi corrigida (I06020, b/197769306).
  • RTL corrigido no elemento LazyVerticalGrid (aosp/1931080, b/207510535).

Versão 1.1.0

9 de fevereiro de 2022

Lançamento de androidx.compose.compiler:compiler:1.1.0. A versão 1.1.0 contém estas confirmações.

Mudanças importantes desde a versão 1.0.0

  • Versão estável do efeito de rolagem do Android 12.
  • Melhorias no dimensionamento da área de toque.
  • Em relação ao Compose 1.0, os componentes do Material Design aumentam o espaço de layout para atender ao tamanho da área de toque das diretrizes de acessibilidade (em inglês) do Material Design. Por exemplo, a área de toque do botão será expandida para um tamanho mínimo de 48x48dp, mesmo que você defina um tamanho menor. Isso alinha o Compose Material ao mesmo comportamento dos componentes do Material Design para que haja consistência caso você combine visualizações e o Compose. Essa mudança também garante que, ao criar a interface usando os componentes do Compose Material, os requisitos mínimos para a acessibilidade da área de toque sejam atendidos.
  • Versão estável da coluna de navegação.
  • Upgrade de várias APIs anteriormente experimentais para a versão estável.
  • Compatibilidade com as versões mais recentes do Kotlin.

Versão 1.1.0-rc03

26 de janeiro de 2022

Lançamento de androidx.compose.compiler:compiler:1.1.0-rc03. A versão 1.1.0-rc03 contém estas confirmações.

Correções de bugs

  • Atualização para oferecer suporte ao Compose Material 1.1.0-rc03.

Versão 1.1.0-rc02

16 de dezembro de 2021

Lançamento de androidx.compose.compiler:compiler:1.1.0-rc02. A versão 1.1.0-rc02 contém estas confirmações.

Atualizações de dependência

  • O Compose Compiler 1.1.0-rc02 é compatível com o Kotlin 1.6.10.

Versão 1.1.0-rc01

15 de dezembro de 2021

Lançamento de androidx.compose.compiler:compiler:1.1.0-rc01. A versão 1.1.0-rc01 contém estas confirmações.

Mudanças na dependência

  • O Compose Compiler 1.1.0-rc01 é compatível com o Kotlin 1.6.0.
  • Um build 1.6.10 compatível está disponível pelos SNAPSHOTs do androidx.dev com buildId 8003490. O snippet de dependência a seguir fará a configuração do SNAPSHOT para o Compose Compiler:

    Adicione o seguinte snippet ao arquivo raiz build.gradle do seu projeto:

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

    Adicione o seguinte snippet ao arquivo build.gradle para seu app ou módulo que usa o Compose:

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

Versão 1.1.0-beta04

1º de dezembro de 2021

Lançamento de androidx.compose.compiler:compiler:1.1.0-beta04. A versão 1.1.0-beta04 contém estas confirmações.

Novos recursos

  • Foi adicionada compatibilidade com o Kotlin 1.6.0.

Versão 1.1.0-beta03

17 de novembro de 2021

Lançamento de androidx.compose.compiler:compiler:1.1.0-beta03. A versão 1.1.0-beta03 contém estas confirmações.

Versão 1.1.0-beta02

3 de novembro de 2021

Lançamento de androidx.compose.compiler:compiler:1.1.0-beta02. A versão 1.1.0-beta02 contém estas confirmações.

Versão 1.1.0-beta01

27 de outubro de 2021

Lançamento de androidx.compose.compiler:compiler:1.1.0-beta01. A versão 1.1.0-beta01 contém estas confirmações.

Versão 1.1.0-alpha06

13 de outubro de 2021

Lançamento de androidx.compose.compiler:compiler:1.1.0-alpha06. A versão 1.1.0-alpha06 contém estas confirmações.

Versão 1.1.0-alpha05

29 de setembro de 2021

Lançamento de androidx.compose.compiler:compiler:1.1.0-alpha05. A versão 1.1.0-alpha05 contém estas confirmações.

Versão 1.1.0-alpha04

15 de setembro de 2021

Lançamento de androidx.compose.compiler:compiler:1.1.0-alpha04. A versão 1.1.0-alpha04 contém estas confirmações.

Versão 1.1.0-alpha03

1º de setembro de 2021

Lançamento de androidx.compose.compiler:compiler:1.1.0-alpha03. A versão 1.1.0-alpha03 contém estas confirmações.

Novos recursos

  • O Compose Compiler agora oferece suporte a versões mais antigas do Compose Runtime (1.0). Antes dessa mudança, o Compose Compiler era compatível apenas com versões iguais ou mais recentes do Compose Runtime. Agora, o Compose Compiler é compatível com uma versão mais antiga do Compose Runtime (1.0) (aosp/1796968).
  • O Compose 1.1.0-alpha03 foi atualizado para depender do Kotlin 1.5.30 (I74545).

Versão 1.1.0-alpha02

18 de agosto de 2021

Lançamento de androidx.compose.compiler:compiler:1.1.0-alpha02. A versão 1.1.0-alpha02 contém estas confirmações.

Versão 1.1.0-alpha01

4 de agosto de 2021

Lançamento de androidx.compose.compiler:compiler:1.1.0-alpha01. A versão 1.1.0-alpha01 contém estas confirmações.

Versão 1.0

Versão 1.0.5

3 de novembro de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.5. A versão 1.0.5 contém estas confirmações.

Correções de bugs

  • Uma falha de rastreamento de instâncias derivedStateOf foi corrigida (aosp/1792247).

Versão 1.0.4

13 de outubro de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.4. A versão 1.0.4 contém estas confirmações.

Atualizações de dependência

  • Atualização para depender do Kotlin 1.5.31.

Versão 1.0.3

29 de setembro de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.3. A versão 1.0.3 contém estas confirmações.

Atualizações de dependência

  • Atualização para depender do Kotlin 1.5.30.

Versão 1.0.2

1º de setembro de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.2. A versão 1.2.0 contém estas confirmações.

Atualização para aceitar a versão 1.0.2 do Compose. O Compose 1.0.2 ainda é compatível com o Kotlin 1.5.21.

Versão 1.0.1

4 de agosto de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.1. A versão 1.0.1 contém estas confirmações.

Atualizações de dependência

  • Atualização para depender do Kotlin 1.5.21.

Versão 1.0.0

28 de julho de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.0. A versão 1.0.0 contém estas confirmações.

Principais recursos da versão 1.0.0

Esta é a primeira versão estável do Compose. Veja mais detalhes no blog oficial de versões do Compose (em inglês).

Versão 1.0.0-rc02

14 de julho de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.0-rc02. A versão 1.0.0-rc02 contém estas confirmações:

Versão 1.0.0-rc01

1º de julho de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.0-rc01. A versão 1.1.0-rc01 contém estas confirmações.

Versão 1.0.0-beta09

16 de junho de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.0-beta09. A versão 1.0.0-beta09 contém estas confirmações.

Versão 1.0.0-beta08

2 de junho de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.0-beta08. A versão 1.0.0-beta08 contém estas confirmações.

Versão 1.0.0-beta07

18 de maio de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.0-beta07. A versão 1.0.0-beta07 contém estas confirmações.

Versão 1.0.0-beta06

5 de maio de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.0-beta06. A versão 1.0.0-beta06 contém estas confirmações.

Versão 1.0.0-beta05

21 de abril de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.0-beta05. A versão 1.0.0-beta05 contém estas confirmações.

Versão 1.0.0-beta04

7 de abril de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.0-beta04. A versão 1.0.0-beta04 contém estas confirmações (link em inglês).

Versão 1.0.0-beta03

24 de março de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.0-beta03. A versão 1.0.0-beta03 contém estas confirmações.

Versão 1.0.0-beta02

10 de Março de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.0-beta02. A versão 1.0.0-beta02 contém estas confirmações.

Versão 1.0.0-beta01

24 de fevereiro de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.0-beta01. A versão 1.0.0-beta01 contém estas confirmações.

Esta é a primeira versão do Compose 1.0.0 Beta.

Versão 1.0.0-alpha12

10 de fevereiro de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.0-alpha12. A versão 1.0.0-alpha12 contém estas confirmações.

Versão 1.0.0-alpha11

28 de janeiro de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.0-alpha11. A versão 1.0.0-alpha11 contém estas confirmações.

Versão 1.0.0-alpha10

13 de janeiro de 2021

Lançamento de androidx.compose.compiler:compiler:1.0.0-alpha10. A versão 1.0.0-alpha10 contém estas confirmações.

Versão 1.0.0-alpha09

16 de dezembro de 2020

Lançamento de androidx.compose.compiler:compiler:1.0.0-alpha09. A versão 1.0.0-alpha09 contém estas confirmações.

Versão 1.0.0-alpha08

2 de dezembro de 2020

Lançamento de androidx.compose.compiler:compiler:1.0.0-alpha08. A versão 1.0.0-alpha08 contém estas confirmações.

Versão 1.0.0-alpha07

11 de novembro de 2020

Lançamento de androidx.compose.compiler:compiler:1.0.0-alpha07. A versão 1.0.0-alpha07 contém estas confirmações.

Novos recursos

  • Inferência e propagação de estabilidade. O plug-in do Compose Compiler analisa os tipos que ele compila para inferir se estão qualificados para determinadas otimizações do ambiente de execução. Esse resultado inferido é sintetizado como metadados na classe a ser utilizada pelo compilador em outros módulos. Além disso, o resultado do ambiente de execução dessas inferências é transmitido nos metadados encaminhados às chamadas durante a composição. Isso exigiu um protocolo de metadados diferente para funções de composição, o que significa que funções desse tipo compiladas com o compilador alpha07 não são compatíveis binárias com as funções de composição compiladas com qualquer versão anterior do compilador (aosp/1431988).

Versão 1.0.0-alpha06

28 de outubro de 2020

Lançamento de androidx.compose.compiler:compiler:1.0.0-alpha06. A versão 1.0.0-alpha06 contém estas confirmações.

Versão 1.0.0-alpha05

14 de outubro de 2020

Lançamento de androidx.compose.compiler:compiler:1.0.0-alpha05. A versão 1.0.0-alpha05 contém estas confirmações.

Versão 1.0.0-alpha04

1º de outubro de 2020

Lançamento de androidx.compose.compiler:compiler:1.0.0-alpha04. A versão 1.0.0-alpha04 contém estas confirmações.

androidx.compose:compose-compiler foi refatorado para androidx.compose.compiler:compiler. Esta é a primeira versão do novo grupo.