-
Notifications
You must be signed in to change notification settings - Fork 24
Open
Description
Historically Sink
and Context
were a wrong abstraction and we should consider removing them in future versions of platform.
Sink
exposes unsafe access to inner value when you can forget about subscribing to effect. On the other hand we could replace type Sink<A> = { value: A, effect: Observable<unknown>> }
with just a type Sink<A> = Observable<A>
where effect is bundled into the stream and you don't have direct unsafe access to sink's value, only in subscriber.
Keeping that in mind, type Context<E, A>
becomes just a Reader<E, Observable<A>>
and can be dropped as well.
Still we have to deliver LiveData
and operators and that's why we should think about #171