raw must stay in the main package, and probably should be the only one to keep there.
Even state and as_listener should move.
Reasoning for this is twofold:
The builtin side effects are still slightly opinionated, even though not that much
I just came across a situation in rearch-dart where I wanted to remove the persist side effect and I had no intention of ever touching it previously. Requirements can change, so we should be able to keep the core stable and have the liberty to introduce breaking changes in an opinionated package.
raw
must stay in the main package, and probably should be the only one to keep there.Even
state
andas_listener
should move.Reasoning for this is twofold:
rearch-dart
where I wanted to remove thepersist
side effect and I had no intention of ever touching it previously. Requirements can change, so we should be able to keep the core stable and have the liberty to introduce breaking changes in an opinionated package.