Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.20.0
->0.24.0
0.20.0
->0.24.0
0.20.0
->0.24.0
0.20.0
->0.24.0
0.20.0
->0.24.0
Release Notes
slackhq/circuit (com.slack.circuit:circuitx-gesture-navigation)
v0.24.0
Compare Source
2024-09-16
presenterTestOf()
andPresenter.test()
functions now return a newCircuitReceiveTurbine
interface. This interface slightly but importantly modifies the behavior ofawaitItem()
by making it only emit changed items rather than every item. If you do want to assert the equivalent state is emitted across recompositions, you can useawaitUnchanged()
.LocalBackStack
to public API.awaitItem()
, you may need to update tests that previously assumed duplicate emissions.2.0.20
.Uuid
. This release now requires Kotlin2.0.20
or later.rememberAnsweringNavigator
result handling.1.9.0
.2024.09.01
.0.3.8
.1.9.2
.2.8.5
.2.0.20
.2.0.20-1.0.25
.v0.23.1
Compare Source
2024-07-30
NoOpRetainedStateRegistry
to public API for use in testing and previews.CircuitPreview
helper function for composable previews that contain Circuit content.LocalInspectionMode
, Circuit's defaultonUnavailableContent
now shows a simpler non-intrusive placeholder UI instead.BottomSheetOverlay
crash when invoking back-press.2.0.10
.1.8.2
.2.0.10-1.0.24
.v0.23.0
Compare Source
2024-07-30
pausableState
#1455.OverlayHost.showFullScreenOverlay
now returns thePopResult?
that was popped by the screen.backstack
dependency fromcircuit-runtime
. It was unnecessary and also accidentally imposed Compose UI on the runtime/presenter artifacts.Overlay
afun interface
.OverlayEffect
to use a newOverlayScope
API that implements bothCoroutineScope
andOverlayHost
, making both contexts available in the lambda.2.0.0-1.0.24
.1.9.1
.2.8.4
.1.8.1
.1.18.1
.1.6.11
.Special thanks to @aschulz90 and @chrisbanes for contributing to this release!
v0.22.2
Compare Source
2024-06-04
pausableState
recomposition loops by avoiding backward snapshot writes.Circuit.presentWithLifecycle
flag to enable/disable automaticpausableState
use. This is enabled by default.1.6.11
.2.8.1
.1.7.0
.Special thanks to @chrisbanes, @adamp, and Chuck Jazdzewski for contributing to this release and helping us find a runtime fix for the
pausableState
issue!v0.22.1
Compare Source
2024-05-28
rememberRetained
implicitly requiringLocalContext
where it used to no-op.2.0.0
.v0.22.0
Compare Source
2024-05-28
2.0.0
.2.0.0-1.0.21
.1.6.10
.This release is otherwise identical to
0.21.0
, just updated to Kotlin 2.0.v0.21.2
Compare Source
pausableState
recomposition loops by avoiding backward snapshot writes.Circuit.presentWithLifecycle
flag to enable/disable automaticpausableState
use. This is enabled by default.Full Changelog: slackhq/circuit@0.21.1...0.21.2
v0.21.1
Compare Source
rememberRetained
implicitly requiringLocalContext
where it used to no-op (#1438)What's Changed
rememberRetained
if theLocalRetainedStateRegistry
isn't set by @stagg in https://github.com/slackhq/circuit/pull/1438Full Changelog: slackhq/circuit@0.21.0...0.21.1
v0.21.0
Compare Source
2024-05-28
FakeNavigator
functions to check for the lack of pop/resetRoot events.FakeNavigator
constructor param to add additional screens to the backstack.StaticScreen
interface. When aStaticScreen
is used, Circuit will internally allow the UI to run on its own and won't connect it to a presenter if no presenter is provided.RecordLifecycle
andLocalRecordLifecycle
composition local, allowing UIs and presenters to observe when they are 'active'. Currently, a record is considered 'active' when it is the top record on the back stack.rememberRetainedSaveable
variant that participates in bothRetainedStateRegistry
andSaveableStateRegistry
restoration, allowing layered state persistence.rememberRetainedSaveable
entering composition:RetainedStateRegistry
andSaveableStateRegistry
, if availablerememberRetained
that explicitly requires aSaver
parameter.CircuitUiState
when they are not active. Presenters can opt-out of this behavior by implementingNonPausablePresenter
.NavigatorImpl.goTo
no longer navigates if theScreen
is equal toNavigator.peek()
.Presenter.present
is now annotated with@ComposableTarget("presenter")
. This helps prevent use of Compose UI in the presentation logic as the compiler will emit a warning if you do. Note this does not appear in the IDE, so it's recommended to useallWarningsAsErrors
to fail the build on this event.Navigator.goTo()
calls to the same current screen.Navigator.goTo
now returns a Bool indicating navigation success.GestureNavigationDecoration
impl tocommonMain
and rename toCupertinoGestureNavigationDecoration
.1.8
in core libraries.FakeNavigator.assertIsEmpty
andexpectNoEvents
(use the specific event type methods instead)Presenter.Factory
as@Stable
.Ui.Factory
as@Stable
.CircuitContext
as@Stable
.EventListener
as@Stable
.EventListener.Factory
as@Stable
.1.9.24
.1.9.24-2.0.20
.1.5.14
.1.17.0
.2.8.0
.1.4.3
.1.8.0
.1.8.1
.1.6.2
.1.6.7
.1.6.7
.1.6.7
.1.6.7
.1.13.1
.1.9.0
.2.51.1
.0.8.4
.Special thanks to @chrisbanes, @alexvanyo, @eboudrant, @edenman, and @JustinBis for contributing to this release!
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR was generated by Mend Renovate. View the repository job log.