0.12.0 #2127
0.12.0
#2127
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
New:
LazyList
implementation.-
TreehouseApp.close()
stops the app and prevents it from being started again later.UiConfiguration.layoutDirection
to support reading the host's layout direction.redwood-bom
artifact can be used to ensure all Redwood artifacts use the same version. See Gradle's documentation on how to use the BOM in your build.Changed:
app.cash.redwood
Gradle plugin has been removed. This plugin did two things: apply the Compose compiler and add a dependency on theredwood-compose
artifact. The Compose compiler can now be added by applying theorg.jetbrains.kotlin.plugin.compose
Gradle plugin. Dependencies on Redwood artifacts can be added manually.typealias
es for generated-WidgetFactories
type which was renamed to-WidgetSystem
in 0.10.0.Modifier.flex
extension function which is now supported natively byRow
andColumn
since 0.8.0.TreehouseWidgetView
andTreehouseUIKitView
type aliases forTreehouseLayout
andTreehouseUIView
which were renamed in 0.7.0.TreehouseAppFactory
functions with the oldFileSystem
andPath
order which were changed in 0.11.0.ProtocolBridge
toProtocolHost
andProtocolGuest
.Fixed:
Breaking:
-
TreehouseApp.zipline
is now aStateFlow<Zipline?>
instead of aZipline?
.-
CodeListener.onCodeDetached()
replacesonUncaughtException()
. The new function is calledwhenever code stops driving a view for any reason. The new function accepts a
Throwable?
that isnon-null if it's detached due to exception.
-
Content.awaitContent()
now accepts an optionalInt
parameter for the number of updates toobserve before the function returns.
Upgraded:
Gradle plugin removed
This version of Redwood removes the custom Gradle plugin in favor of the official JetBrains Compose compiler plugin which ships as part of Kotlin itself.
Each module in which you had previously applied the
app.cash.redwood
plugin should be changed to applyorg.jetbrains.kotlin.plugin.compose
instead.The Redwood dependencies will no longer be added as a result of the plugin change, and so any module which references Redwoods APIs should add those dependencies explicitly.
For posterity, the Kotlin version compatibility table and compiler version customization for our old Redwood Gradle plugin will be archived here:
Redwood 0.12.0 Gradle plugin Kotlin compatibility table
Since Kotlin compiler plugins are an unstable API, certain versions of Redwood only work with
certain versions of Kotlin.
Redwood 0.12.0 Gradle plugin Compose compiler customization instructions
Each version of Redwood ships with a specific JetBrains Compose compiler version which works with
a single version of Kotlin (see version table above). Newer versions of
the Compose compiler or alternate Compose compilers can be specified using the Gradle extension.
To use a new version of the JetBrains Compose compiler version:
redwood { kotlinCompilerPlugin.set("1.4.8") }
To use an alternate Compose compiler dependency:
redwood { kotlinCompilerPlugin.set("com.example:custom-compose-compiler:1.0.0") }
This discussion was created from the release 0.12.0.
Beta Was this translation helpful? Give feedback.
All reactions