2022-11-07
- Enhancement: Add back the
onRootPop()
parameter inrememberCircuitNavigator()
but useLocalOnBackPressedDispatcherOwner
for backpress handling by default.
2022-11-01
- New: The Overlay API is now extracted to a separate, optional
circuit-overlay
artifact. - New: The
circuit-core
artifact now packages in baseline profiles. - Enhancement: Simplify backstack root pop handling. There is no more
onRootPop()
option inrememberCircuitNavigator()
, instead you should install your ownBackHandler()
prior to rendering your circuit content to customize back behavior when the circuitNavigator
is at root. - Fix:
circuit-codegen-annotations
is now a multiplatform project and doesn't accidentally impose the compose-desktop dependency.
We've also updated a number of docs around code gen, overlays, and interop (including a new interop sample).
2022-10-27
- Enhancement: Code gen now supports non-assisted constructor-injected types.
- Enhancement: Code gen checks that functions and classes are visible to generated factories.
2022-10-27
- Fix: Code gen didn't properly handle instantiating simple class types.
2022-10-26
-
New: Code gen artifact. This targets specifically using Dagger + Anvil and will generate
Presenter
andUi.Factory
implementations for you. SeeCircuitInject
for more details.ksp("com.slack.circuit:circuit-codegen:x.y.z") implementation("com.slack.circuit:circuit-codegen-annotations:x.y.z")
-
New: There is now an
EventListener
API for instrumenting state changes for a givenScreen
. See its docs for more details. -
Fix: Rework
rememberRetained
implementation and support for multiple variables. Previously it only worked with one variable. -
Fix: Clean up some unnecessary transitive dependencies in misc artifacts.
Dependency updates
androidx.activity 1.6.1
androidx.compose 1.3.0
Molecule 0.5.0
2022-10-12
- Update to compose-jb
1.2.0
. - Update to Turbine
0.12.0
. - Fix: Accidentally running molecule twice in
Presenter.test()
.
2022-10-10
- Fix: Accidentally bundling more Compose UI dependencies than necessary.
2022-10-10
Initial release, see the docs: https://slackhq.github.io/circuit/.
Note that this library is still under active development and not recommended for production use. We'll do a more formal announcement when that time comes!