Compiler erstellen

@Composable-Funktionen transformieren und Optimierungen mit einem Kotlin-Compiler-Plug-in aktivieren.
Letzte Aktualisierung Stabile Version Releasekandidat Beta-Ausgabe Alpharelease
7. August 2024 1.5.15 - -

Struktur

Compose besteht aus sieben Maven-Gruppen-IDs innerhalb von androidx. Jede Gruppe enthält eine ausgewählte Teilmenge von Funktionen, jede mit ihren eigenen Release-Sätzen Notizen.

In dieser Tabelle werden die Gruppen und Links zu den einzelnen Versionshinweisen erläutert.

GruppeBeschreibung
compose.animation:Animationen in den Jetpack Compose-Anwendungen erstellen, um die User Experience zu bereichern
compose.compiler@Composable-Funktionen transformieren und Optimierungen mit einem Kotlin-Compiler-Plug-in aktivieren.
compose.foundationSchreiben Sie Jetpack Compose-Anwendungen mit gebrauchsfertigen Bausteinen und erweitern Sie die Grundlage für den Aufbau Ihrer eigenen Designsysteme.
compose.materialJetpack Compose-UIs mit einsatzbereiten Material Design-Komponenten erstellen Dies ist der übergeordnete Einstiegspunkt von Compose. Hier werden Komponenten bereitgestellt, die den unter www.material.io beschriebenen Komponenten entsprechen.
compose.material3 einfügenJetpack Compose-UIs mit Material Design 3 Components erstellen, der nächsten Entwicklung des Material Design Material 3 enthält aktualisierte Designs und Komponenten sowie Funktionen zur Personalisierung von Material You wie dynamische Farben. Das Produkt wurde so entwickelt, dass es zum visuellen Stil und zur System-UI von Android 12 passt.
compose.runtimeGrundlegende Bausteine des Programmiermodells und der Statusverwaltung von Compose sowie die zentrale Laufzeit für das Compose-Compiler-Plug-in.
compose.uiGrundlegende Komponenten der Benutzeroberfläche zum Schreiben von E-Mails, die für die Interaktion mit dem Gerät erforderlich sind, darunter Layout, Zeichnen und Eingabe

Abhängigkeiten deklarieren

Wenn Sie eine Abhängigkeit von Compose hinzufügen möchten, müssen Sie das Maven-Repository von Google zu Ihrem Projekt arbeiten. Maven-Repository von Google lesen .

Fügen Sie der Datei build.gradle die Abhängigkeiten für die Artefakte hinzu, die Sie benötigen Ihre App oder Ihr Modul:

Groovig

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"
    }
}

Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.

Feedback

Dein Feedback hilft uns, Jetpack zu verbessern. Teilen Sie uns mit, wenn Sie neue Ausgaben entdecken oder zur Verbesserung dieser Bibliothek. In der bestehende Probleme in dieser Bibliothek, bevor Sie eine neue erstellen. So können Sie zu einem vorhandenen Problem abstimmen: indem Sie auf die Sternschaltfläche klicken.

Neues Problem erstellen

Weitere Informationen finden Sie in der Dokumentation zur Problemverfolgung. .

Version 1.5

Version 1.5.15

7. August 2024

androidx.compose.compiler:compiler:1.5.15 und androidx.compose.compiler:compiler-hosted:1.5.15 wurden veröffentlicht. Version 1.5.15 enthält diese Commits.

  • Diese Compiler-Version ist auf Kotlin 1.9.25 ausgerichtet.

Version 1.5.14

14. Mai 2024

androidx.compose.compiler:compiler:1.5.14 und androidx.compose.compiler:compiler-hosted:1.5.14 wurden veröffentlicht. Version 1.5.14 enthält diese Commits.

Diese Compiler-Version ist auf Kotlin 1.9.24 ausgerichtet.

Fehlerkorrekturen

  • Achten Sie darauf, dass der Inline-Text erkannt wird, wenn die Quellinformationen deaktiviert sind. (Idddb8)

Version 1.5.13

1. Mai 2024

androidx.compose.compiler:compiler:1.5.13 und androidx.compose.compiler:compiler-hosted:1.5.13 wurden veröffentlicht. Version 1.5.13 enthält diese Commits.

Neue Funktionen

  • Starkes Überspringen wird nicht mehr als experimentell betrachtet und ist in der Produktion sicher. Sie wird in einem zukünftigen Release zum Standardverhalten. (I6c8c4)

Fehlerkorrekturen

  • Die Binärkompatibilität von @Composable-Funktionen mit Wertklassenparametern wurde korrigiert, die einen Standardwert haben und einen nicht primitiven Wert einschließen. (I89465
  • Upstream-Fehlerbehebungen für die JS-Kompilierung und native Kompilierung aus Compose Multiplatform. Ausführliche Informationen finden Sie oben im Commit-Bereich.

Version 1.5.12

17. April 2024

androidx.compose.compiler:compiler:1.5.12 und androidx.compose.compiler:compiler-hosted:1.5.12 wurden veröffentlicht. Version 1.5.12 enthält diese Commits.

Fehlerkorrekturen

  • Ein Problem mit der inkrementellen Kompilierung mit Kotlin 1.9.23 wurde behoben. (Ifca55)
  • Typen in Wertparametern für nicht primitive Inline-Klassen wurden korrigiert, die keine Nullwerte zulassen können. (Ie6bb5)

Version 1.5.11

20. März 2024

androidx.compose.compiler:compiler:1.5.11 und androidx.compose.compiler:compiler-hosted:1.5.11 wurden veröffentlicht. Version 1.5.11 enthält diese Commits.

Notes

  • Ab dieser Version ruft der Compiler jetzt startReplaceGroup anstelle von startReplacableGroup auf, wenn ein Modul mit einer Laufzeit kompiliert wird, die diese Methode enthält. startReplaceGroup wurde in der Laufzeit in Laufzeit erstellen1.7.0-alpha03 eingeführt. startRestartGroup-Aufrufe werden nur generiert, wenn ein Targeting auf 1.7.0-alpha03- oder höher-Versionen der Laufzeit erfolgt.

  • Wenn startReplaceGroup anstelle von startReplaceableGroup aufgerufen wird, kann die Laufzeit Änderungen effizienter erkennen. Dies kann sich jedoch auf die Reihenfolge auswirken, in der Änderungen von Composer erkannt und an Applier gesendet werden. Dies kann zu geringfügigen Verhaltensänderungen führen, wenn ein Applier von der Reihenfolge abhängt, in der diese Vorgänge erkannt werden.

Neue Funktionen

  • Unterstützung für Kotlin 1.9.23

Fehlerkorrekturen

  • Probleme mit verschachtelten externen generischen Typen beheben, die aus der abgeleiteten Instabile (Instable) stammen (I3437f, b/327643787)
  • Unterstützung mehrerer Stabilitätskonfigurationsdateien (I8db14, b/325326744)
  • „Compose Compiler“ transformiert jetzt überschriebene Funktionen korrekt, indem Basisklassen/Überschreibungen rekursiv durchlaufen werden. (I2c9f9, b/316196500)
  • Achten Sie darauf, dass bei der Erinnerung von Funktionsreferenzen nicht versucht wird, implizite übergeordnete Elemente lokaler Deklarationen zu erfassen, wenn sie nicht direkt verwendet werden. (Ib1267)
  • Die Codegenerierung für zusammensetzbare Crossinline-Lambda wurde korrigiert. Ohne aktivierte „nonSkippingGroupOptimization“ ist dieser Fehler schwer zu finden. (Icb2fd, b/325502738)

Version 1.5.10

21. Februar 2024

androidx.compose.compiler:compiler:1.5.10 und androidx.compose.compiler:compiler-hosted:1.5.10 wurden veröffentlicht. Version 1.5.10 enthält diese Commits.

Fehlerkorrekturen

  • Live-Literale in Init-Blöcken werden unterstützt. (b/320397488)
  • Verwenden Sie den Dispatcher-Parameter, um zu prüfen, ob sich die Funktion innerhalb der lokalen Klasse befindet (b/323123439).

Version 1.5.9

7. Februar 2024

androidx.compose.compiler:compiler:1.5.9 und androidx.compose.compiler:compiler-hosted:1.5.9 wurden veröffentlicht. Version 1.5.9 enthält diese Commits.

Fehlerkorrekturen

  • Probleme mit zusammensetzbaren Aufrufen im anonymen Objektinitialisierer beheben (b/320261458, 96315c)
  • Rekursive lokale Deklarationen werden als Captures gezählt. (b/318745941, e7b4b0)
  • Das Verhalten von intrinsischen Erinnerungsänderungen in Bezug auf Java-Methodenreferenzen wurde behoben, indem für Funktionstypen mit intrinsischem Erinnerung .changed erzwungen wurde. (b/319810819, 77128e)
  • Es wurde eine experimentelle Optimierung hinzugefügt, mit der Gruppen von Funktionen entfernt werden, die nicht überspringbar sind und zum Beispiel explizit als @NonSkippableComposable gekennzeichnet sind, sowie Funktionen, die implizit nicht überspringbar sind, wie z. B. Inline-Funktionen und Funktionen, die einen Nicht-Einheit-Wert wie remember zurückgeben.
  • Sie können diese Optimierung aktivieren, indem Sie die Plug-in-Option übergeben, -P plugin:androidx.compose.compiler.plugins.kotlin:nonSkippingGroupOptimization=true Kotlin-Compiler hinzu. (I1688f)

Version 1.5.8

10. Januar 2024

androidx.compose.compiler:compiler:1.5.8 und androidx.compose.compiler:compiler-hosted:1.5.8 wurden veröffentlicht. Version 1.5.8 enthält diese Commits.

Neue Funktionen

  • Unterstützung für Kotlin 1.9.22

Fehlerkorrekturen

  • Es wurde ein Fehler behoben, bei dem der Build Compiler beim Erstellen mit Java21 Ausnahmen auslöste. Nutzer, die den Compose Compiler von Google Maven verwenden (und ihn nicht selbst erstellen), waren von diesem Fehler nie betroffen. (b/316644294)
  • Es wurde ein Fehler behoben, bei dem für einige Aufrufer von nicht Inline-Lambdas der Fehler COMPOSABLE_EXPECTED gemeldet wurde. (b/309364913)
  • Fügen Sie einen Kompilierungsfehler für Standardparameter in offenen Funktionen hinzu. Zuvor war dies nur für abstrakte Funktionen eingeschränkt. Compose unterstützt derzeit nicht das Ersetzen von Standardparametern durch überschriebene Funktionen und das Überschreiben einer zusammensetzbaren Funktion mit Standardparametern trat zur Laufzeit auf. Verwenden Sie @Suppress("ABSTRACT_COMPOSABLE_DEFAULT_PARAMETER_VALUE"), um sie zu unterdrücken. Beachten Sie jedoch, dass das Überschreiben einer solchen Funktion ohne Angabe eines Standardwerts für den Parameter zu einem Absturz während der Laufzeit führt.(b/317490247)
  • Es wurde ein Fehler im intrinsischen Merken behoben, der verhinderte, dass Werte korrekt weitergegeben wurden. (b/316327367)

Externer Beitrag

  • Tippfehler in der Dokumentation korrigiert. (aosp/288106)

Version 1.5.7

19. Dezember 2023

androidx.compose.compiler:compiler:1.5.7 und androidx.compose.compiler:compiler-hosted:1.5.7 wurden veröffentlicht. Version 1.5.7 enthält diese Commits.

Fehlerkorrekturen

  • Absturz beim Schreiben der Laufzeit behoben, wenn der Schlüsselparameter remember() eine zusammensetzbare Funktion aufruft (b/315855015)
  • Der Absturz bei der Schreiblaufzeit bei Verwendung von return@ wurde behoben. (b/315821171)
  • Vermeiden Sie die Verwendung absoluter Pfade in Erinnerungsschlüsseln, da dies eine bessere Build-Cache-Auslastung ermöglicht. (b/313937484)

Version 1.5.6

6. Dezember 2023

androidx.compose.compiler:compiler:1.5.6 und androidx.compose.compiler:compiler-hosted:1.5.6 wurden veröffentlicht. Version 1.5.6 enthält diese Commits.

Neue Funktionen

  • Unterstützung für Kotlin 1.9.21

Fehlerkorrekturen

  • Aktiviert das intrinsische Merken: Die Compiler-Transformation, die sich im Compose-Compiler-Plug-in speichert und .equals-Vergleiche durch Int-Vergleiche des Parameters meta für stabile Parameter ersetzt. Dies führt dazu, dass weniger Slots verwendet werden und während der Laufzeit weniger Vergleiche durchgeführt werden. Die Option kann deaktiviert werden, indem das Compiler-Plug-in-Argument -P plugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=false angegeben wird. (If675f)
  • Das Merken angepasster Funktionsverweise und Inline-Argumente wurde korrigiert. (b/312738720)
  • Gruppen beim Beenden des Inline-Funktionsaufrufs realisieren (b/312242547)

Externer Beitrag

  • Fehler bei k/native- und k/wasm-Laufzeitabsturz aufgrund fehlender "return"-Anweisung in zusammensetzbaren Funktionen beheben, wenn dies die letzte Anweisung ist und eine Null-Const-Anweisung zurückgibt (aosp/2835716)

Version 1.5.5

29. November 2023

androidx.compose.compiler:compiler:1.5.5 und androidx.compose.compiler:compiler-hosted:1.5.5 wurden veröffentlicht. Version 1.5.5 enthält diese Commits.

Fehlerkorrekturen

  • Absturz beim Suchen überschriebener zusammensetzbarer Typen (Ib6d2c, b/297665426) wurde behoben.
    • stabilityConfigurationPath zu bekannten Parametern hinzufügen (zuvor konnte aufgrund eines Fehlers die Verwendung des Flags für die Konfigurationsdatei verhindert werden). (b/309765121)
    • Fehlerkorrekturen bei der Erinnerung (I081d1, I4d7bf)
    • Korrektur der Neuzusammensetzung durch Berücksichtigung des Status des unsicheren Parameters im intrinsischen Erinnerungsvermögen (b/263402091)
    • Debugging-Zeileninformationen für das unveränderliche Erinnern korrigieren (Ic8cf5)
    • Absturz (IR-Senkung fehlgeschlagen) bei der Suche nach überschriebenen zusammensetzbaren Typen zum Kompilieren beheben (b/297665426)

Externer Beitrag

Version 1.5.4

7. November 2023

androidx.compose.compiler:compiler:1.5.4 und androidx.compose.compiler:compiler-hosted:1.5.4 wurden veröffentlicht. Version 1.5.4 enthält diese Commits.

Aktualisierung der Abhängigkeiten

  • Der Compose Compiler ist jetzt mit Kotlin 1.9.20 kompatibel.

Neue Funktionen

  • Fügen Sie eine Testoption hinzu, um den Modus zum starken Überspringen zu aktivieren. Im starken Überspringen-Modus können zusammensetzbare Funktionen mit instabilen Parametern übersprungen werden. Außerdem werden Lambdas mit instabilen Aufnahmen gespeichert. Diese Funktion ist experimentell und nicht für die Produktion bereit. (22421e)
  • Flag zum Aktivieren/Deaktivieren von Quell-/Trace-Informationen hinzufügen. (4d45f09)
  • Ermöglicht das Konfigurieren der Stabilität externer Klassen über eine Konfigurationsdatei. (If40eb)

Fehlerkorrekturen

  • Das vorzeitige Beenden von zusammensetzbaren Funktionen wurde korrigiert, wenn keine Quellinformationen erfasst wurden. (fe6267)
  • Korrigieren Sie den Vorgang von zusammensetzbaren Funktionen. (948362)
  • Problembehebung, wenn zusammensetzbare Funktionen innerhalb eines Funktionsaufrufs mit mehreren Überlastungen aufgerufen werden, die vom Rückgabetyp des Ausdrucks abhängen. (2d36d0)
  • Die Erinnerung wurde korrigiert, wenn die Funktionsreferenz keinen Weiterleitungsempfänger hat. (fc2326)
  • Eine „schmutzige Prüfung“ wurde behoben, die in einigen Situationen die Neuzusammensetzung von Lambdas verhinderte. (db3699)
  • Stabilität bei inkrementeller Kompilierung über Module hinweg wurde korrigiert. (7d3e127)
  • Den Bereich von @DontMemoize auf Lambda-Ausdrücke beschränken. (7a7fa52)
  • Sie können Variablen korrigieren, die nicht korrekt erfasst wurden, wenn eine zusammensetzbare Fun-Schnittstelle als Lambda verwendet wird. (5ae3556)

Externer Beitrag

  • Strukturelles Gleichheitssymbol für numerischen Vergleich und Nullvergleich verwenden (c612a0)

Version 1.5.3

29. August 2023

androidx.compose.compiler:compiler:1.5.3, androidx.compose.compiler:compiler-daemon:1.5.3 und androidx.compose.compiler:compiler-hosted:1.5.3 wurden veröffentlicht. Version 1.5.3 enthält diese Commits.

Aktualisierung der Abhängigkeit

  • Die Kotlin-Version wurde auf 1.9.10 aktualisiert.

Version 1.5.2

23. August 2023

androidx.compose.compiler:compiler:1.5.2, androidx.compose.compiler:compiler-daemon:1.5.2 und androidx.compose.compiler:compiler-hosted:1.5.2 wurden veröffentlicht. Version 1.5.2 enthält diese Commits.

Fehlerkorrekturen

  • Fügen Sie Zeilennummern für „return“-Anweisungen in zusammensetzbare Funktionen mit konstanter Rückgabe ein. (I42d89)
  • Ein Speicherleck wurde behoben, das durch den Wechsel zum neuen Compiler-Plug-in-Einstiegspunkt verursacht wurde. (4f0a101)
  • Beenden Sie die Transformation nicht zusammensetzbarer, sparsamer Schnittstellen im Compose-Compiler. Dadurch werden lustige Schnittstellen genauso behandelt wie Lambdas, einschließlich der Erinnerungsregeln. (28b3ce9)
  • Verwenden Sie den Argumenttyp „vararg“, um die Stabilität auf der Aufrufwebsite abzuleiten. (bc83645)

Version 1.5.1

26. Juli 2023

androidx.compose.compiler:compiler:1.5.1, androidx.compose.compiler:compiler-daemon:1.5.1 und androidx.compose.compiler:compiler-hosted:1.5.1 wurden veröffentlicht. Version 1.5.1 enthält diese Commits.

Fehlerkorrekturen

  • Die Markierung von Kompositions-Trace-Ereignismarkierungen in @ReadOnlyComposable-Funktionen mit frühen Rückgaben, die zu einer Trace-Beschädigung führten, wurde behoben.

Version 1.5.0

18. Juli 2023

androidx.compose.compiler:compiler:1.5.0, androidx.compose.compiler:compiler-daemon:1.5.0 und androidx.compose.compiler:compiler-hosted:1.5.0 wurden veröffentlicht. Version 1.5.0 enthält diese Commits.

Experimentelle K2-Unterstützung

  • Der Compose-Compiler 1.5.0 bietet experimentelle Unterstützung für den K2-Compiler. Einige Compose-Funktionen werden von K2 noch nicht unterstützt und sind in zukünftigen Versionen des Compilers verfügbar.

Wichtige Änderungen seit Version 1.4.0

  • Die Kotlin-Version wurde auf 1.9.0 aktualisiert.
  • Benannte Argumente für Lambda-Aufrufe vom Typ @Composable wurden eingestellt. Diese Funktion basiert auf internen Compiler-APIs und wird von K2 nicht unterstützt.
  • Diagnose zur Überprüfung der Anmerkung @Composable bei erwarteten/tatsächlichen Anrufen hinzugefügt. Beide Deklarationen müssen übereinstimmende Annotationen enthalten.

Version 1.4.8

Version 1.4.8

28. Juni 2023

androidx.compose.compiler:compiler:1.4.8, androidx.compose.compiler:compiler-daemon:1.4.8 und androidx.compose.compiler:compiler-hosted:1.4.8 wurden veröffentlicht. Version 1.4.8 enthält diese Commits.

Neue Funktionen

  • Die Kotlin-Compiler-Zielversion wurde auf 1.8.22 erweitert.

Fehlerkorrekturen

  • Die Fehlermeldung für @Composable-Überschreibungen wurde verbessert. Jetzt wird korrekt auf abweichende Annotationen hingewiesen.
  • Vor einer redundanten @Composable-Anmerkung auf Inline-Lambdas warnen, die nicht als zusammensetzbar gekennzeichnet werden sollten. Diese Funktion wird beim K2-Compiler nicht unterstützt.

Version 1.4.7

Version 1.4.7

3. Mai 2023

androidx.compose.compiler:compiler:1.4.7, androidx.compose.compiler:compiler-daemon:1.4.7 und androidx.compose.compiler:compiler-hosted:1.4.7 wurden veröffentlicht. Version 1.4.7 enthält diese Commits.

Neue Funktionen

  • Unterstützung für Kotlin 1.8.21
  • Primitive Versionen der State API wurden hinzugefügt, mit denen Werte vom Typ „Int“, „Long“, „Float“ und „Double“ in State-Objekten verfolgt werden können, ohne dass für das Autoboxing Strafmaßnahmen anfallen.

Version 1.4.6

Version 1.4.6

19. April 2023

androidx.compose.compiler:compiler:1.4.6, androidx.compose.compiler:compiler-daemon:1.4.6 und androidx.compose.compiler:compiler-hosted:1.4.6 wurden veröffentlicht. Version 1.4.6 enthält diese Commits.

Fehlerkorrekturen

  • Der Compose-Compiler basiert jetzt auf Java11 (anstelle von Java17, das für Compose Compiler Version 1.4.5 erforderlich ist), um Nutzer, die noch ältere Java-Versionen verwenden, besser zu unterstützen.

Version 1.4.5

Version 1.4.5

12. April 2023

androidx.compose.compiler:compiler:1.4.5, androidx.compose.compiler:compiler-daemon:1.4.5 und androidx.compose.compiler:compiler-hosted:1.4.5 wurden veröffentlicht. Version 1.4.5 enthält diese Commits.

HINWEIS Für diesen Build von Compose Compiler muss Ihre Build-Umgebung Java 17 oder höher verwenden. Aufgrund des Feedbacks unserer Nutzer werden wir diese Anforderung wieder auf Java 11 absetzen und eine weitere Version (1.4.6) veröffentlichen, um Nutzer, die ältere Java-Versionen verwenden, besser zu unterstützen.

Neue Funktionen

Unterstützung für Kotlin 1.8.20

Fehlerkorrekturen

  • Die Anforderung der Überschreibung des zusammensetzbaren Aufrufoperators an Klassen und Schnittstellen weitergeben, die Lambda-Schnittstellen mit entsprechenden Annotationen erweitern.f8f2f78a1a769c2373201027f12700e772e4e97e
  • Ermöglicht die Verwendung der Anmerkung @Composable für den Operator getValue und die generierten Getter-Markierungen für den Delegat als zusammensetzbar in IR, um sicherzustellen, dass er später korrekt umgewandelt wird. f174f6ee60ca957d5cb6d19a5bd02a88267cdf40
  • Internen Laufzeitfehler beim Schreiben von Texten für Inline-Funktionen beheben (erwartet wurde applyChanges() aufgerufen)b/274786923
  • Vermeiden Sie es, ProcessCancelledException zu erfassen, da dies in der IDE eine besondere Bedeutung hat.b/274725600

Externer Beitrag

Version 1.4.4

Version 1.4.4

22. März 2023

androidx.compose.compiler:compiler:1.4.4, androidx.compose.compiler:compiler-daemon:1.4.4 und androidx.compose.compiler:compiler-hosted:1.4.4 wurden veröffentlicht. Version 1.4.4 enthält diese Commits.

Fehlerkorrekturen

  • Zusammensetzbare Inline-Lambda-Rückgaben korrigieren (72172b)
  • Rückgabe von Nothing für zusammensetzbare Funktionen zulassen (keinen Fehler generieren, wenn TODO in einer zusammensetzbaren Funktion verwendet wird) 3aea8d

Version 1.4.3

Version 1.4.3

22. Februar 2023

androidx.compose.compiler:compiler:1.4.3 wurde veröffentlicht. Version 1.4.3 enthält diese Commits.

Fehlerkorrekturen

  • Korrigiert bedingte zusammensetzbare Aufrufe in Argumenten von zusammensetzbaren Aufrufen (Ie93edb).

Version 1.4.2

Version 1.4.2

8. Februar 2023

androidx.compose.compiler:compiler:1.4.2 wurde veröffentlicht. Version 1.4.2 enthält diese Commits.

Neue Funktionen

  • Unterstützung für Kotlin 1.8.10

Fehlerkorrekturen

  • Füge Gruppen in den Text der nicht überspringbaren Lambdas hinzu, um Fehler bei der Neuzusammensetzung zu vermeiden.

Version 1.4.1

Version 1.4.1

8. Februar 2023

androidx.compose.compiler:compiler:1.4.1 wurde veröffentlicht. Version 1.4.1 enthält diese Commits.

Fehlerkorrekturen

  • Deaktivieren Sie die intrinsische Erinnerungsoptimierung, die zuvor einige Fehler bei der Codegenerierung verursacht hatte.
  • Deaktivieren Sie das intrinsische Erinnern in Funktionen, die einen vararg-Parameter enthalten.
  • Fehler beim Überspringen in zusammensetzbaren Funktionen mit Standardparametern beheben
  • Fügen Sie eine defensive Fallback-Fehlermeldung hinzu, wenn die Prüfung der Kotlin-Kompatibilität fehlschlägt.
  • Überspringen der Codegenerierung aus Inline-Lambda entfernen

Version 1.4.0

17. Januar 2023

androidx.compose.compiler:compiler:1.4.0 wurde veröffentlicht. Version 1.4.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.3.0

  • Unterstützung für Kotlin 1.8.0
  • Intrins. Erinnerung deaktiviert
  • Die UI-Tooling-Datenklasse Group hat jetzt das Feld isInline, das angibt, ob die Gruppe für einen Aufruf einer zusammensetzbaren Inline-Funktion vorgesehen ist. Wenn isInline auf true gesetzt ist, erfolgt der Aufruf an eine zusammensetzbare Inline-Funktion. Der Wert kann jedoch bei Aufrufen von zusammensetzbaren Inline-Funktionen auf „false“ gesetzt sein, die aus Modulen stammen, die mit einer Version des Compiler-Plug-ins kompiliert wurden, das keine Inline-Funktionsinformationen generiert.
  • ImmutableCollection und ihre persistenten Geschwister gelten jetzt als stabil.
  • Neuer Parameter in AnimatedContent für Tool-Label
  • Fehlerhafte Codegenerierung für Inline-Lambda behoben

Version 1.4.0-alpha02

11. November 2022

androidx.compose.compiler:compiler:1.4.0-alpha02 wurde veröffentlicht. Version 1.4.0-alpha02 enthält diese Commits.

Neue Funktionen

  • Unterstützung für Kotlin 1.7.21 hinzugefügt

Version 1.4.0-alpha01

9. November 2022

androidx.compose.compiler:compiler:1.4.0-alpha01 wurde veröffentlicht. Version 1.4.0-alpha01 enthält diese Commits.

Fehlerkorrekturen

  • Fehler beim frühzeitigen Zurückgeben von zusammensetzbaren Inline-Funktionen behoben (b/255350755)
  • Ein Fehler beim Absenken von Lockvogeln wurde behoben, durch den die Kotlin-/JS-Unterstützung in Compose unterbrochen wurde (6a40f8).

Version 1.3

Version 1.3.2

4. Oktober 2022

androidx.compose.compiler:compiler:1.3.2 wurde veröffentlicht. Version 1.3.2 enthält diese Commits.

Neue Funktion

  • Diese Version enthält ein Update auf Kotlin 1.7.20

Version 1.3.1

7. September 2022

androidx.compose.compiler:compiler:1.3.1 wurde veröffentlicht. Version 1.3.1 enthält diese Commits.

Fehlerkorrekturen

  • Das Problem „IllegalStateException“ wurde behoben, bei dem der Compiler vom Typ „Composer“ unter bestimmten Umständen fälschlicherweise Anzeigenblocktypen als zusammensetzbar markiert hat. (b/237863365)
  • Nutzer müssen jetzt ihre bevorzugte Kotlin-Version angeben, wenn sie die Compiler-Versionsprüfung unterdrücken (I9e5e2).

Version 1.3.0

10. August 2022

androidx.compose.compiler:compiler:1.3.0 wurde veröffentlicht. Version 1.3.0 enthält diese Commits.

Version 1.3.0-rc02

3. August 2022

androidx.compose.compiler:compiler:1.3.0-rc02 wurde veröffentlicht. Version 1.3.0-rc02 enthält diese Commits.

Version 1.3.0-rc01

27. Juli 2022

androidx.compose.compiler:compiler:1.3.0-rc01 wurde veröffentlicht. Version 1.3.0-rc01 enthält diese Commits.

Version 1.3.0-beta01

20. Juli 2022

androidx.compose.compiler:compiler:1.3.0-beta01 wurde veröffentlicht. Version 1.3.0-beta01 enthält diese Commits.

Neue Funktionen

  • Unterstützung für Kotlin 1.7.10 hinzugefügt

Version 1.2

Version 1.2.0

29. Juni 2022

androidx.compose.compiler:compiler:1.2.0 wurde veröffentlicht. Version 1.2.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.1.0

Version 1.2.0-rc02

22. Juni 2022

androidx.compose.compiler:compiler:1.2.0-rc02 wurde veröffentlicht. Version 1.2.0-rc02 enthält diese Commits.

Fehlerkorrekturen

  • Die Codegenerierung für zusammensetzbare Trace-Ereignisse wurde entfernt (aosp/2127922).

Version 1.2.0-rc01

15. Juni 2022

androidx.compose.compiler:compiler:1.2.0-rc01 wurde veröffentlicht. Version 1.2.0-rc01 enthält diese Commits.

Version 1.2.0-beta03

1. Juni 2022

androidx.compose.compiler:compiler:1.2.0-beta03 wurde veröffentlicht. Version 1.2.0-beta03 enthält diese Commits.

Version 1.2.0-beta02

18. Mai 2022

androidx.compose.compiler:compiler:1.2.0-beta02 wurde veröffentlicht. Version 1.2.0-beta02 enthält diese Commits.

Version 1.2.0-beta01

11. Mai 2022

androidx.compose.compiler:compiler:1.2.0-beta01 wurde veröffentlicht. Version 1.2.0-beta01 enthält diese Commits.

  • Dies ist die erste Betaversion von Version 1.2. Seit der letzten Alphaversion hat es keine Änderungen gegeben.

Neue Funktionen

  • Unterstützung für Kotlin 1.6.21 hinzugefügt

Version 1.2.0-alpha08

20. April 2022

androidx.compose.compiler:compiler:1.2.0-alpha08 wurde veröffentlicht. Version 1.2.0-alpha08 enthält diese Commits.

Version 1.2.0-alpha07

6. April 2022

androidx.compose.compiler:compiler:1.2.0-alpha07 wurde veröffentlicht. Version 1.2.0-alpha07 enthält diese Commits.

Version 1.2.0-alpha06

23. März 2022

androidx.compose.compiler:compiler:1.2.0-alpha06 wurde veröffentlicht. Version 1.2.0-alpha06 enthält diese Commits.

Version 1.2.0-alpha05

9. März 2022

androidx.compose.compiler:compiler:1.2.0-alpha05 wurde veröffentlicht. Version 1.2.0-alpha05 enthält diese Commits.

Version 1.2.0-alpha04

23. Februar 2022

androidx.compose.compiler:compiler:1.2.0-alpha04 wurde veröffentlicht. Version 1.2.0-alpha04 enthält diese Commits.

Version 1.2.0-alpha03

9. Februar 2022

androidx.compose.compiler:compiler:1.2.0-alpha03 wurde veröffentlicht. Version 1.2.0-alpha03 enthält diese Commits.

Version 1.2.0-alpha02

26. Januar 2022

androidx.compose.compiler:compiler:1.2.0-alpha02 wurde veröffentlicht. Version 1.2.0-alpha02 enthält diese Commits.

Version 1.2.0-alpha01

12. Januar 2022

androidx.compose.compiler:compiler:1.2.0-alpha01 wurde veröffentlicht. Version 1.2.0-alpha01 enthält diese Commits.

Neue Funktionen

  • Kotlin 1.6.10 wird jetzt unterstützt.

Version 1.1

Version 1.1.1

23. Februar 2022

androidx.compose.compiler:compiler:1.1.1 wurde veröffentlicht. Version 1.1.1 enthält diese Commits.

Fehlerkorrekturen

  • Problem mit NullPointerException unter androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList beheben (aosp/1947059, b/206677462)
  • Absturz behoben, der durch Inhalte in der Zwischenablage beim Lesen von die Zwischenablage auf Android-Geräten. (I06020, b/197769306)
  • RTL-Fehler in LazyVerticalGrid behoben (aosp/1931080, b/207510535)

Version 1.1.0

9. Februar 2022

androidx.compose.compiler:compiler:1.1.0 wurde veröffentlicht. Version 1.1.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.0.0

  • Stabile Unterstützung für den Overscroll-Effekt von Android 12
  • Verbesserungen bei der Größe von Berührungszielbereichen
  • In Bezug auf Compose 1.0 wird der Layoutbereich von Material-Komponenten so erweitert, dass sie den Richtlinien für Bedienungshilfen von Material für die Größe des Berührungszielbereichs entsprechen. Das Berührungsziel der Schaltfläche wird beispielsweise auf eine Mindestgröße von 48x48dp erweitert, auch wenn Sie die Größe der Schaltfläche entsprechend verringern. Dadurch wird das Kompositionsmaterial auf das gleiche Verhalten der Material Design-Komponenten abgestimmt, was ein einheitliches Verhalten ermöglicht, wenn du „View“ und „Compose“ mischst. Durch diese Änderung wird außerdem sichergestellt, dass beim Erstellen Ihrer Benutzeroberfläche mit „Material erstellen“-Komponenten die Mindestanforderungen für die Barrierefreiheit auf Berührungszielbereichen erfüllt sind.
  • Stabile Unterstützung für Navigation Rail
  • Umstellung einer Reihe von zuvor experimentellen APIs auf stabile Version
  • Support für neuere Versionen von Kotlin

Version 1.1.0-rc03

26. Januar 2022

androidx.compose.compiler:compiler:1.1.0-rc03 wurde veröffentlicht. Version 1.1.0-rc03 enthält diese Commits.

Fehlerkorrekturen

  • Aktualisiert, um Compose Material 1.1.0-rc03 zu unterstützen

Version 1.1.0-rc02

16. Dezember 2021

androidx.compose.compiler:compiler:1.1.0-rc02 wurde veröffentlicht. Version 1.1.0-rc02 enthält diese Commits.

Aktualisierung der Abhängigkeiten

  • Der Compose-Compiler 1.1.0-rc02 ist mit Kotlin 1.6.10 kompatibel.

Version 1.1.0-rc01

15. Dezember 2021

androidx.compose.compiler:compiler:1.1.0-rc01 wurde veröffentlicht. Version 1.1.0-rc01 enthält diese Commits.

Abhängigkeitsänderungen

  • Der Compose-Compiler 1.1.0-rc01 ist mit Kotlin 1.6.0 kompatibel.
  • Ein kompatibler 1.6.10-Build ist über androidx.dev-SNAPSHOTs mit buildId 8003490 verfügbar. Das folgende Abhängigkeits-Snippet wird Konfigurieren Sie SNAPSHOTs für den Compiler zum Erstellen:

    Fügen Sie der build.gradle-Stammdatei für Ihr Projekt das folgende Snippet hinzu:

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

    Fügen Sie der Datei build.gradle für Ihre App oder Ihr Modul das folgende Snippet hinzu mit der Funktion „Schreiben“:

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

Version 1.1.0-beta04

1. Dezember 2021

androidx.compose.compiler:compiler:1.1.0-beta04 wurde veröffentlicht. Version 1.1.0-beta04 enthält diese Commits.

Neue Funktionen

  • Aktualisiert, um mit Kotlin-1.6.0 kompatibel zu sein

Version 1.1.0-beta03

17. November 2021

androidx.compose.compiler:compiler:1.1.0-beta03 wurde veröffentlicht. Version 1.1.0-beta03 enthält diese Commits.

Version 1.1.0-beta02

3. November 2021

androidx.compose.compiler:compiler:1.1.0-beta02 wurde veröffentlicht. Version 1.1.0-beta02 enthält diese Commits.

Version 1.1.0-beta01

27. Oktober 2021

androidx.compose.compiler:compiler:1.1.0-beta01 wurde veröffentlicht. Version 1.1.0-beta01 enthält diese Commits.

Version 1.1.0-alpha06

13. Oktober 2021

androidx.compose.compiler:compiler:1.1.0-alpha06 wurde veröffentlicht. Version 1.1.0-alpha06 enthält diese Commits.

Version 1.1.0-alpha05

29. September 2021

androidx.compose.compiler:compiler:1.1.0-alpha05 wurde veröffentlicht. Version 1.1.0-alpha05 enthält diese Commits.

Version 1.1.0-alpha04

15. September 2021

androidx.compose.compiler:compiler:1.1.0-alpha04 wurde veröffentlicht. Version 1.1.0-alpha04 enthält diese Commits.

Version 1.1.0-alpha03

1. September 2021

androidx.compose.compiler:compiler:1.1.0-alpha03 wurde veröffentlicht. Version 1.1.0-alpha03 enthält diese Commits.

Neue Funktionen

  • Der Compose-Compiler unterstützt jetzt ältere Versionen der Compose Runtime (1.0). Vor dieser Änderung war der Compose-Compiler nur mit der Compose-Laufzeit derselben oder einer neueren Version kompatibel. Nach dieser Änderung ist der Compose-Compiler mit einer älteren Version der Compose-Laufzeit (1.0) kompatibel. (aosp/1796968)
  • Die Funktion „Compose“ (1.1.0-alpha03) wurde so aktualisiert, dass sie von „1.5.30“ in Kotlin abhängig ist. (I74545)

Version 1.1.0-alpha02

18. August 2021

androidx.compose.compiler:compiler:1.1.0-alpha02 wurde veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.

Version 1.1.0-alpha01

4. August 2021

androidx.compose.compiler:compiler:1.1.0-alpha01 wurde veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.

Version 1.0

Version 1.0.5

3. November 2021

androidx.compose.compiler:compiler:1.0.5 wurde veröffentlicht. Version 1.0.5 enthält diese Commits.

Fehlerkorrekturen

  • Ein Absturz-Tracking der abgeleiteten StatusOf-Instanzen wurde behoben. (aosp/1792247)

Version 1.0.4

13. Oktober 2021

androidx.compose.compiler:compiler:1.0.4 wurde veröffentlicht. Version 1.0.4 enthält diese Commits.

Aktualisierung der Abhängigkeiten

  • Aktualisiert und abhängig von Kotlin 1.5.31

Version 1.0.3

29. September 2021

androidx.compose.compiler:compiler:1.0.3 wurde veröffentlicht. Version 1.0.3 enthält diese Commits.

Aktualisierung der Abhängigkeiten

  • Aktualisiert und abhängig von Kotlin 1.5.30

Version 1.0.2

1. September 2021

androidx.compose.compiler:compiler:1.0.2 wurde veröffentlicht. Version 1.0.2 enthält diese Commits.

Aktualisiert, um die Compose-Version 1.0.2 zu unterstützen. „Compose 1.0.2“ ist weiterhin mit Kotlin 1.5.21 kompatibel.

Version 1.0.1

4. August 2021

androidx.compose.compiler:compiler:1.0.1 wurde veröffentlicht. Version 1.0.1 enthält diese Commits.

Aktualisierung der Abhängigkeiten

  • Aktualisiert und abhängig von Kotlin-1.5.21.

Version 1.0.0

28. Juli 2021

androidx.compose.compiler:compiler:1.0.0 wurde veröffentlicht. Version 1.0.0 enthält diese Commits.

Hauptfunktionen von Version 1.0.0

Dies ist die erste stabile Version von Compose. Weitere Informationen finden Sie im offiziellen Blog „Compose Release“.

Version 1.0.0-rc02

14. Juli 2021

androidx.compose.compiler:compiler:1.0.0-rc02 wurde veröffentlicht. Version 1.0.0-rc02 enthält diese Commits.

Version 1.0.0-rc01

1. Juli 2021

androidx.compose.compiler:compiler:1.0.0-rc01 wurde veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.

Version 1.0.0-beta09

16. Juni 2021

androidx.compose.compiler:compiler:1.0.0-beta09 wurde veröffentlicht. Version 1.0.0-beta09 enthält diese Commits.

Version 1.0.0-beta08

2. Juni 2021

androidx.compose.compiler:compiler:1.0.0-beta08 wurde veröffentlicht. Version 1.0.0-beta08 enthält diese Commits.

Version 1.0.0-beta07

18. Mai 2021

androidx.compose.compiler:compiler:1.0.0-beta07 wurde veröffentlicht. Version 1.0.0-beta07 enthält diese Commits.

Version 1.0.0-beta06

5. Mai 2021

androidx.compose.compiler:compiler:1.0.0-beta06 wurde veröffentlicht. Version 1.0.0-beta06 enthält diese Commits.

Version 1.0.0-beta05

21. April 2021

androidx.compose.compiler:compiler:1.0.0-beta05 wurde veröffentlicht. Version 1.0.0-beta05 enthält diese Commits.

Version 1.0.0-beta04

7. April 2021

androidx.compose.compiler:compiler:1.0.0-beta04 wurde veröffentlicht. Version 1.0.0-beta04 enthält diese Commits.

Version 1.0.0-beta03

24. März 2021

androidx.compose.compiler:compiler:1.0.0-beta03 wurde veröffentlicht. Version 1.0.0-beta03 enthält diese Commits.

Version 1.0.0-beta02

10. März 2021

androidx.compose.compiler:compiler:1.0.0-beta02 wurde veröffentlicht. Version 1.0.0-beta02 enthält diese Commits.

Version 1.0.0-beta01

24. Februar 2021

androidx.compose.compiler:compiler:1.0.0-beta01 wurde veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.

Dies ist die erste Version der Betaversion von Compose 1.0.0.

Version 1.0.0-alpha12

10. Februar 2021

androidx.compose.compiler:compiler:1.0.0-alpha12 wurde veröffentlicht. Version 1.0.0-alpha12 enthält diese Commits.

Version 1.0.0-alpha11

28. Januar 2021

androidx.compose.compiler:compiler:1.0.0-alpha11 wurde veröffentlicht. Version 1.0.0-alpha11 enthält diese Commits.

Version 1.0.0-alpha10

13. Januar 2021

androidx.compose.compiler:compiler:1.0.0-alpha10 wurde veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.

Version 1.0.0-alpha09

16. Dezember 2020

androidx.compose.compiler:compiler:1.0.0-alpha09 wurde veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.

Version 1.0.0-alpha08

2. Dezember 2020

androidx.compose.compiler:compiler:1.0.0-alpha08 wurde veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.

Version 1.0.0-alpha07

11. November 2020

androidx.compose.compiler:compiler:1.0.0-alpha07 wurde veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.

Neue Funktionen

  • Stabilitätsinferenz und Verbreitung. Das Compose Compiler-Plug-in analysiert die kompilierten Typen, um abzuleiten, ob es für bestimmte Optimierungen durch die Laufzeit infrage kommt oder nicht. Dieses gefolgerte Ergebnis wird dann als Metadaten in der Klasse synthetisiert, die vom Compiler in anderen Modulen verwendet werden kann. Darüber hinaus wird das Laufzeitergebnis dieser Inferenzen in Metadaten übergeben, die während der Zusammensetzung an zusammensetzbare Aufrufe übergeben werden. Dies erforderte ein anderes Metadatenprotokoll für zusammensetzbare Funktionen. Das bedeutet, dass zusammensetzbare Funktionen, die mit dem Alpha07-Compiler kompiliert wurden, nicht binär kompatibel mit zusammensetzbaren Funktionen sind, die mit einer früheren Compiler-Version kompiliert wurden. (aosp/1431988)

Version 1.0.0-alpha06

28. Oktober 2020

androidx.compose.compiler:compiler:1.0.0-alpha06 wurde veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.

Version 1.0.0-alpha05

14. Oktober 2020

androidx.compose.compiler:compiler:1.0.0-alpha05 wurde veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.

Version 1.0.0-alpha04

1. Oktober 2020

androidx.compose.compiler:compiler:1.0.0-alpha04 wurde veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.

androidx.compose:compose-compiler wurde zu androidx.compose.compiler:compiler refaktoriert. Dies ist der erste Release in der neuen Gruppe.