v0.21.0
Pre-release
Pre-release
Kotlin
Core API changes:
- Add
StatefulWorkflow.workflowAction
. (#576) - Remove
runningWorkerUntilFinished
. (#589) - Remove key from
TypedWorker
and helpers that use it. (#606, #619) - Never pass an empty snapshot to
initialState
. (#556) - Change the return type of
Worker.finished
fromT
toNothing
. (#637) - Add an
RxWorker
class so Workers can be implemented without using experimental Flow APIs. (#650) - Make
RxWorker
andFlowable.asWorker
usePublisher
instead ofFlowable
. (#654) - Make it simpler to provide debugging names for workflow actions. (#696)
Runtime changes:
launchWorkflowIn
block now takes aWorkflowSession
instead of individual parameters. (#612)- Introduce
WorkflowDiagnosticListener
to support various debugging and logging tools. (#628, #634) - Implement chrome trace file generation. (#617)
Testing changes:
- Introduce
WorkerSink
for writing integration tests that involve worker outputs. (#588) - Fix a race in
WorkerTester
. (#638) - Make testing infra run double render passes to suss out side effect code in render methods. (#678)
- Make it possible to pass just the snapshot for the root workflow into the test methods. (#681)
- Throw workflow exceptions from
test
/testFromStart
instead of leaking to uncaught exception handler. (#686)
Android changes:
- Eliminate
HandlesBack
, introduceView.backPressedHandler
. (#614) - Introduce
WorkflowViewStub
. (#657) - Adds
getRendering
,getShowRendering
View
extensions. (#666) - Eliminate
WorkflowRunner.onSaveInstanceState
. (#679) - Compile time assurance that
BackStackScreen
is not empty. (#688) - Introduce
ContainerHints
for passing view-only hints aroundLayoutRunner
s. (#693)
Version changes:
- Upgrade Kotlin to 1.3.50. (#560)
- Upgrade coroutines to 1.3.1 stable. (#561, #590)
- Upgrade a bunch of other dependencies, see the commit history for details.
Other changes:
- Eliminate
ExperimentalWorkflowUi
. (#565) - Rename
Worker<T>
toWorker<OutputT>
. (#570) - Fix "java" being printed instead of class name in Rx2 Reactors. (#607)
- Fix a worker crash introduced by
onReceiveOrClosed
. (#630) - Make
onEvent
,makeActionSink
, andmakeEventSink
include what action was lost to when they receive more than one event. (#673)
Swift
- Update ReactiveSwift to 6.0.0. (#574 – thanks @lechristian!)
- This also moves everything over to the standard library’s
Result
withNever
(rather than
NoError
). As of this change, consumers must use Swift 5.
- This also moves everything over to the standard library’s
- Apply child workflow output as an action in
RenderTester
. (#595) - Add
WorkflowUI
toPackage.swift
. (#690)